7.1    二层网络的困境

今天大部分的数据中心网络是遵循标准的层次化理念建立起来的,分为接入层,汇聚和核心层。接入层和汇聚层之间为二层链路,三层网关设在汇聚或核心,所有的二层链路上都运行STP协议(Spanning Tree Protocol-生成树协议),当任意两点间有一条以上的路径到达时,STP会阻止多余的路径,以保证两点之间只有一条路径可以到达,从而防止环路的产生。

未来数据中心内部的横向流量越来越大,二层无法支持业务的快速发展;当交叉链路数量增加时,二层建设会变得很复杂;传统的二层MAC地址没有层次化的概念,很容易导致边缘设备的空间MAC地址耗尽。

7.2    为什么二层网络不给力

二层交换机干的活可以按前后顺序概括为以下几步:

收到数据帧;

查看目的地址;

查看MAC地址表;

将数据从对应端口发送出去

当设备之间存在环路时,数据帧被无限转发,形成广播风暴。

二层交换机过去简单,只会学习网络地址,不会基于学习到地址规划出一套转发数据的最优方案,它的问题类似于只有数据平面,没有控制平面。

7.3    FabricPath的目标

FabricPath是Cisco Nexus 7000交换机上的一项技术特性,其目标是在二层网络基础上修复二层网络的缺陷,技术特点要求如下:

实现两点间多条路径同时转发流量ECMP(Equal Cost Mutil Pathing);

类似IP网络的平滑扩展;

快速收敛;

防止广播风暴;

保持二层网络配置的简单性。

7.4    FabricPath的实现-新的控制平面

新的控制平面具备以下功能:

主动建立邻居关系,并基于链路状态维护一个路由数据库;

支持等价路由;

支持灵活的寻址方式;

保留原有二层网络配置简单的风格。

7.4.1    新增一个二层帧头

  新的帧头添加在原有数据帧之外,包含了丰富的信息,其中最重要的三个字段是源地址,目的地址和TTL(Time to Live-最大跳数)。

7.4.2    增加一套简化的IS-IS路由协议

  FabricPath最大的改进在于引入IS-IS(中间路由协议),IS-IS是一个广泛运行于运营商等大型网络的路由协议,是一个链路状态协议,会维护一个链路状态数据库。

7.5    第一个问题-为什么需要新的地址空间

  路由协议在计算逻辑树的过程中会用到设备的唯一标识,MAC地址没有任何规律,生成将是一个随机结构,导致最终转发路径不是当前最优路径。

7.6    FabricPath的工作模式

  数据帧进入FabricPath网络时,会被打上新帧头,在FabricPath网络中根据Swicth ID进行转发,离开FabricPath网络时,脱去帧头,进入传统网络。

7.7    第二个问题-现有技术不够吗

  VPN大多使用IP包承载,协议开销大,与二层快速转发相悖;MPLS控制平面仍然要IP报文进行路由,每个节点仍需要IP配置。

7.8    TRILL-FabricPath的公开标准

  TRILL定义了一种名为RbBridges或Routing Bridges的网络节点,这个节点相当于FabricPath网络中的FaricPath网关,RbBridge形成的网络就是TRILL。提出者是IETF

7.9    另一个TRILL-SPB

  SPB(Shortest Path Bridge-最短桥接路径)还有一个正式的名称是802.1aq,是802.1以太网协议集的一员。IEEE对SPB期望是取代802.1D,802.1w等一系列老的STP生成树协议。

7.10    TRILL vs SPB

  发明STP生成树协议和IS-IS协议的大牛人-Radia Perlman。IETF和IEEE是当前世界上最重要的两大标准化组织。在OSI模型中,IETF掌管网络层,负责维护因特网协议集;IEEE统领数据链路层,开发了以太网协议集。