理解光纤通道协议本身,包括命名方式和寻址规则,能够让你更好地理解SAN里到底在发生什么。能够飞快地扫一眼,就知道问题出在哪里的功力需要透彻地理解所用到的协议。尽管可以通过使用鼠标点击的图形用户界面,用很少一点知识就可以操作一个SAN,但我们并不推荐你这样做。所以还是让我们学习一些FC协议的知识吧。 :j9;P7&"?
!sR`]0
重申一下:光纤通道并不是SCSI的替代品,SCSI通常是处于光纤通道的基础之上的。现在让我们开始吧。光纤通道总的来说指的是FC-PHY层:FC0-FC2,我们在上一部分重点讨论过了。FCP,光纤通道协议,指的是针对SCSI的接口协议,或者FC-4映射。我们在这里谈论的是FC的内部工作,不是FCP。 u_:"
u
@8/-^Rh*
FC的数据单元叫作"帧"(Frame)。即使它有自己的层,FC基本上还是第二层的协议。FC 帧最大是2148字节。FC 帧的报头有点奇怪,起码和以太网的IP和TCP协议相比是这样。FC的帧格式有多种用途,并且有很多层。帧的功用决定了它的格式,和我们在IP世界里的想法相比,它显得奇怪却精彩。 NINyg"g<
6'qs=Ql
FC 帧是从一个SOF标记开始的,紧随其后的是帧的报头,我们接下来会进行介绍。接下来是数据,也就是FC内容,接下来是EOF。进行封装是因为这样FC就可以通过其他的协议进行传输了,例如TCP。 wl9E
,Hj=]e2?
1.FC 封装报头 3!*J;Y
Qz/=+A/4
FC 帧本身格式在大小上相差很多。在图1中,你可以看到我们在前面提到的SOF和EOF标记。FC报头的奇怪之出在于它们是word导向的,一个FC word是4字节。最多允许使用537个word,也就是2148字节的容量。 }1(F~6RH
W6wgX0H
报头可能包含以下组成部分: RJd55+h
M+nz~,![
SOF(1个字节):帧的开始 n{UB^-}5
帧头(24字节):报头指明了所使用的协议,以及源地址和目标地址。区别在于协议。 eb+[=nmP
Optional ESP Header(8字节):提供加密,包括SPI和ESP序号。 L{\B9b2
Optional Network Header(16字节):这样你可以将一个FC-SAN连接到非FC网络上。 [m('Y0fwO^
Optional Association Header(32字节):FCP并不使用它,但是可以用于在一个节点内识别进程。 ^Z}INUv]7
Optional Device Header(最高可达64字节):FCP并不使用它,它是针对应用的。 k6*2=
xK~
有效内容载荷(Payload):数据,最多2048字节。 ]1p&*xX:Bj
Optional Fill Bytes (变量):用于标记不同长度的有效载荷的边界。 r[~Km5
Optional ESP Trailer(变量):包含了ESP的校验值。 =_v_#;h&
CRC(4字节):报头的CRC和FC数据区域。 uWMAXGL
End of Frame(4字节):帧的结尾,标记是否已经到了结尾。