<physical device> := <StorPort + miniport | monolithic SCSI port>
<optional SCSI filters>
<block device> := <class driver>
<optional class driver filters>
<file system> := <file system driver>
(optional file system monolithic or minifilters>
<...>
How are you going to number these layers if at least half are optional and configuration specific? What value to the Universe you'll bring naming block device say "layer 2"?
wallewek wrote:Here's a thought.
Sometimes I think there should be layers for hardware storage definitions like there are for networks. E.g., layer 1 is hardware, layer 2 is hardware interface, layer 3 is storage structure (files, directories etc.), layer 4 is security and locking, sharing, and so on.
I'm not totally sure, but I think iSCSI is layer 2 or 3. It accesses storage at the logical block level, or maybe at the filesystem level. Which means no security, no locking.
I would probably say SMB is probably layer4 at least, as it supports pretty much full local file access semantics.
I'm not sure what layer you would put nfs at.
Feel free to correct me or disagree!
--- kenw