您好,欢迎来电子发烧友网! ,新用户?[免费注册]

您的位置:电子发烧友网 > 电子技术应用 > 行业新闻 > 新品快讯 >

Cisco最后的王牌—FabricPath(2)

2011年03月27日 09:30 CNW 作者:秩名 用户评论(
FabricPath的实现:新的控制平面

  既然二层网络的问题是控制平面的缺失,FabricPath的思路就清晰了,那就是重塑一个控制平面。

  为了能够高效地支持数据中心扩展,这个新的控制平面需要具备几个基本功能,包括:主动建立邻居关系,并基于链路状态维护一个路由数据库,支持等价路由

  支持灵活的寻址方式,保留原有二层网络配置简单的风格。

  为了构建这样一个控制平面,FabricPath主要做了以下两件事:

  1)新增一个二层帧头

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

  这个新的帧头添加在原有数据帧之外,包含了丰富的信息,其中最重要的三个字段是源地址、目的地址和TTL。

  源地址和目的地址来自FabricPath新定义的一个名为switch ID的全新地址空间,任何一个新加入FabricPath网络的设备都会被分配一个1~4094之间的整数,作为唯一的switch ID,用于标识一台交换机的身份,也是节点之间进行路由寻址的依据。

  TTL(Time To Live)字段定义了一个数据帧的最长生存周期。当生成一个数据帧时,其TTL字段被写入一个整数,每当其经过一台交换设备TTL就减一,直到TTL为零时,这个帧将被丢弃。TTL的概念是TCP/IP的基础之一,在FabricPath中,TTL承担了同样的任务,保证数据帧不会在成环的链路中被无限次转发,从而使得二层环境不再需要运行STP协议,不再有链路被Block,这是实现两点之间多路径转发的基础。

  相较帧结构的变化,FabricPath更重要的改进在于引入IS-IS这样一套完整的路由协议。IS-IS是一个广泛运行于运营商等大型网络的路由协议,同OSPF类似,IS-IS也是一个链路状态协议,会维护一个链路状态数据库,相比MAC寻址这样的距离矢量行为,运行链路状态协议的设备能够在内存中建立一张包含全网设备的拓扑,并且在这个拓扑的基础上挑选当前链路状态下的最短路径来转发数据。IS-IS的效率很高,且IS-IS区域能平滑地平移、分割、合并,但相较OSPF最大的不同在于,IS-IS可以封装在链路层报文中支持多种网络层协议,而OSPF只能封装在IP包中支持IP协议,这就使得IS-IS能够很容易被移植到FabricPath中,为二层数据帧的转发提供路由服务。

  FabricPath中实际运行的是一个简化版本的IS-IS协议,不再依赖MAC地址进行寻址,依靠交换机的switch ID工作,在节点之间交换IS-IS信令构建路由表,IS-IS协议会事先计算出最优路径作为数据转发的依据。有了IS-IS的助阵,FabricPath能够轻松地实现两点之间的ECMP、网络拓扑的快速收敛、以及快速的错误诊断等高级路由功能。

  新的地址空间加上IS-IS协议,FabricPath基本建立起一个控制平面雏形,数据平面和控制平面各司其职。如果你是个较真的同学,你的第一个问题该出现了,为什么不延用原有的MAC地址,而要兴师动众地加入一套新地址呢?问得好!

  FabricPath中的IS-IS协议会建立一套逻辑树结构,这个结构说明了任意两点间的最优路径,是交换机转发数据的依据。路由协议在计算逻辑树的过程中往往会用到设备的标识号,由于MAC地址在设备出厂时就固定了,不同设备之间的地址没有任何规律,如果使用MAC地址作为唯一标识,生成的将是一个随机结构,这有可能导致最终的转发路径不是当前的最优路径。由于路由协议的算法是写死的,要避免这种情况只能人工调整各个节点的标识大小,这种情况同部署STP时调整交换机的优先级,以保证最优的转发路径是一个道理。然而,FabricPath设计的初衷就是保留二层配置简洁的优势,如果将STP的老毛病一并带过来,无疑大大削弱了对客户的吸引力,不利于现有网络向FabricPath的迁移。

  既然是从头设计一套全新的机制,不如追求一把极致,将所有复杂的工作都隐藏到幕后,只呈现给用户最简洁的一面,这就是FabricPath费尽苦心设计一套地址空间的出发点。

  FabricPath的工作模式

  数据帧在进入FabricPath网络时,会被打上新帧头,在FabricPath网络内根据帧头里的switch ID进行转发,离开Fabric Path网络时,脱去帧头,进入传统的以太网交换环境。要加入FabricPath网络,只需在交换机对应端口上启用FabricPath模式即可,所有的地址分配和路由策略都自动生成,无需繁琐的配置。

  汇聚设备同接入设备之间为FabricPath网络,FabricPath网络内没有运行STP,多条链路都能够转发数据,目前版本的FabricPath支持16条等价路由,也就是说在使用万兆链路的情况下,任意两点间的带宽可到2.56Tbps(16条等价链路结合,每条等价链路为16个万兆portchannel)。

  接入设备作为网关连接了传统以太网络同FabricPath网络,FabricPath网关上可以进行“基于会话的MAC地址学习”,只有那些目的地址为本地设备的数据帧的源地址会被放入网关的MAC地址表,其他数据帧的源地址以及广播帧的源地址都不会被学习,这就保证了边缘网关设备的MAC地址表里只保存与本地有会话关系的MAC地址,这个举措能够大大缩小虚拟化数据中心内接入设备的MAC地址表体积。

  基于IS-IS的特性,FabricPath网络设备的switch ID可以动态修改,而不影响流量转发,当数据中心规模不断扩张时,可以利用FabricPath平滑地扩展其汇聚层,并在接入设备间实现高达16条二层多路径(ECMP)。

  第二个问题

  OK,这一切都看上去很美,但你有没有觉得哪里不对劲?这就是我对FabricPath的第二个问题,以上说的所有这些东西,新增帧头啦、新的选路机制啦,和VPN不是差不多吗?在今天这个技术过剩的时代,难道找不出一个能解决这些问题的现有技术,非要重新折腾出一套新玩意吗?

  现有VPN技术种类繁多,但大多数都使用IP包承载,协议开销较大,这与二层具备的快速转发特性是背道而驰的,仅此一项就将IPSec等三层VPN技术屏蔽在可选项之外。剩下的二层VPN中最常见的是类似MPLS+VPLS的实现方式,MPLS是一个2.5层技术,专门用于大量数据的快速转发,但问题是,MPLS的控制平面仍然需要IP报文进行路由,每个节点仍需要进行IP配置,而部署一个MPLS+VPLS网络你觉得容易吗?反正我看着都觉得头大,如果一种局域网技术需要网管人员先学习一遍MPLS,我觉得这种技术基本也没啥戏可演了。

  标准化

  FabricPath是Cisco近期在数据中心领域最重要的一个发布,同时也预示着基础网络向下一代模型转型的开始。数据中心内不断增长的横向流量推动了二层多路径技术的迅速发展,FabricPath是这股潮流的重要组成部分,但Cisco不是唯一的声音。

  目前致力于实现二层多路径的标准化组织主要有IETF和IEEE,两家的标准分别为TRILL和802.1aq,都采用IS-IS作为路由协议,实现方式大同小异。目前,TRILL和802.1aq都已接近完成,预计2011年底就能够正式标准化。

  Cisco在TRILL的制定过程中参与极深,虽然FabricPath是Cisco的私有解决方案,但可以看作一个“增强版的TRILL”,是TRILL的基本功能加上“基于会话的MAC地址学习”、“Vpc+”和“多重拓扑”等高级功能的合集。

  Cisco已经发布了支持FabricPath的Nexus 7000板卡,并且承诺现有架构与TRILL标准兼容,当TRILL正式标准化之后,只需要升级现有设备的软件,就能够与标准的TRILL交换机互联互通。

  

非常好我支持^.^

(0) 0%

不好我反对

(0) 0%

( 发表人:简单幸福 )

      发表评论

      用户评论
      评价:好评中评差评

      发表评论,获取积分! 请遵守相关规定!