CN104380672B - 用于802.1aq的三级折叠Clos优化 - Google Patents
用于802.1aq的三级折叠Clos优化 Download PDFInfo
- Publication number
- CN104380672B CN104380672B CN201380034116.0A CN201380034116A CN104380672B CN 104380672 B CN104380672 B CN 104380672B CN 201380034116 A CN201380034116 A CN 201380034116A CN 104380672 B CN104380672 B CN 104380672B
- Authority
- CN
- China
- Prior art keywords
- node
- root
- fringe
- network
- multicast
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
- H04L45/484—Routing tree calculation using multiple routing trees
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
一种三级折叠Clos网络用于在故障时以计算复杂性、网络管理、多播寻址和载荷重新分布的改进效率进行以太网路由。网络包含耦合到边缘节点阵列的根节点阵列。对于在根节点上生根的生成树,计算并安装转发状态。当边缘节点被标识为具有到根节点的出故障连接时,对于在那个根节点上生根并使用出故障连接的生成树的每个主干VLAN标识符(B‑VID)构造在那个边缘节点上生根的最短路径优先(SPF)树。对于具有公共服务标识符的边缘节点对填充每个节点中的过滤数据库,并且使用混合多播寻址经由SPF树根据过滤数据库在边缘节点对之间转发单播和多播数据。
Description
技术领域
本发明的实施例涉及计算机连网领域;并且更确切地说,涉及三级折叠Clos网络中以太网路由的优化。
背景技术
在2012年公布的IEEE 802.1aq标准(下文也称为802.1aq)定义了以太网的路由解决方案。802.1aq也被称为最短路径桥接或SPB。802.1aq使能够在原始以太网基础设施上创建逻辑以太网网络。802.1aq采用链路状态协议公告网络中节点的拓扑和逻辑网络成员。数据分组封装在网络的边缘节点,所述网络实现mac-in-mac 802.1ah或加标签的802.1Q/p802.1ad帧中的802.1aq,并仅传输到逻辑网络的其它成员。802.1aq也支持单播和多播。所有此类路由经由对称最短路径进行。支持许多等成本最短路径。网络中802.1aq的实现简化了包含提供商网络、企业网络和云网络的各种类型网络的创建和配置。该配置被相对简化,并减小了误差特别是人为配置误差的似然。
发明内容
在用于在故障时以计算复杂性、网络管理、多播寻址和载荷重新分布的改进效率进行以太网路由的三级折叠Clos网络中实现方法的实施例。网络包含耦合到具有面向用户输入和输出端口的边缘节点阵列的根节点阵列。网络中的节点计算并安装在根节点上生根的生成树的转发状态。当所述网络中没有故障时,生成树中的数据转发利用多播路径的任何源多播地址,因为这按线性比例缩放到多播群的数量而非参与服务的节点数量乘以多播群的数量的组合乘积。当给定边缘节点被标识为具有到给定根节点的出故障连接时,所述网络中的每个节点对于在给定根节点上生根并使用出故障连接的生成树的每个B-VID计算在那个给定边缘节点上生根的最短路径优先(SPF)树,其中SPF树充当到那个B-VID的那个给定边缘节点的单播和多播连接性的原型。对于给定边缘节点与其它边缘节点之间成对连接性填充每个节点中的过滤数据库,其中它们具有共同与移置的B-VID关联的服务,并且节点在过滤数据库中安装单播状态,并且还使用根据业务是指向给定边缘节点还是来自给定边缘节点选择的多播寻址的混合在过滤数据库中安装多播状态。每个节点然后使用其转发数据库在网络中转发单播和多播数据。
上面描述的实施例是分布式路由系统,其中每个节点计算过滤数据库中的其转发表。在备选实施例中,集中式控制器执行计算转发表的系统管理功能。转发表然后被下载到节点的每个节点中以执行数据转发。
充当边缘节点的网络元件的实施例在用于在故障时以多播寻址和载荷重新分布的改进效率进行以太网路由的三级折叠Clos网络中实现。边缘节点包含面向用户的输入和输出端口的第一集合、耦合到多个根节点的输入和输出端口的第二集合、存储过滤数据库的存储器以及网络处理器,所述网络处理器配置成:计算并安装用于在根节点上生根的生成树的转发状态,其中当网络中没有故障时,生成树中的数据转发利用多播路径的任何源多播地址;将给定边缘节点标识为具有到给定根节点的出故障连接;对于在给定根节点上生根并使用出故障连接的生成树的每个B-VID构造在给定边缘节点上生根的SPF,其中SPF树充当到那个给定边缘节点的单播和多播连接性的原型;对于给定边缘节点与其它边缘节点之间的成对连接性填充过滤数据库,其中它们具有共同与移置的B-VID关联的服务,在过滤数据库中安装单播状态,并且使用根据业务是指向给定边缘节点还是来自给定边缘节点选择的多播寻址的混合在过滤数据库中安装多播状态。转发数据库然后用于在网络中转发单播和多播数据。在用于在故障时以多播寻址和载荷重新分布的改进效率进行以太网路由的三级折叠Clos网络中实现系统实施例。系统包含耦合到具有面向用户的输入和输出端口集合的边缘节点的根节点。每一个边缘节点和根节点包含存储过滤数据库的存储器,并且网络处理器配置成:计算并安装用于在根节点上生根的生成树的转发状态,其中当网络中没有故障时,生成树中的数据转发利用多播路径的任何源多播地址;将给定边缘节点标识为具有到给定根节点的出故障连接;对于在给定根节点上生根并使用出故障连接的生成树的每个B-VID构造在给定边缘节点上生根的SPF,其中SPF树充当到那个B-VID的那个给定边缘节点的单播和多播连接性的原型;对于给定边缘节点与其它边缘节点之间的成对连接性填充过滤数据库,其中它们具有共同与移置的B-VID关联的服务,在过滤数据库中安装单播状态,并且使用根据业务是指向给定边缘节点还是来自给定边缘节点选择的多播寻址的混合在过滤数据库中安装多播状态。转发数据库然后用于在网络中转发单播和多播数据。
附图说明
在附图的各图中作为示例而非作为限制图示本发明,附图中相似的附图标记指示类似元素。应该指出,此公开中对“一”或“一个”实施例的不同提及不一定针对同一实施例,并且此类提及意味着至少一个。进一步说,当具体特征、结构或特性结合实施例进行描述时,认为结合无论是否明确描述的其它实施例来实现此类特征、结构或特性是在本领域技术人员的知识范围内。
图1图示了三级折叠Clos网络的示例。
图2图示了指配给根节点的系统ID集合的示例。
图3图示了用于生成树根选择的分离的打破平局机制的示例。
图4图示了计算并安装三级折叠Clos网络中生成树的转发状态的方法实施例。
图5图示了根据实施例根节点出故障的情形。
图6图示了根据实施例链路出故障的情形。
图7图示了根据实施例两个链路出故障的第一情形。
图8图示了根据实施例两个链路出故障的第二情形。
图9图示了根据实施例两个链路出故障的第三情形。
图10图示了根据实施例三个链路出故障的第一情形。
图11图示了根据实施例三个链路出故障的第二情形。
图12图示了当三级折叠Clos网络中发生故障时用于数据帧转发的方法实施例。
图13是图示根据实施例耦合到管理系统的网络元件的框图。
具体实施方式
在如下描述中,阐述了众多特定细节。然而,要理解,本发明的实施例可以在没有这些特定细节的情况下实行。在其它实例中,众所周知的电路、结构和技术未详细示出,以免模糊对此描述的理解。然而,本领域技术人员将认识到,没有此类特定细节也可实行本发明。本领域普通技术人员将能够通过所包含的描述来实现适当功能性而无需过多实验。
在IEEE 802.1aq网络中,利用链路状态协议控制网络上以太网帧的转发。在802.1aq网络中使用一个链路状态协议,中间系统对中间系统(IS-IS),用于公告网络的拓扑和逻辑网络成员。
802.1aq具有两种操作模式。基于虚拟局域网(VLAN)的网络的第一模式被称为最短路径桥接VID(SPBV)。基于MAC的网络的第二模式被称为最短路径桥接MAC(SPBM)。SPBV和SPBM网络都可在数据平面中同时支持多于一个等成本转发树的集合(ECT集合)。ECT集合共同与形成SPBV的SPV ID集合的若干最短路径VLAN标识符(SPV ID)关联,并且与SPBM的主干VLAN ID(B-VID)1:1关联。
根据802.1aq MAC模式,提供商网络中的网络元件配置成执行由B-VID分开的多路径转发业务,使得寻址到相同目的地址但映射到不同B-VID的不同帧可通过网络在不同路径(称为“多路径实例”)上转发。与服务关联的顾客数据帧根据802.1aq与具有独立的服务标识符(I-SID)和B-VID的报头封装。这种分开允许服务独立于网络拓扑而缩放。从而,B-VID然后可排他地用作多路径实例的标识符。I-SID标识要由B-VID所标识的多路径实例提供的特定服务。802.1aq中多路径实例的实际路由基于每个节点的系统ID通过打破平局来确定。
802可用于在广域网(WAN)中或数据中心(诸如云计算数据中心)内的以太网路由。数据中心内的网络通常具有高度规则的结构,诸如Clos网络拓扑。Clos网络包含交换节点矩阵。Clos网络的示例是三级折叠Clos网络,其具有入口级、中间级和出口级,并且其中网络在节点的中间级上被中间折叠,使得入口级被合并到出口级。进入入口级中节点的每个数据帧可通过任何可用的中间级节点路由以到达目的出口级节点。
已经开发了若干技术,用于维持具有出故障节点或链路的Clos网络中的连接性。根据802.1aq,节点或链路的故障可被一个或多个周围节点观察到,并由路由系统在整个网络上公告。网络中的每个节点将重新计算受故障影响的业务的新路径,并且转发将自动使用新路径继续。
不像生成树应用于导致非最优转发路径的任意拓扑,在无故障Clos网络中,由在第二层节点(即中间级中的节点)上生根的多个生成树提供的连接性将与基于最短路径树的一样。不仅在路由问题计算复杂性方面更简单,而且允许使用更可缩放的多播寻址格式。然而,当链路故障时使得第二层节点具有不完全连接性的业务分布有问题,并且可导致恢复到最短路径树操作,并且需要使用较不可缩放的多播寻址。
此外,根据802.1aq,当存在故障时,移置的业务被作为块移位到故障转移路径。业务重新分布作为一个块可降低网络的稳定性,因为故障转移路径现在处理业务的显著增加,这可使其性能显著降级。进一步说,业务到故障转移路径的这种块移位可因此淹没故障转移路径中的链路和节点,以便有效地使那些元件出故障。将期望的是,修改基本规范802.1aq行为以应用多路径技术,其最大化了多播地址可缩放性,最小化了计算复杂性,通过提供在故障情形下与多路径选择具有共同性的分布式生成树根选择机制简化了网络中的多路径设计,并且提供了在故障情形下网络容量降级的更公平分布。
本文描述的实施例利用具有变平的交换层级的网络拓扑,诸如三级折叠的Clos网络。三级折叠的Clos网络是在节点的中间级上中间折叠的三级Clos网络,使得入口级被合并到出口级。合并的入口/出口级包含边缘节点(也称为第一层节点)阵列,并且中间级包含根节点(也称为第二层节点)阵列。当连接到根节点的一个或多个链路发生故障时,有可能要求专门的解决方案而不是继续将根用于所有连接性(导致不必要的长转发路径),或恢复到“所有对”计算;对于正常情况下在B-VID的出故障链路上与根具有直接邻域的每个边缘节点,生成最短路径优先(SPF)树,其中SPF树在边缘节点上生根。在对于除了出故障根节点之外的所有根节点生成生成树的情况下,不存在“所有对”计算;而是,对于根节点或连接到根节点的一个或多个链路的故障,仅生成一个SPF树每B-VID。从而,在涉及根节点的故障事件中,计算载荷显著减小。
本文描述的实施例利用扩充的802.1aq打破平局路径选择技术与分离的打破平局机制的组合的变化来选择数据帧对于每个ECT集合都遍历的生成树的根。在一个实施例中,生成树的根在用与B-VID关联的XOR掩码值掩蔽之后是具有最低系统ID的根节点,并且网络已经被管理成确保Clos中的第二层节点当与指配给边缘节点的系统ID比较时将在打破平局时始终具有最低系统ID。Clos网络中的每个节点都具有用于打破平局的多个系统ID集合中的多个系统ID。这些系统ID集合和掩码值使能够进行多个生成树根的分布且独立的选择,并且提供数据中心中载荷分散的简单方法。生成树根(例如在XOR掩蔽之后具有第二最低系统ID的根节点)的第二最佳选择是每个系统ID集合中的不同第二层节点。从而,当第二层节点发生故障时,在那个节点上生根的生成树集合可分布在多于一个其它第二层节点上。
对于折叠Clos网络,在根节点上生根的生成树提供了与在边缘节点上生根的等成本树相同的连接性。然而,使用等成本树上的生成树存在若干优点。使用生成树允许使用“任何源”多播寻址,这显著减少了网络中的多播状态。相比较,使用“源特定”多播寻址的等成本树导致交换器过滤数据库中的阶(S)更多的多播地址,其中(S)是给定多播群的多播源节点的数量。
进一步说,本文描述的实施例在构造多播连接性时利用三种形式的主干目的MAC地址,其包含802.1aq多播MAC寻址(也称为“源特定”多播寻址或(S,G)寻址)、802.1ah多播MAC寻址(也称为“任何源”多播寻址或(*,G)寻址)以及现有主干单播遂穿的再用。在实施例中,开发了“水平分离”树方法以应对根节点的部分切断。附连到出故障邻域的节点使用与未附连的节点不同形式的寻址。附连到出故障邻域的节点可使用(*,G)寻址,而ECT集合中未直接附连到出故障邻域的节点使用(*,G)和(S,G)(或单播)寻址的混合双播/广播/未知/多播(BUM)数据帧。
本文描述的混合寻址样式通过减少在节点中保留的多播状态来改进网络缩放性。根据802.1ah,(*,G)多播的骨干目的MAC地址被编码为固定组织上唯一的标识符(OUI)(表示*,I-SID的所有源的集合)和服务标识符(诸如I-SID(表示G))的串联。根据802.1aq,(S,G)多播的主干目的MAC地址被编码为多播树根(表示S)和服务标识符(诸如I-SID(表示G))的级联。对于存在单个接收器的单播,主干目的MAC地址是固定长度位值,例如46位值。(*,G)多播树可由任何源节点用于到达G中的所有接收器,并且根据水平分离,使得任何单独源都看不见它自己的业务。对于最短路径树,需要(S,G)多播树,其中由于FDB冲突,水平分离不可能,因为树未对于所有“S”共同路由,并且可由单个源用于到达G中接收器的集合或子集,因为树可对于每个“S”个性化。因此,需要多个(S,G)树来构造(*,G)树的等同物,并且作为结果,这多个(S,G)树需要根节点中的更多状态来有效地做与一个(*,G)多播树相同的事情。在节点群(G)中存在单个接收器的情况下,使用单播。单播没有增加状态,因为单播转发路径的存在独立于服务特定多播树。因此,在不使用或不能使用(*,G)的(S,G)上使用单播是有益的。
尽管本文描述了标准的特定版本,但本发明的实施例不限于基于标准的当前版本的实现,因为当它们被开发时,它们可适用于与标准的将来版本一起工作。类似地,本发明的实施例不限于结合本文描述的具体协议之一的实现,因为在以太网多区域路由网络中也可使用其它协议。
图1是三级折叠Clos网络10的示例网络拓扑的图。折叠入口/出口级(所示出的底部级)中的节点被称为边缘节点12,并且中间级(所示出的顶部级)中的节点被称为根节点11。根节点11和边缘节点12被统称为“节点”。每个节点11、12是将所有其输入端口交叉连接到其输出端口的交换元件。网络是三级的,因为由帧遍历的节点的最大数量是三(即边缘到根到边缘)。每个根节点11被连接到所有边缘节点12。每个根节点11包含若干输入/输出端口以便向边缘节点12发送和从边缘节点12接收,并且每个边缘节点12也包含若干输入/输出端口以便向根节点11发送和从根节点11接收。附加地,每个边缘节点12还包含若干面向用户的输入/输出端口13以便从外部网络10接收和向外部网络10传送。
图1的示例网络构建在等容量节点外,并且包含互连八个边缘节点12的四个根节点11。在不同实施例中可包含不同数量的根节点11和边缘节点12。在一个实施例中,网络10在数据中心内。在一个实施例中,每个根节点11是主干核心桥(BCB),并且每个边缘节点12是主干边缘桥(BEB)。
一般而言,三级折叠Clos网络的非阻断特性可由其根节点和边缘节点中的端口数量确定。例如,非阻断Clos网络中的根节点11的最大数量是每个节点的端口数量除以2,并且边缘节点12中的面向用户的端口13的数量是根节点的数量乘以每个节点的端口数量。
为了简化,以下描述使用在虚框15中所示出的网络10的一部分作为基础网络。要理解,这些技术可应用于具有不同数量根节点和边缘节点的三级折叠Clos网络。如图2的实施例中所示出的,根节点21用A、B、C和D标记,边缘节点22用w、x、y和z标记。在一个实施例中,根节点21被指配了多个系统ID集合(例如集合1、集合2和集合3),每个系统ID集合包含每一个根节点21的截然不同的系统ID。不同系统ID集合中用于同一根节点21的系统ID可以相同或不同;例如,节点A在三个系统ID集合中分别具有系统ID 00、00、00,并且节点B在三个系统ID集合中分别具有01、02、02。
当为B-VID选择生成树的根节点时,使用多个系统ID集合允许分离的打破平局。根据参考图3详细描述的分离的打破平局机制,B-VID 1、5、9(示为v1/5/9)的生成树在节点A上生根。尽管在图2中未示出,但根节点B是B-VID 2、6、10的生成树的根,根节点C是B-VID3、7、11的生成树的根,并且根节点D是B-VID 4、8、12的生成树的根。从而,在报头中携带B-VID 1、5、9的数据帧可从任一边缘节点进入网络,经过根节点A,并且通过任一其它边缘节点退出。如果节点A出故障,或者任一标记的链路出故障,则受影响的业务可经由其它根节点分布到其它链路。在无故障情形下,每一个边缘节点w、x、y和z都使用802.1ah“任何源”多播MAC(*,G)寻址转发数据帧以到达其它边缘节点。要指出,顾客层业务在与它在主干层中无论如何转发都截然不同的那层被广播、单播或者是多播。
图3图示了用于生成树根选择的分离的打破平局机制的实施例。在描述分离的打破平局机制中,说明在802.1aq中定义的分离的打破平局机制是有用的。802.1aq正常情况下生成从网络中业务的每个源生根的对称全等最短路径树的全网。一个此类全网被称为等成本树(ECT)集合。ECT集合正常情况下与B-VID关联。当作为生成ECT集合的一部分的路径计算导致需要从多于一个等成本路径中选择时,802.1aq使用节点ID的字典式排序来构造每个等成本路径的唯一路径ID,对路径ID集合进行分类,并选择最低值。附加地,802.1aq规定用于经由将与每个ECT集合关联的集合值与节点ID进行XOR生成多个ECT集合、修订每个路径ID中节点ID的字典式排序、对路径ID重新分等级并且再次选择最低值的手段。
本文描述的分离的打破平局机制是在802.1aq上的改进。分离的打破平局机制使能够在Clos网络中的根节点集合上进行更平均分布,不仅在无故障情形下,而且在一个或多个根节点出故障时。分离的打破平局机制使用如下若干设计元件。(1)要实例化的生成树的数量被选择成根节点数量的某个整数倍。如果期望利用故障期间的分离的平局打破器的属性,则那个倍数大于1。(2)根节点ID(即系统ID)被设计成使得在无故障Clos网络中相等数量的生成树在每个根节点上生根。(3)边缘节点ID设计成使得每个边缘节点将决不是生成树根。这可通过简单地在边缘节点ID的高位中使用非零值来实现,而根节点在高位中具有零,使得min_value(边缘节点ID集合)>max_value(根节点ID集合)。(4)如果在(1)中倍数大于1,则分离的平局打破器值被设计成使得出故障根节点的生成树根被分布在多于一个其它根节点上。
在图3的实施例中,系统ID集合23中的系统ID按二进制示出。此外,网络中的每个B-VID被指配了掩码值和系统ID集合号,诸如在掩码集合33中示出的示例。为了确定每一个B-VID 1-4(其属于系统ID集合1)的根节点,使用B-VID 1-4的对应掩码值在系统ID集合1上执行变换。在一个实施例中,在变换(使用给定掩码)后具有最低系统ID的根节点是与给定掩码关联的B-VID的生成树的根。在一个实施例中,变换是XOR运算。例如,对于具有掩码值0000的B-VID 1,对掩码值0000和集合1:0000,0001,0010,0011中的每一个系统ID执行XOR。XOR的结果(它们是变换的系统ID)是0000、0001、0010和0011。在一个实施例中,导致最低XOR值的根节点被选择作为对应B-VID的生成树的根。从而,对于B-VID 1,根节点是节点A,因为XOR结果0000是四个当中最低的。
在节点A有故障的情况下,根据上面计算的XOR结果,经过节点A的业务可被重新路由到另一根节点。例如,导致下一最低XOR值的根节点可被选择作为新经过根节点;即节点B。因此,上面计算的XOR结果确定B-VID 1的故障切换排序。
类似地,可用相同分离的打破平局机制执行B-VID 5-8和B-VID 9-12的根选择。当B-VID 1-4、B-VID 5-8和B-VID 9-12在不同集合中时,每个集合中的掩码值和系统ID可独立于其它集合配置。在一个实施例中,管理系统可用系统ID以及它们的对应系统ID集合配置每个根节点。管理系统还可指配在系统中使用的B-VID的掩码值。每个B-VID的系统集合ID号(例如集合1、集合2或集合3)和掩码值可经由扩充的中间系统到中间系统(IS-IS)hello程序在节点之间交换,或者可被加载到每个节点中作为管理系统的配置数据。
图4是图示计算并安装三级折叠Clos网络中生成树的转发状态的方法400的实施例的流程图。在一个实施例中,使用扩充的IS-IS hello程序在节点之间交换打破平局信息(框410)。扩充的IS-IS程序可用于对于每个B-VID交换路径生成算法(例如生成树或等成本树)、用于根选择的系统ID和用于B-VID的掩码值。例如,与节点关联的IS-IS扬声器可公告如下:对于B-VID 1,使用生成树,使用用于跟选择的系统ID集合1,并且掩码值=00;对于B-VID 2,使用生成树,使用用于根选择的系统ID集合1,并且掩码值=01等。在备选实施例中,打破平局信息可由管理系统配置在每个节点中。在获得打破平局信息之后,基于打破平局信息对于每个B-VID选择生成树的根节点(框420)。根选择由系统ID变换执行,如图3中所描述的,使得在所有根节点当中具有最低系统ID的根节点被选择作为由给定B-VID标识的生成树的根。在根选择之后,对于每个根节点,标识其到边缘节点的路径(框430)。在一个实施例中,网络中的每个节点使用Dijkstra算法计算路径;备选地,可使用不同的算法。
在使用Dijkstra算法的实施例中,计算的结果可用于修改转发以避免链路故障的影响。计算由网络中的每个节点以分布式方式执行,并且计算的结果可由节点使用,与它们在网络中的位置无关。从而,节点不需要紧接着出故障链路以便使用此信息,因为节点获取全局拓扑知识并计算那个信息的局部个性化。Dijkstra算法生成原型树,其中每个一跳路径从根节点到边缘节点,边缘节点可保持在树中。具有多于一跳的那些路径可从树剪除(框440)。例如,可能存在两跳路径,它们从根到边缘到根。这些路径可从原型树剪除。三跳路径被标识为链路故障的指示(框450)。三跳路径的开始点是生成树的根,并且结束点是根不能直接到达的边缘节点。从而,三跳路径指示边缘始发的业务不能遍历生成树的根,并且不得不遍历另一根以到达边缘节点。从而,这三跳路径根据考虑也能被剪除,并且对于那个B-VID和耦合到出故障链路的边缘节点需要新根。由三跳路径到达的节点列表单独保留以便将来计算,因为边缘节点集合不再直接附连到该根。进一步说,四跳或更大路径意味着网络已经反常地出故障了。要指出,上面描述的路径剪除和故障检测仅仅是示例,并且可能存在优化。
在生成生成树之后,标识具有与B-VID关联的共同服务标识符的B-VID的每对边缘节点(框460)。当标识边缘-边缘节点对时,它们的相应过滤数据库(FDB)被构造成包含用于在节点对之间转发单播和多播数据帧的转发条目(也称为转发状态)(框470)。这些数据帧将在它们的报头中包含I-SID以标识由网络提供的对应服务。对于边缘节点,可通过指向在生成树根的I-SID多播地址以及边缘节点的节点单播主干MAC(B-MAC)地址生成FDB条目。对于根节点,可通过将多播条目交叉连接到边缘节点对以及根节点的节点单播B-MAC生成FDB条目。对于生成树的每个根重复框430到框470的操作。
图5示出了一个根节点(例如节点A)出故障(由“F”指示)的图2的网络实施例。通过使用图3中描述的分离的打破平局机制,在节点A上的数据转发的工作载荷可被移位到具有B-VID 1、5和9的第二最低XOR结果(二进制0001)的其它节点。因此,节点B、C和D分别变成B-VID 1、5和9的生成树根。工作载荷的移位不改变由边缘节点使用的多播寻址。从而,边缘节点w、x、y和z使用802.1ah“任何源”多播MAC(*,G)寻址(为了简化也称为(*,G)寻址)继续向其它边缘节点转发多播数据帧。
图6-11图示了一个或多个链路出故障的示例三级折叠Clos网络中的若干情形。当生成如在图4的框450中所描述的生成树时可检测到链路故障,其中Dijkstra算法用于计算从生成树根到边缘节点的路径。如在图4的框450中所示的,生成树中的三跳路径指示链路故障和受影响的节点。要理解,其它方法也可用于检测三级折叠Clos网络中的节点或链路故障的后果。
图6示出了节点A与节点W之间的链路发生故障的情形。当计算节点A的生成树时,节点w显现为由三跳路径服务。在标识链路故障时,对于使用出故障链路的每个B-VID,构造在节点w上生根的最短路径优先(SPF)树。经由链路状态路由协议,诸如IS-IS,每个节点学习网络中的拓扑信息,并使用此信息计算SPF树。在一个实施例中,每个节点可使用Dijkstra算法计算SPF树。这些节点基于拓扑信息构造相同的网络视图。
在一个实施例中,SPF树的构造包含使用之前描述的分离的打破平局机制确定经过哪个根节点。要指出,这些SPF树的根是网络的边缘节点;网络的根节点变成SPF树的经过节点。在构造SPF树之后,边缘节点标识由B-VID的边缘-边缘节点对共享的I-SID(即公共I-SID)的交叉点。基于所标识的边缘节点对,每个节点填充其FDB以便随后数据转发。
在图6的示例中,为B-VID 1、5和9构建的SPF显示为分别用v1、v5和v9标记的链路。连接到具有标记v1/5/9的节点x、y和z的链路是无故障的,并且因此可继续由节点x、y和z用于使用(*,G)寻址在它们自己中间转发数据。然而,为了与节点w通信,节点x、y和z需要使用用v1、v5和v9标记的SPF树链路。从而,在一个实施例中,边缘节点使用混合多播寻址:节点x、y和z使用单播或802.1aq“源特定”多播MAC(S,G)寻址(为了简化也称为(S,G)寻址)以将多播数据转发到节点w,扩充在x、y和z之间使用的连接性;同时节点w使用802.1ah多播MAC(*,G)寻址将多播数据转发到节点x、y和z。这是因为来自节点w的多播需要到达所有对等体,并且来自x、y和z的多播需要截然不同的处理以到达节点w,与它们如何向彼此多播分开进行。
相同原理应用于图7-11中示出的如下每一个示例;也就是说,当边缘节点仅通过三跳路径就可从生成树到达时,计算来自此节点的SPF树,使用(*,G)寻址从此节点转发多播数据,并使用单播或(S,G)寻址将多播数据转发到此节点。
图7图示了连接到节点w的两个链路出故障的另一情形。在此情形下,当B-VID 1的SPF树(其在节点w上生根)不再能经过节点A和B时,节点C被用作经过节点(例如通过打破平局)。B-VID 5和B-VID 9的SPF树仍能分别经过节点C和D。v1/5/9链路上的寻址方案仍是(*,G)寻址。然而,为了与节点w通信,节点x、y和z需要使用用v1/5(标识v1和v5)和v9标记的SPF树链路。从而,在一个实施例中,节点x、y和z使用单播或(S,G)寻址将多播数据转发到节点w,而节点w使用(*,G)寻址将多播数据转发到节点x、y和z。
图8图示了连接到节点A的两个链路出故障的另一情形。在此情形下,节点y和z仍能在它们自己之间经由v1/5/9链路使用802.1ah多播MAC(*,G)寻址通信。然而,为了与节点w和x通信,节点y和z需要使用用v1、v5和v9标记的SPF树链路。从而,在一个实施例中,节点y和z使用(S,G)寻址将多播数据帧转发到节点w和x,因为存在具有到公共根的出故障邻域的多个节点,而节点w和x使用802.1ah多播MAC(*,G)寻址向彼此以及节点y和z多播。
图9图示了节点A与w之间的第一链路出故障并且节点B与x之间的第二链路也出故障的另一情形。当计算节点A的生成树时,节点w显现为由三跳路径服务。因为B-VID 1的SPF树不再具有用于节点w与节点x通信的工作路径(在节点B与x之间),因此这个出故障路径可由路径w-C-x替换,并且这被确定为计算来自节点w的经过多于一个根的SPF树的结果。到具有标记v1/5/9的节点x、y和z的链路是无故障的,并且因此可继续由节点x、y和z用于使用(*,G)寻址在它们自己中间转发数据。然而,为了与节点w通信,节点x、y和z需要使用用v1、v5和v9标记的SPF树链路。从而,在一个实施例中,节点x、y和z使用单播或(S,G)寻址将多播数据转发到节点w,而节点w使用(*,G)寻址将多播数据转发到节点x、y和z。
图10图示了连接到节点w的四个链路当中三个出故障的另一情形。在此情形下,到具有标记v1/5/9的节点x、y和z的链路是无故障的,并且因此可继续由节点x、y和z用于使用802.1ah多播MAC(*,G)寻址在它们自己中间转发数据。然而,与节点w的通信经由连接在节点w与节点D之间的唯一工作链路。从而,用于B-VID 1、5和9(用v1/5/9标记)的在节点w上生根的三个SPF树全都经过节点D。为了与节点w通信,节点x、y和z需要使用用v1/5/9标记的SPF树链路。从而,在一个实施例中,节点x、y和z使用单播或(S,G)寻址将多播数据转发到节点w,而节点w使用(*,G)寻址将多播数据转发到节点x、y和z。
图11图示了连接到节点A的四个链路当中三个出故障的另一情形。在此情形下,与节点w的通信经由连接到节点w的唯一工作链路(如所示用v1/5/9标记的最左链路)。A-z之间的链路未被使用,因为节点z不能使用此链路到达任何其它边缘节点。从而,根节点A是从网络“实际”切断的,因为对于有用数据转发,它不能服务于任何边缘节点。这种情形使用四个多播寻址:节点w、x和y使用802.1aq多播MAC(S,G)寻址,并且节点z使用802.1ah多播MAC(*,G)寻址。此外,还存在一个在节点A上生根的生成树,并且三个分离水平计算分别在节点w、x和y上生根。
图12是图示当三级折叠Clos网络中发生故障时用于数据帧转发的方法1200的流程图。在一个实施例中,方法1200开始于每个节点计算并安装用于在根节点上生根的生成树的转发状态(框1210),其中当网络中没有故障时,生成树中的数据转发利用多播路径的802.1ah多播地址。当检测到(例如通过上面在图4中描述的Dijkstra算法)给定边缘节点具有到给定根节点的出故障连接时(框1220),对于在给定边缘节点上生根并使用出故障连接的B-VID集合中的每个,构造在给定边缘节点上生根的SPF树(框1230)。标识由给定边缘节点和其它边缘节点共享的公共I-SID,并且此信息用于填充每个节点中的FDB,用于被标识成具有共同与B-VID集合关联的服务的边缘节点对的给定边缘节点与其它边缘节点之间的成对连接性(框1240)。单播状态被安装在FDB中(框1250)。使用根据业务是指向给定边缘节点还是来自给定边缘节点选择的多播寻址的混合在FDB中安装多播状态(框1260)。节点然后根据FDB转发单播和多播数据(框1270)。根据混合多播寻址转发数据,其中给定边缘节点经由SPF树使用802.1ah多播MAC寻址将数据帧转发到其它边缘节点,并且其它边缘节点经由SPF树使用单播或802.1aq多播MAC寻址将数据帧转发到给定边缘节点。
上面参考图2-12描述的方法400和1200可被进一步优化。在图2的示例中,对于B-VID 1-12生成12个生成树(仅示出了3个生成树)。因为实际上存在4个根,因此4个生成树计算的结果可被再用。类似地,在首先使两个链路出故障的情形(图7)和首先使三个链路出故障(图10)的情形下,从节点w的计算可被再用。
对于更小网络,还有可能设想路由系统的某种程度的预先计算以及用更简单内部系统管理功能替换,或者作为单独系统,或者集成到节点中;例如,由8个端口交换器构建的Clos网络具有32个链路。在将B-VID映射到哪个根以及使用什么寻址;例如表中的大约40个条目(对232个可能的网络状态)的所有单个链路和节点故障情形之前构造稀疏表。对于边缘节点,可通过指向在正确根节点的转发条目来生成FDB条目。对于根节点,可通过确定每个节点对I-SID兴趣的交叉点并相应地填充根FDB来生成FDB条目。
以上描述应对故障时的载荷扩散,使得移置的载荷尽可能同样地在存活的节点上共享。然而,平均分布载荷可能不总是期望的,因为所有顾客都将从具有非阻断服务到具有阻断服务的转变。在一个实施例中,向VLAN的子集(由生成树的相应B-VID标识)给出优先权以在故障情形下保护非阻断。在生成树的优先化集合外部的故障未扩散在它们的集合内。它们的集合内的故障被扩散到它们的集合外部。用这种方式,不管是否受到故障直接影响,都可保证顾客子集非阻断行为。
进一步说,也可开发当前业务模式的知识。假定,业务被均匀分布在数据中心(例如充分利用的网络)中。可开发未充分利用的网络的算法。例如,未充分利用的树可在故障时得到移位到它们的业务的更大份额。因此,网络不是真正非阻断的,仅是基于当前提供的载荷的非阻断。
进一步说,可无命中地(即没有数据丢失)供应备份节点/路径布置的改变。在给定系统ID集合中有故障时作为第二或第三候选的节点的位置可经由改变其在那个系统ID集合中的系统ID来修改。管理系统可配置和调整这些系统ID以修改如何移位业务。给定当前转发模式基于最低XOR平局打破器值,下一最佳的层级可在服务中修改,而不影响转发模式。
图13图示了可用于实现本发明实施例的三级折叠Clos网络元件的示例。网络元件310可以是上面描述的三级折叠Clos网络中的任何节点(边缘节点或根节点)。
如图13中所示,网络元件310包含数据平面,数据平面包含交换结构330、若干数据卡335、接收器(Rx)接口340、传送器(Tx)接口350和I/O端口355。Rx接口340和Tx接口350通过I/O端口355与网络内的链路接口。如果网络元件是边缘节点,则I/O端口355还包含用于从网络外部/向网络外部提供通信的若干面向用户的端口。数据卡335执行在通过接口340和350接收的数据上的功能,并且交换结构330在数据卡/I/O卡之间交换数据。
网络元件310还包含控制平面,控制平面包含一个或多个网络处理器315,其含有配置成处置数据业务的路由、转发和处理的控制逻辑。网络处理器315还配置成执行用于生成树根选择的分离的平局打破器,计算并安装生成树的转发状态,在发生链路故障时计算SPF树,填充用于数据转发的FDB 326。在控制逻辑中也可实现其它过程。
网络元件310还包含存储器320,存储器320存储FDB 326和拓扑数据库322。拓扑数据库322存储网络拓扑的网络模型或类似表示,包含网络的链路状态。FDB 326将网络元件310的转发状态存储在一个或多个转发表中,转发表指示将进入到网络元件310的业务转发到哪里。
在一个实施例中,网络元件310可耦合到管理系统380。在一个实施例中,管理系统380包含耦合到存储器370的一个或多个处理器360。处理器360包含逻辑以配置网络元件310的系统ID和操作,包含更新系统ID以便由此将网络中的工作分布移位,指配优先权给生成树的子集,使得至少对于这些生成树保留网络的非阻断属性。在一个实施例中,管理系统380可执行计算每个节点的转发表并且然后将转发表下载到节点的系统管理功能。系统管理功能是可选的(如虚线所指示的);如在备选实施例中,分布式路由系统可执行每个节点计算其转发表的计算。
本文描述的实施例的优点之一是:对于网络中总数N个节点的网络,使用适用于生成树根选择的分离的平局打破器意味着在根故障时大大减小了计算载荷,使得计算复杂性是:(存活的根数)xO(NlnN)。这是优于O(N2lnN)的802.1aq复杂性的显著改进。对于本文描述的实施例,计算复杂性在无故障和有故障情形下都减小了。
使用水平分离生根的树解决链路故障情形还降低了计算载荷,使得复杂性是(根数)xO(NlnN)+(邻近出故障链路的边缘数)xO(NlnN)。相比较,802.1aq的标称复杂性是O(N2lnN)。再次,对于本文描述的实施例,计算复杂性在无故障和有故障情形下都减小了。
进一步说,使用分离水平生根的树仅意味着向邻近出故障链路的另一边缘节点(例如图6-11的示例中的节点w)发送的边缘节点需要向它们的正常生成树(*,G)并向到这个其它边缘节点(例如节点w)的单播路径进行双播;同时这个其它边缘节点自身(例如节点w)可继续使用(*,G)寻址。
使用用于根选择的节点平局打破器值意味着根不需要通过其它手段明确标识,因此很少被误配置。
上面描述的功能可实现为程序指令集合,指令存储在计算机可读存储器中,并在与网络元件关联的计算机平台上的一个或多个处理器上执行。然而,本领域技术人员将明白,实施本文描述的所有逻辑可使用分立组件、集成电路(诸如专用集成电路(ASIC))、结合可编程逻辑器件(诸如线程可编程门阵列(FPGA))或微处理器使用的可编程逻辑、状态机或包含其任何组合的任何其它器件。可编程逻辑可以暂时或永久固定在有形介质(诸如只读存储器芯片、计算机存储器、盘或其它存储介质)中。可编程逻辑也可固定在载波中包含的计算机数据信号中,允许可编程逻辑通过接口(诸如计算机总线或通信网络)传送。所有此类实施例都意图落在本发明的范围内。
已经参考图1、2和13的示范实施例描述了图4和12的流程图的操作。然而,应该理解,图4和12的图的操作可由不同于参考图1、2和13讨论的实施例的本发明实施例执行,并且参考图1、2和13讨论的实施例可执行与参考图4和12的图讨论的操作不同的操作。虽然图4和12的图示出了由本发明某些实施例执行的具体操作次序,但应该理解,此类次序是示范性的(例如备选实施例可按不同次序执行操作,组合某些操作,交叠某些操作等)。
本发明的不同实施例也可使用软件、固件和/或硬件的不同组合来实现。从而,在附图中示出的技术可使用在一个或多个电子装置(例如终端站、网络元件)上存储和执行的代码和数据实现。此类电子装置使用计算机可读介质诸如非暂时性计算机可读存储介质(例如磁盘、光盘、随机存取存储器、只读存储器、闪存装置、相变存储器)和暂时性计算机可读传输介质(例如电、光、声或其它形式传播信号——诸如载波、红外信号、数字信号)存储和传递(在内部和/或通过网络与其它电子装置)代码和数据。此外,此类电子装置通常包含耦合到一个或多个其它组件诸如一个或多个存储装置(非暂时性机器可读存储介质)、用户输入/输出装置(例如键盘、触摸屏和/或显示器)以及网络连接的一个或多个处理器的集合。处理器集合与其它组件的耦合通常通过一个或多个总线和桥(也称为总线控制器)。从而,给定电子装置的存储装置通常存储代码和/或数据以便在那个电子装置的一个或多个处理器的集合上执行。
本文所使用的网络元件(例如路由器、交换机、桥、控制器)是一件连网设备,包含以通信方式互连网络上其它设备(例如其它网络元件、终端站)的硬件和软件。一些网络元件是为多个连网功能(例如路由、桥接、交换、层2聚合、会话边界控制、服务质量和/或订户管理)提供支持和/或为多个应用服务(例如数据、语音和视频)提供支持的“多服务网络元件”。订户终端站(例如服务器、工作站、膝上型电脑、上网本、掌上电脑、移动电话、智能电话、多媒体电话、通过因特网协议的语音(VOIP)电话、用户设备、终端、便携式媒体播放器、GPS单元、游戏系统、机顶盒)访问通过因特网提供的内容/服务和/或在叠加在因特网上(例如通过因特网遂穿)的虚拟私用网(VPN)上提供的内容/服务。内容和/或服务通常由属于服务或内容提供商的一个或多个终端站(例如服务器终端站)或参与对等服务的终端站提供,并且例如可包含公用网页(例如免费内容、店面、搜索服务)、私用网页(例如提供电子邮件服务的用户名/密码访问的网页)和/或VPN上的公司网络等。通常,订户终端站(例如通过(有线或无线)耦合到接入网的客户室内设备)耦合到边缘网络元件,边缘网络元件(例如通过一个或多个核心网络元件)耦合到其它边缘网络元件,其它边缘网络元件耦合到其它终端站(例如服务器终端站)。
虽然本发明已经依据几个实施例进行了描述,但本领域技术人员将认识到,本发明不限于所描述的实施例,可用在所附权利要求书的精神和范围内的修改和变化来实践本发明。从而,描述被视为说明性的而非限制性的。
Claims (27)
1.一种用于在三级折叠Clos网络内在所述网络中有故障的情况下以计算复杂性、网络管理、多播寻址和载荷重新分布的改进效率进行以太网路由的方法,其中所述网络包括各表示网络元件的多个节点,所述节点包含根节点和边缘节点,每个边缘节点包括面向用户的输入和输出端口集合,并且每个根节点包括用于互连所述边缘节点的端口集合,所述方法包括如下步骤:
由所述网络中的每个节点计算并安装用于在所述根节点上生根的生成树的转发状态,其中当所述网络中没有故障时,所述生成树中的数据转发利用多播路径的任何源地址;
将所述边缘节点中的给定边缘节点标识为具有到所述根节点中的给定根节点的出故障连接;
由所述网络中的每个节点或系统管理功能将在所述给定边缘节点上生根的最短路径优先SPF树构造为到所述给定边缘节点的连接性的原型,对于在所述给定根节点上生根并使用所述出故障连接的所述生成树的主干虚拟局域网标识符B-VID集合中的每个标识符构造所述SPF树,其中所述SPF树充当到所述B-VID的所述给定边缘节点的单播和多播连接性的原型;
填充标识成具有共同与所述B-VID集合关联的服务的边缘节点对的所述给定边缘节点与其它边缘节点之间成对连接性的过滤数据库;
在所述过滤数据库中安装单播状态;
使用多播寻址的混合在所述过滤数据库中安装多播状态,所述多播寻址根据业务是指向所述给定边缘节点还是来自所述给定边缘节点来选择;以及
根据所述过滤数据库转发所述网络中的单播和多播数据。
2.如权利要求1所述的方法,其中转发数据帧的步骤进一步包括如下步骤:
使用802.1ah多播媒体访问控制MAC寻址将数据帧的第一集合从所述给定边缘节点转发到所述其它边缘节点以到达具有相同服务标识符的群中的所有所述边缘节点;以及
使用单播或802.1aq多播MAC寻址将数据帧的第二集合从每一个所述其它边缘节点转发到所述给定边缘节点,其中所述单播和所述802.1aq多播MAC寻址允许到所述群中的所述边缘节点的子集而不是所有所述边缘节点的通信。
3.如权利要求1所述的方法,进一步包括如下步骤:
当所述节点的系统ID由与所述生成树关联的掩码值变换时,为每一个所述生成树选择在所述网络中的所述节点当中具有最低系统ID的根节点。
4.如权利要求3所述的方法,进一步包括:
由每个节点接收多个系统ID以便在生成树根选择期间打破平局,使得出故障的根节点的工作载荷被分布在多个其它根节点上。
5.如权利要求1所述的方法,其中计算和安装的步骤进一步包括如下步骤:
使用Dijkstra算法对于每个根节点计算其到所述边缘节点的路径,以形成所述网络中给定B-VID的生成树;
从所述生成树剪除到所述边缘节点具有多于一跳的所述路径;以及
将所述生成树中的三跳路径标识为在所述三跳路径故障的末端的边缘节点与所述根节点之间具有链路故障。
6.如权利要求1所述的方法,进一步包括如下步骤:
标识与相同服务标识符关联的边缘-边缘节点对;以及
基于标识的边缘-边缘节点对,为所述网络中的每个节点构造所述过滤数据库。
7.如权利要求6所述的方法,其中构造所述过滤数据库的步骤进一步包括如下步骤:
由每个边缘节点填充所述过滤数据库,使得独立的服务标识符I-SID多播地址指向生成树的根和所述边缘节点的节点单播地址;以及
由每个根节点填充所述过滤数据库以将所述过滤数据库中的多播条目交叉连接到所述标识的边缘-边缘节点对和所述根节点的所述节点单播地址。
8.如权利要求1所述的方法,进一步包括如下步骤:
将所述生成树的子集标识为具有优于所述网络中其它生成树的优先级;以及
将所述子集内的故障扩散到所述子集外部,而不将所述子集外部的故障扩散到所述子集中。
9.如权利要求1所述的方法,其中所述网络中的所述故障包括如下:出故障的根节点;部分切断的根节点,其中连接所述部分切断的根节点的多于一个链路出故障;具有单个链路存活的实际切断的根节点;部分切断的边缘节点,其中连接所述部分切断的边缘节点的多于一个链路出故障;或者多个出故障的链路,各连接到不同根节点和不同边缘节点。
10.如权利要求1所述的方法,其中所述三级折叠Clos网络表示数据中心内的网络。
11.一种充当三级折叠Clos网络的边缘节点的网络元件,其在所述网络中有故障的情况下以计算复杂性、网络管理、多播寻址和载荷重新分布的改进效率使用以太网路由,所述边缘节点包括:
面向用户的输入和输出端口的第一集合;
耦合到多个根节点的输入和输出端口的第二集合;
存储器,用于存储过滤数据库;以及
网络处理器,其耦合到所述存储器、面向用户的输入和输出端口的所述第一集合、输入和输出端口的所述第二集合,所述网络处理器配置成:
计算并安装用于在所述根节点上生根的生成树的转发状态;
构造在给定边缘节点上生根的最短路径优先SPF树作为到所述给定边缘节点的连接性的原型,对于在给定根节点上生根并使用出故障连接的所述生成树的主干虚拟局域网标识符B-VID集合中的每个标识符构造所述SPF树,其中所述SPF树充当到所述B-VID的所述给定边缘节点的单播和多播连接性的原型;
填充标识成具有共同与所述B-VID集合关联的服务的边缘节点对的所述给定边缘节点与其它边缘节点之间成对连接性的过滤数据库;
在所述过滤数据库中安装单播状态;
使用多播寻址的混合在所述过滤数据库中安装多播状态,所述多播寻址根据业务是指向所述给定边缘节点还是来自所述给定边缘节点来选择;以及
根据所述过滤数据库转发所述网络中的单播和多播数据。
12.如权利要求11所述的网络元件,其中所述网络元件耦合到管理系统,其中所述管理系统为每个B-VID而不是所述网络中的每个节点构造所述SPF树。
13.如权利要求11所述的网络元件,其中所述网络处理器进一步配置成:
使用802.1ah多播媒体访问控制MAC寻址将数据帧的第一集合从所述给定边缘节点转发到所述其它边缘节点,以到达具有相同服务标识符的群中的所有边缘节点;以及
使用单播或802.1aq多播MAC寻址将数据帧的第二集合从每一个所述其它边缘节点转发到所述给定边缘节点,其中所述单播和所述802.1aq多播MAC寻址允许到所述群中的所述边缘节点的子集而不是所有所述边缘节点的通信。
14.如权利要求11所述的网络元件,其中所述网络处理器进一步配置成:
当所述根节点的系统ID由与所述生成树关联的掩码值变换时,为每一个所述生成树选择在所述根节点当中具有最低系统ID的根节点。
15.如权利要求14所述的网络元件,其中每个节点接收多个系统ID以便在生成树根选择期间打破平局,使得出故障的根节点的工作载荷被分布在多个其它根节点上。
16.如权利要求11所述的网络元件,其中所述网络处理器进一步配置成:
使用Dijkstra算法对于每个根节点计算其到所述边缘节点的路径,以形成所述网络中给定B-VID的生成树;
从所述生成树剪除到所述边缘节点具有多于一跳的所述路径;以及
将所述生成树中的三跳路径标识为到达在它们与所述根节点的邻域上具有链路故障的节点。
17.如权利要求11所述的网络元件,其中所述网络中的故障包括如下:出故障的根节点;部分切断的根节点,其中连接所述部分切断的根节点的多于一个链路出故障;具有单个链路存活的实际切断的根节点;部分切断的边缘节点,其中连接所述部分切断的边缘节点的多于一个链路出故障;或者多个出故障的链路,各连接到不同根节点和不同边缘节点。
18.如权利要求11所述的网络元件,其中每个根节点是主干核心桥BCB,并且每个边缘节点是主干边缘桥BEB。
19.如权利要求11所述的网络元件,其中所述三级折叠Clos网络表示数据中心内的网络。
20.一种三级折叠Clos网络的系统,其在所述网络中有故障的情况下以计算复杂性、网络管理、多播寻址和载荷重新分布的改进效率使用以太网路由,所述系统包括:
多个边缘节点,每一个所述边缘节点都包括面向用户的输入和输出端口集合;以及
多个根节点,每一个所述根节点都包括用于互连所述多个边缘节点的端口集合,
其中每一个所述根节点和边缘节点包括:
存储器,用于存储过滤数据库;以及
网络处理器,其耦合到所述存储器,所述网络处理器配置成:
计算并安装用于在所述根节点上生根的生成树的转发状态;
构造在给定边缘节点上生根的最短路径优先SPF树作为到所述给定边缘节点的连接性的原型,对于在给定根节点上生根并使用出故障连接的所述生成树的主干虚拟局域网标识符B-VID集合中的每个标识符构造所述SPF树,其中所述SPF树充当到所述B-VID的所述给定边缘节点的单播和多播连接性的原型;
填充标识成具有共同与所述B-VID集合关联的服务的边缘节点对的所述给定边缘节点与其它边缘节点之间成对连接性的过滤数据库;
在所述过滤数据库中安装单播状态;
使用多播寻址的混合在所述过滤数据库中安装多播状态,所述多播寻址根据业务是指向所述给定边缘节点还是来自所述给定边缘节点来选择;以及
根据所述过滤数据库转发所述网络中的单播和多播数据。
21.如权利要求20所述的系统,进一步包括:
管理系统,其为每个B-VID而不是所述网络中的每个节点构造所述SPF树。
22.如权利要求20所述的系统,其中所述网络处理器进一步配置成:
使用802.1ah多播媒体访问控制MAC寻址将数据帧的第一集合从所述给定边缘节点转发到所述其它边缘节点,以到达具有相同服务标识符的群中的所有边缘节点;以及
使用单播或802.1aq多播MAC寻址将数据帧的第二集合从每一个所述其它边缘节点转发到所述给定边缘节点,其中所述单播和所述802.1aq多播MAC寻址允许到所述群中的所述边缘节点的子集而不是所有所述边缘节点的通信。
23.如权利要求20所述的系统,其中所述网络处理器进一步配置成:当所述根节点的系统ID由与所述生成树关联的掩码值变换时,为每一个所述生成树选择在所述根节点当中具有最低系统ID的根节点。
24.如权利要求23所述的系统,进一步包括:
管理系统,其给每个节点配置用于在生成树根选择期间打破平局的多个系统ID,使得出故障的根节点的工作载荷被分布在多个其它根节点上。
25.如权利要求20所述的系统,其中所述网络中的故障包括如下:出故障的根节点;部分切断的根节点,其中连接所述部分切断的根节点的多于一个链路出故障;具有单个链路存活的实际切断的根节点;部分切断的边缘节点,其中连接所述部分切断的边缘节点的多于一个链路出故障;或者多个出故障的链路,各连接到不同根节点和不同边缘节点。
26.如权利要求20所述的系统,其中每个根节点是主干核心桥BCB,并且每个边缘节点是主干边缘桥BEB。
27.如权利要求20所述的系统,其中所述三级折叠Clos网络表示数据中心内的网络。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/458675 | 2012-04-27 | ||
US13/458,675 US8848509B2 (en) | 2012-04-27 | 2012-04-27 | Three stage folded Clos optimization for 802.1aq |
PCT/IB2013/052862 WO2013160786A1 (en) | 2012-04-27 | 2013-04-11 | Three stage folded clos optimization for 802.1aq |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104380672A CN104380672A (zh) | 2015-02-25 |
CN104380672B true CN104380672B (zh) | 2017-12-15 |
Family
ID=48577166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380034116.0A Active CN104380672B (zh) | 2012-04-27 | 2013-04-11 | 用于802.1aq的三级折叠Clos优化 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8848509B2 (zh) |
EP (1) | EP2842278B1 (zh) |
JP (1) | JP6117911B2 (zh) |
KR (1) | KR102123035B1 (zh) |
CN (1) | CN104380672B (zh) |
IN (1) | IN2014DN09385A (zh) |
WO (1) | WO2013160786A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136917B (zh) * | 2010-07-14 | 2013-04-17 | 华为技术有限公司 | 以太网组播的方法及装置 |
TWI474681B (zh) * | 2012-05-11 | 2015-02-21 | Hope Bay Technologies Inc | 雲端系統中的虛擬機器連線方法 |
US20140086100A1 (en) * | 2012-09-26 | 2014-03-27 | Avaya, Inc. | Multi-Chassis Cluster Synchronization Using Shortest Path Bridging (SPB) Service Instance Identifier (I-SID) Trees |
US9007892B2 (en) * | 2012-10-26 | 2015-04-14 | Futurewei Technologies, Inc. | Apparatus and method to find partially disjoint routes for dual fiber-cuts |
US9860081B2 (en) * | 2013-06-18 | 2018-01-02 | Extreme Networks, Inc. | General user network interface (UNI) multi-homing techniques for shortest path bridging (SPB) networks |
US9565027B2 (en) * | 2013-08-23 | 2017-02-07 | Futurewei Technologies, Inc. | Multi-destination traffic control in multi-level networks |
US9887914B2 (en) * | 2014-02-04 | 2018-02-06 | Fastly, Inc. | Communication path selection for content delivery |
US9900217B2 (en) * | 2014-03-26 | 2018-02-20 | Arista Networks, Inc. | Method and system for network topology enforcement |
US9654401B2 (en) | 2014-03-30 | 2017-05-16 | Juniper Networks, Inc. | Systems and methods for multipath load balancing |
US9407555B2 (en) * | 2014-03-31 | 2016-08-02 | Juniper Networks, Inc. | Systems and methods for load balancing multicast traffic |
RU2580100C2 (ru) * | 2014-05-16 | 2016-04-10 | Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук | Обобщенные неблокируемые двухкаскадные сети клоза |
US10333725B2 (en) | 2016-03-23 | 2019-06-25 | International Business Machines Corporation | Overlay network with optimized packet flooding |
KR102161422B1 (ko) * | 2016-11-15 | 2020-10-05 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 서비스 패킷 송신 방법 및 노드 디바이스 |
EP3494675B1 (en) * | 2017-02-15 | 2020-02-19 | Maven Wireless Sweden AB | Distributed antenna system providing redundancy |
KR102524239B1 (ko) | 2017-02-23 | 2023-04-24 | 메이븐 와이어리스 스웨덴 에이비 | Das에서 집합 캐리어들의 라우팅 |
CN108833271B (zh) * | 2018-05-28 | 2021-02-09 | 全球能源互联网研究院有限公司 | 一种电网广域控制业务通信路径选择方法及服务器 |
US11050679B1 (en) * | 2019-06-28 | 2021-06-29 | Juniper Networks, Inc. | Defining non-forwarding adjacencies in bipartite networks, such as Clos newtorks, having a level 2 backbone and level 1 nodes |
US11483238B2 (en) * | 2019-10-14 | 2022-10-25 | Cisco Technology, Inc. | Centralized path computation for information-centric networking |
US11770332B2 (en) * | 2021-02-05 | 2023-09-26 | Extreme Networks, Inc. | MAC-based redistribution policy for multi-area networks |
CN114401137B (zh) * | 2022-01-14 | 2023-09-08 | 中国人民解放军国防科技大学 | 基于对偶算法的备份网络最短路阻断方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101310482A (zh) * | 2005-10-11 | 2008-11-19 | 艾利森电话股份有限公司 | 生成生成树的方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5684800A (en) | 1995-11-15 | 1997-11-04 | Cabletron Systems, Inc. | Method for establishing restricted broadcast groups in a switched network |
US6084858A (en) | 1997-01-29 | 2000-07-04 | Cabletron Systems, Inc. | Distribution of communication load over multiple paths based upon link utilization |
US20050111356A1 (en) * | 2003-11-25 | 2005-05-26 | Whittaker Stewart Mark A. | Connection controller |
ATE544266T1 (de) * | 2005-06-10 | 2012-02-15 | Partec Cluster Competence Ct Gmbh | Datenkommunikationsmethode und -system mit virtuellen ports |
US20070002770A1 (en) | 2005-06-30 | 2007-01-04 | Lucent Technologies Inc. | Mechanism to load balance traffic in an ethernet network |
US7756035B2 (en) | 2006-01-31 | 2010-07-13 | Nortel Networks Limited | Planning routes and allocating identifiers to routes in a managed frame-forwarding network |
US7911944B2 (en) | 2007-12-26 | 2011-03-22 | Nortel Networks Limited | Tie-breaking in shortest path determination |
WO2010104434A1 (en) | 2009-03-12 | 2010-09-16 | Telefonaktiebolaget L M Ericsson (Publ) | Global provisioning of zero-bandwidth traffic engineering label switched paths |
US8509618B2 (en) * | 2009-05-06 | 2013-08-13 | Ciena Corporation | Photonic routing systems and methods for loop avoidance |
US8248925B2 (en) | 2009-09-08 | 2012-08-21 | Rockstar Bidco, LP | Method and apparatus for selecting between multiple equal cost paths |
CN102549982A (zh) * | 2009-10-02 | 2012-07-04 | 瑞典爱立信有限公司 | 在计算机网络中控制数据转发的技术 |
KR20130060170A (ko) | 2010-03-26 | 2013-06-07 | 록스타 비드코, 엘피 | 라우팅형 이더넷 네트워크에서의 분산형 장애 복구 |
US9210071B2 (en) | 2010-08-16 | 2015-12-08 | Telefonaktiebolaget L M Ericsson (Publ) | Automated traffic engineering for fat tree networks |
US8553584B2 (en) | 2010-09-08 | 2013-10-08 | Telefonaktiebolaget L M Ericsson (Publ) | Automated traffic engineering for 802.1AQ based upon the use of link utilization as feedback into the tie breaking mechanism |
US9813257B2 (en) * | 2010-09-10 | 2017-11-07 | Extreme Networks, Inc. | Access network dual path connectivity |
US8949385B2 (en) * | 2011-09-27 | 2015-02-03 | Avaya, Inc. | Method and apparatus for resolving conflicting unicast advertisements in a transport network |
-
2012
- 2012-04-27 US US13/458,675 patent/US8848509B2/en active Active
-
2013
- 2013-04-11 CN CN201380034116.0A patent/CN104380672B/zh active Active
- 2013-04-11 JP JP2015507625A patent/JP6117911B2/ja active Active
- 2013-04-11 WO PCT/IB2013/052862 patent/WO2013160786A1/en active Application Filing
- 2013-04-11 KR KR1020147033118A patent/KR102123035B1/ko active IP Right Grant
- 2013-04-11 IN IN9385DEN2014 patent/IN2014DN09385A/en unknown
- 2013-04-11 EP EP13727359.5A patent/EP2842278B1/en not_active Not-in-force
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101310482A (zh) * | 2005-10-11 | 2008-11-19 | 艾利森电话股份有限公司 | 生成生成树的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104380672A (zh) | 2015-02-25 |
KR20150013612A (ko) | 2015-02-05 |
JP2015518345A (ja) | 2015-06-25 |
JP6117911B2 (ja) | 2017-04-19 |
US8848509B2 (en) | 2014-09-30 |
EP2842278A1 (en) | 2015-03-04 |
KR102123035B1 (ko) | 2020-06-15 |
EP2842278B1 (en) | 2016-03-09 |
WO2013160786A1 (en) | 2013-10-31 |
US20130286817A1 (en) | 2013-10-31 |
IN2014DN09385A (zh) | 2015-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104380672B (zh) | 用于802.1aq的三级折叠Clos优化 | |
CN104471899B (zh) | 通过ietf evpn的802.1aq支持 | |
CN102037685B (zh) | 通过链路状态协议控制的以太网的ip转发 | |
EP2092692B1 (en) | Method for exchanging routing information and the establishment of connectivity across multiple network areas | |
CN104937885B (zh) | 用于结构交换机的全局vlan | |
CN101909001B (zh) | 使用最短路径桥接在计算机网络中转发帧 | |
CN102150148B (zh) | 层2拓扑中针对单播帧和多播帧的差别化服务 | |
CN104396197B (zh) | 在802.1aq网络中使用分离的平局打破器在等成本最短路径之间选择 | |
ES2588739T3 (es) | Método, equipo y sistema para mapear una instancia de servicio | |
CN101960786B (zh) | 使用链路状态协议受控以太网网络的mpls p节点替换 | |
CN106170952A (zh) | 用于在数据网络中部署最大冗余树的方法和系统 | |
CN105393511B (zh) | 一种交换机模式切换方法、设备及系统 | |
CN101785257A (zh) | 用于交换机和路由器的软件控制平面 | |
CN102217238A (zh) | 应用于mpls网络的服务实例 | |
CN105991435B (zh) | 用于获取端口路径的方法及装置 | |
CN101667954A (zh) | 多层虚拟专用局域网业务的网络及其数据处理方法 | |
CN108141392A (zh) | 伪线负载分担的方法和设备 | |
CN105763439B (zh) | 一种多链接透明互联网络中数据中心的互联方法及装置 | |
CN106105114A (zh) | 多归属is‑is前缀的更好替换路径 | |
CN104919767A (zh) | 用于实现在虚拟专用lan服务网络上的最短路径桥接mac模式支持的方法和装置 | |
CN101087240B (zh) | 最短路径优先协议中的路由选择方法及其装置 | |
CN104426778B (zh) | 路由更新方法和路由设备 | |
CN102710522B (zh) | 多链接透明互联网络中rpf规则的配置方法和装置 | |
CN103501275B (zh) | 一种邻居多链路处理方法及装置 | |
CN103685031B (zh) | 一种报文转发装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |