2008年(8065)
分类: 服务器与存储
2008-04-16 18:36:23
重申一下:光纤通道并不是SCSI的替代品,SCSI通常是处于光纤通道的基础之上的。现在让我们开始吧。光纤通道总的来说指的是FC-PHY层:FC0-FC2,我们在上一部分重点讨论过了。FCP,光纤通道协议,指的是针对SCSI的接口协议,或者FC-4映射。我们在这里谈论的是FC的内部工作,不是FCP。
FC的数据单元叫作"帧"(Frame)。即使它有自己的层,FC基本上还是第二层的协议。FC 帧最大是2148字节。FC 帧的报头有点奇怪,起码和以太网的IP和TCP协议相比是这样。FC的帧格式有多种用途,并且有很多层。帧的功用决定了它的格式,和我们在IP世界里的想法相比,它显得奇怪却精彩。
FC 帧是从一个SOF标记开始的,紧随其后的是帧的报头,我们接下来会进行介绍。接下来是数据,也就是FC内容,接下来是EOF。进行封装是因为这样FC就可以通过其他的协议进行传输了,例如TCP。
1.FC 封装报头
FC 帧本身格式在大小上相差很多。在图1中,你可以看到我们在前面提到的SOF和EOF标记。FC报头的奇怪之出在于它们是word导向的,一个FC word是4字节。最多允许使用537个word,也就是2148字节的容量。
报头可能包含以下组成部分:
FC 帧头内容
图2中展示了一个真实的FC报头,其中包括以下内容:
是的,这很容易把人搞糊涂,和IP世界相比,这里有很多新的术语。我们将继续在以后的存储基础系列文章中提到这些报头,所以希望在举了一些现实的例子之后,大家能够熟悉这些区域和它们的用途。
另一个需要了解的重要的概念是FC的命名方式。请注意帧报头中的 D_ID和S_ID只允许24位。每个HBA都被分配了一个WWN,每个端口都被分配了一个Port WWN(也被称为PWWN)。这些WWN的长度是64位的,比FC中的24位的长度更长。ANSI T11 Address Identifier Format定义FCID由三部分组成,即Domain_ID、Area_ID和Port_ID。
FC网络动态地分成几个层级。当一个光纤使用Domain_ID分发流程联线的时候,Domain_ID被分配给了每个交换机。通常Domain_ID是管理员配置的。Domain_ID和Area_ID是第二个层级,和Port_ID(由交换机分配)结合在一起,标示光纤上的每个节点。所以WWN并不完全对应SAN路由。
Domain_ID是由Principal Switch(主交换机)进行分配的,这就确保了每个人能够获得正确的信息。简而言之,FCID在节点第一次连接的时候完全是随意的,这通常没问题,除非管理员进行手工配置。一些Domain_ID用于多点传送或者其他目的,但这不是我们讨论的范围了。你可以从ANSI T11 FC-SW-3规范中了解更多的详细信息。
接下来我们将会深入到FC内部的层级构造之中,包括VSAN,一个在SAN世界里相对比较新鲜的概念。