Path of a disk io
I know this is a pretty big question but just trying to learn as much as I can about this topic.
I wanted to understand how IO travels in a SAN. Lets say for example, I have a linux host connected to a SAN.
If I copy a 2MB file, can someone walk me through what happens. I realize a LOT happens but looking for any info you can provide (which will probably lead to me having more questions to look up).
I'm looking for the path from host, to cache, to HBA card, over the fiber channel, to the SAN HBA, disk cache, and onto disk. (and if I missed anything).
I'm not looking for SAN vendor specifics, just more of a general flow.
For example, is that 2MB file broken up into 4K IO's (524,288 of them??) and are they all sent seperately over the fiber channel...etc..etc..
Any help or pointers you could provide would be greatly appreciated.
All Linux file i/o operates the same way, though under it all the transport layer used to actually access the hardware can do a lot of different things, depending upon whether or not you have a IDE, SATA, SCSI directly attached disc, a remote network file system (CIFS/SMB, NFS, etc). The details, as you surmise, are VERY complicated. My suggestion is to visit The Linux Documentation Project for more documentation on this stuff.