admin管理员组

文章数量:1547516

文章目录

    • 8.1 FC网络——极佳的候选角色
      • 8.1.1 物理层
      • 8.1.2 链路层
      • 8.1.3 网络层
      • 8.1.4 传输层
      • 8.1.5 上三层
      • 8.1.6 小结
    • 8.2 FC协议中的七种端口类型
      • 8.2.1 N端口和F端口
      • 8.2.2 L端口
      • 8.2.3 NL端口和FL端口
      • 8.2.4 E端口
      • 8.2.5 G端口

前言:

  • SAN首先是个网络,而不是指存储设备。这个网络是专门用来给主机连接存储设备用的,这个网络中有着很多的元件,它们的作用都是为了让主机更好地访问存储设备。
  • SAN概念的出现,只是个开头而已,因为按照SCSI总线16个节点的限制,不可能接入很多的磁盘。要扩大这个SAN的规模,还有很长一段路要走。如果仅仅用并行SCSI总线,那么SAN只能像PCI总线一样作为主机的附属品,而不能成为一个真正独立的“网络”。必须找到一种寻址容量大、稳定性强、速度快、传输距离远的网络结构,从而连接控制器和磁盘或者连接控制器到主机。
  • 干脆破釜沉舟,独立研发一套全新的网络传输系统,专门针对局部范围的高速度高效传输。形成一套完整的网络系统并非易事,首先必须得有个蓝图。OSI就是一个经典的蓝图,是对任何互联系统的抽象。

8.1 FC网络——极佳的候选角色

  • FC网络自1988年出现以来,已经发展成为一项非常复杂、高速的网络技术。最初并不是用来作为一种网络存储技术的。
  • FC只代表Fibre Channel即“网状通道”,不能代表Fiber Channel即“光纤通道”。FC与光纤根本就没有必然的联系。
  • Fibre Channel可以称为FC协议,或FC网络、FC互联。像TCP/IP一样,FC协议集同样具备TCP/IP协议集以及以太网中的很多概念,比如FC交换、FC交换机、FC路由、FC路由器,SPF路由算法等。同样可以用OSI来将FC协议进行断层分析。

8.1.1 物理层

  • OSI的第一层就是物理层。作为一种高速的网络传输协议,FC协议体系的物理层具有比较高的速度,从1GB/s、2GB/s、4GB/s到当前的8GB/s。作为高速网络的代表,其底层也使用了同步串行传输方式,而且为了保证传输过程中的电直流平衡、时钟恢复和纠错等特性,其传输编码方式采用NMb编码。
  • 为了实现远距离传输,传输介质起码要支持光纤。铜线也可以,但是距离受限制。FC协议集中物理层的电气子层名为FC0,编码子层名为FC1.

8.1.2 链路层

(1).字符编码及FC帧结构

  • 现代通信在链路层一般都是成帧的,将上层发来的一定数量的位流打包加头尾传输。FC协议在链路层也是成帧的,既然需要成帧,那么一定要定义帧控制字符。
  • FC协议定义了一系列的帧控制策略以及对应的字符。这些控制字符不是ASCII码字符集中的,而是单独定义了一套专门用于FC协议的字符集,称为“有序集”。其中的每个控制字符其实是由4个8位字节组成的,称为一个字(word),而每个控制字开头的一个字节总是经过8 10b编码之后的0011111010(左旋)或者1100000101(右旋)。
  • 由于还没有标准名词出现,引入“左旋”、“右旋”这两个化学名词来描述这种镜像编码方式。编码电路可以根据上一个10位中所包含的1的个数来旋转下一个10位中1的个数,总体平衡1和0的个数。
  • FC协议称左旋/右旋字符为K28.5,这个字未经过8 10b编码之前的值是16进制BC(10111100),低5位11100(十进制28),高3位101(十进制5)。这样便可以组成成相应的二进制位码,然后再加上一个描述字符K(控制字符)或者D(数据字符)。K28.5这个字符没有ASCII字符编码与其冲突,它的二进制流中又包含了连续的5个1,非常容易被电路识别,当然符合这些条件的字符还有好几个。
  • 每个控制字符均由K28.5字符开头,后接三个其他字符(可以是数据字符),由这4个字符组成的字来代表一种意义,比如SOF(Start Of Frame)、EOF(End Of Frame)等。
  • 定义了相关的控制字之后,还需要定义一个帧头。FC协议定义了一个24B的帧头。以太网帧头才14B,用起来还绰绰有余,为什么FC需要定义24B呢?在这个问题上,协议的设计者独树一帜,因为这24B的帧头不但包含了寻址功能,而且包含了传输保障的功能。网络层和传输层的逻辑都用这24B的信息来传递。
  • 基于以太网的TCP/IP网络,它的开销一共是:14B(以太网帧头)+20B(IP头)+20B(TCP头)=54B,或者把TCP头换成8B的UDP头,一共是42B。这就注定了FC的开销比以太网加上TCP/IP的开销要小,而实现的功能都差不多。FC将寻址、传输保障合并起来放到一个头中,长度才24B。

(2).链路层流量控制

  • 在链路层上,FC定义了两种流控策略:端到端的流控、缓存到缓存的流控,前者比后者更上层和高级。在一条链路的两端,首先面对链路的一个部件就是缓存。接收电路将一帧成功接收后,就放入了缓存中。如果由于上位程序处理缓慢而造成缓存已经充满,FC协议还有几只来通知发送方减缓发送。如果链路的一端是FC终端设备,另一端是FC交换机,则二者之间的缓存到缓存的流量控制只能控制这个FC终端到FC交换机之间的流量。
  • 而通信的最终目标是网络上的另一个FC终端,这之间可能经历了多个FC交换机和多条链路。如果数据流在另外一个FC终端之上发生拥塞,则这个FC终端就必须通知发起端降低发送频率,即“端到端”的流量控制。

(3).MTU

  • 一般情况下,以太网的MTU(Maximum Transmission Unit,最大传输单元)为1500B,而FC链路层的MTU可以到2112B。

本文标签: 详解大话协议ChannelFibre