H3C . TRILL技术及其组网模型

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享

文/宋玉兵

TRILL(Transparent Interconnection of lots of links,多链路透明互联)是IETF为实现数据中心大二层扩展制定的一个标准,目前已经有一些协议文稿标准化,如RFC6325,6326,6327等等。该协议的核心思想是将成熟的三层路由的控制算法引入到二层交换中,将原先的L2报文加一个新的封装(隧道封装),转换到新的地址空间上进行转发。而新的地址有与IP类似的路由属性,具备大规模组网、最短路径转发、等价多路径、快速收敛、易扩展等诸多优势,从而规避STP/MSTP等技术的缺陷,实现健壮的大规模二层组网。

一、 TRILL——实现二层多路径转发

TRILL标准涉及几个重要的概念:

  • Routing Bridge路由桥,简称RBridge或RB,是支持TRILL功能的网络节点的统称,类似一个IP Router;
  • VLAN x ForwarderVLAN X转发器,类似于VPN中的PE角色,基于VLAN来选举。主要功能是对用户侧的报文封装TRILL头送入TRILL网络进行转发或者将TRILL网络的报文解封装还原成用户侧的报文发送给用户;
  • Nickname:16bit长,类似于IP地址,是RB节点路由计算的基础。Nickname从Mac地址演变而来,因为Mac地址有48个bit,如果直接用于编码开销太大,而且表示的空间太大,因此从48bit缩减到16bit,64K范围。每个节点的Nickname各不相同,Nickname可以自动选举也可以手工配置,每个RB可以有多个Nickname。
  • “多路径”概念以往只用于IP转发。当两台路由器间存在多条等价转发路径(等价或非等价),路由器可根据路由协议的计算结果,将IP报文沿最短路径、并按照路径度量值,基于流的方式进行分担转发,由此可充分利用带宽资源。如果我们仔细回想一下我们交换机中最常使用的L2转发表,即MAC表,我们可以看到对于一个单播表项,其出端口只能是唯一的一个物理端口或者聚合端口,并不能同时有多个独立的物理端口,如果是那样的话,表项就变成了一个多播表项。也就是说MAC转发表天生不具备二层多路径能力。TRILL技术的出现并没有改变这种状况,而是通过隧道封装,将原本的二层MAC转发转换成一个类IP的三层路由转发,即TRILL技术将IP报文转发思路应用于以太帧转发,支持TRILL技术的以太网交换机被称为“RBridge(Routing Bridge)”。

    由于RB要对用户侧的报文进行封装和解封装操作,我们可以通俗的将负责报文加封装/拆封装的端点设备称为Vlan X Forwarder,类似VPN中的PE。

    路由器可通过链路状态路由协议计算相互之间的最短路径、等价多路径/ECMP,并在拓扑变化时更新转发路径。RBridge间通过类似IS-IS路由协议的链路状态控制协议TRILL IS-IS实现相互间最短路径和等价多路径的计算。TRILL IS-IS只计算RBridge间的拓扑,而不关心网络中两台主机间的拓扑(事实上,两台RB之间最常使用的拓扑是直连方式)。

    为了实现上述的路由控制功能,需要在网络中为每个RB定义一个全局唯一的标识,由于Router ID已经被IP使用了,且其形式类似IP地址,考虑到TRILL IS-IS还是为L2服务,因此TRILL重新选择了一种新的ID,名字叫Nickname,用来标识每个RB设备。TRILL IS-IS计算的最后结果就是为了形成到不同Nickname的单播和组播转发表。

    图1. RBridge对已知单播的转发

    如图1所示,当单播以太帧通过位于TRILL网络边缘的Ingress RBridge进入TRILL网络时,原始帧头前被增加一个额外的“TRILL头”(类似IP报文头),其中包含Ingress RBridge Nickname和Egress RBridge Nickname,就像IP头中的源IP地址和目的IP地址。“TRILL头”前还要添加“Next-Hop头”(就像IP报文前的MAC头或PPP头),由此完成TRILL帧封装。此后,TRILL帧在RBridge间的转发过程就像IP报文在路由器间的转发过程。RBridge根据TRILL头中的Egress Nickname进行逐跳转发,Next-hop头在每一跳都要修改,而TRILL头中只有TTL值发生变化。RBridge间对TRILL帧实现最短路径转发和等价路径分担,避免了传统二层网络由于运行STP造成的链路阻塞问题。TRILL帧最终在TRILL网络边缘的Egress RBridge被还原成标准以太帧,并被送出TRILL网。

    阅读全文»

    (没有打分)

    SDN Tutorial

    (4个打分, 平均:4.25 / 5)

    新浪SAE--一个互联网公司的云实践

    (3个打分, 平均:4.67 / 5)

    普林斯顿计算机系 。SDN 。MiniNet Guide

    (没有打分)

    弯曲评论荣誉出品--《关于SDN和OpenFlow的思考》

    (7个打分, 平均:4.86 / 5)

    虚拟化的逆袭:网络虚拟化之OpenFlow和SDN

    从网络虚拟化说起
    云计算的发展,是以虚拟化技术为基础的。云计算服务商以按需分配为原则,为客户提供具有高可用性、高扩展性的计算、存储和网络等IT资源。虚拟化技术将各种物理资源抽象为逻辑上的资源,隐藏了各种物理上的限制,为在更细粒度上对其进行管理和应用提供了可能性。近些年,计算的虚拟化技术(主要指x86平台的虚拟化)取得了长足的发展;相比较而言,尽管存储和网络的虚拟化也得到了诸多发展,但是还有很多问题亟需解决,在云计算环境中尤其如此。

    OpenFlow和SDN尽管不是专门为网络虚拟化而生,但是它们带来的标准化和灵活性却给网络虚拟化的发展带来无限可能。笔者希望通过本文对OpenFlow/SDN做一个初步介绍,以期帮助大家能够进一步深入了解和学习OpenFlow/SDN。限于笔者能力有限,文中难免纰漏错误之处,欢迎批评和指正。

    起源与发展
    OpenFlow起源于斯坦福大学的Clean Slate项目组 [1] 。CleanSlate项目的最终目的是要重新发明英特网,旨在改变设计已略显不合时宜,且难以进化发展的现有网络基础架构。在2006年,斯坦福的学生Martin Casado领导了一个关于网络安全与管理的项目Ethane[2],该项目试图通过一个集中式的控制器,让网络管理员可以方便地定义基于网络流的安全控制策略,并将这些安全策略应用到各种网络设备中,从而实现对整个网络通讯的安全控制。受此项目(及Ethane的前续项目Sane[3])启发,Martin和他的导师Nick McKeown教授(时任Clean Slate项目的Faculty Director)发现,如果将Ethane的设计更一般化,将传统网络设备的数据转发(data plane)和路由控制(control plane)两个功能模块相分离,通过集中式的控制器(Controller)以标准化的接口对各种网络设备进行管理和配置,那么这将为网络资源的设计、管理和使用提供更多的可能性,从而更容易推动网络的革新与发展。于是,他们便提出了OpenFlow的概念,并且Nick McKeown等人于2008年在ACM SIGCOMM发表了题为OpenFlow: Enabling Innovation in Campus Networks[4]的论文,首次详细地介绍了OpenFlow的概念。该篇论文除了阐述OpenFlow的工作原理外,还列举了OpenFlow几大应用场景,包括:1)校园网络中对实验性通讯协议的支持(如其标题所示);2) 网络管理和访问控制;3)网络隔离和VLAN;4)基于WiFi的移动网络;5)非IP网络;6)基于网络包的处理。当然,目前关于OpenFlow的研究已经远远超出了这些领域。

    基于OpenFlow为网络带来的可编程的特性,Nick和他的团队(包括加州大学伯克利分校的Scott Shenker教授)进一步提出了SDN(Software Defined Network, 目前国内多直译为“软件定义网络”)的概念–其实,SDN的概念据说最早是由KateGreene于2009年在TechnologyReview网站上评选年度十大前沿技术时提出[5]。如果将网络中所有的网络设备视为被管理的资源,那么参考操作系统的原理,可以抽象出一个网络操作系统(Network OS)的概念—这个网络操作系统一方面抽象了底层网络设备的具体细节,同时还为上层应用提供了统一的管理视图和编程接口。这样,基于网络操作系统这个平台,用户可以开发各种应用程序,通过软件来定义逻辑上的网络拓扑,以满足对网络资源的不同需求,而无需关心底层网络的物理拓扑结构。关于SDN的概念和原理,可以参考开放网络基金会(Open NetworkingFoundation)于今年4月份发表的SDN白皮书Software Defined Networking:The New Norm forNetworks [6] 。

    从上面的描述中,可以看出OpenFlow/SDN的原理其实并不复杂,从严格意义上讲也很难算是具有革命性的创新。然而OpenFlow/SDN却引来了业界越来越多的关注,成为近年来名副其实的热门技术。目前,包括HP、IBM、Cisco、NEC以及国内的华为和中兴等传统网络设备制造商都已纷纷加入到OpenFlow的阵营,同时有一些支持OpenFlow的网络硬件设备已经面世。2011年,开放网络基金会(Open Networking Foundation)在Nick等人的推动下成立,专门负责OpenFlow标准和规范的维护和发展;同年,第一届开放网络峰会(OpenNetworking Summit)召开,为OpenFlow和SDN在学术界和工业界都做了很好的介绍和推广。今年年初召开的第二届峰会上,来自Google的Urs Hölzle在以OpenFlow@Google[7]为题的Keynote演讲中宣布Google已经在其全球各地的数据中心骨干网络中大规模地使用OpenFlow/SDN,从而证明了OpenFlow不再仅仅是停留在学术界的一个研究模型,而是已经完全具备了可以在产品环境中应用的技术成熟度。最近,Facebook也宣布其数据中心中使用了OpenFlow/SDN的技术。
    阅读全文»

    (16个打分, 平均:4.31 / 5)

    指尖上的中国

    (10个打分, 平均:4.90 / 5)

    CCN内容中心网络——未来网络研究重要方向之一

    (1个打分, 平均:4.00 / 5)

    SDN-Google Onix

    (1个打分, 平均:5.00 / 5)

    OpenFlow 规约

    (2个打分, 平均:5.00 / 5)