存储 频道

为何Block协议比File协议快?

【IT168 资讯】

  问:iSCSI所用的Block协议中的Block是否是和RAID概念中所说的Strip size一个概念啊? 就是可以自行设置数据块大小的.

  

  能否详细说说问什么Block协议会比File协议快呢? 如果说底层的协议当然会比应用层的快这个原因的话, 那么为什么RAID 3用的Strip就没有RAID4用的Block好呢?

  

  答:这个block,不是Raid里面那种block

  

  block和file,其实就是数据结构,协议。

  

  直接和磁盘打交道,或者和fs打叫道,利用的数据结构和协议是不一样的。但是他们的payload很大程度上是一样的。

  

  只不过他们的数据交互逻辑,交互格式,不太一样

  

  Linux kernel

  

  一般顺序是vfs->mapping layer(filesystem)->generic block layer->IO scheduler layer->block device driver

  

  上层的进程只知道vfs,具体的活由mapping layer做,例如一个文件系统。

  

  具体的文件系统知道generic block layer,具体的活由IO scheduler layer和block device driver做。

  

  IO scheduler是操作系统对IO的最后调度的部件,剩下的事情由device driver做,比如生成SCSI指令。

0
相关文章