CN105122744B - 通过按需路径更新的msdc扩展 - Google Patents
通过按需路径更新的msdc扩展 Download PDFInfo
- Publication number
- CN105122744B CN105122744B CN201480005024.4A CN201480005024A CN105122744B CN 105122744 B CN105122744 B CN 105122744B CN 201480005024 A CN201480005024 A CN 201480005024A CN 105122744 B CN105122744 B CN 105122744B
- Authority
- CN
- China
- Prior art keywords
- interchanger
- index
- grouping
- port
- path
- 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/02—Topology update or discovery
-
- 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/26—Route discovery packet
-
- 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/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/58—Association of routers
- H04L45/583—Stackable routers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
Abstract
在一个实施例中,业务流的原始分组的拷贝在云交换机的输入叶子节点被创建。输入叶子节点沿着通过云交换机的较不具体的路径转发原始分组,所述较不具体的路径基于原始分组的输出域的域索引。原始分组的拷贝被修改,以创建更为具体的路径学习请求分组。输入叶子节点将该更为具体的路径学习请求分组沿着通过云交换机的较不具体的路径转发。输入叶子节点接收回包括结构***端口的指示的更为具体的路径学习请求回复分组。基于结构***端口的指示,输入叶子节点然后编排转发表,以使业务流的后续分组沿着更为具体的路径被转发。
Description
相关申请的交叉引用
本申请请求美国专利申请号为13/744,137,于2013年1月17日提交的名为“MSDCSCALING THROUGH ON-DEMAND PATH UPDATE”的优先权,其全部内容通过引用结合于此。
技术领域
本公开一般地涉及计算机网络,并且更特别地,涉及大规模扩展数据中心(massively scaled data center,MSDC)架构中的按需路径更新。
背景技术
在MSDC架构中,典型地,叶子交换机(也被称为“架顶”交换机(ToR))维持与每一个输出端口相应的全局唯一的索引。该索引为静态的,在该架构的生命期内是相同的。当新的流被建立时,输入叶子交换机(ToR)除了别的以外还将使用输出端口的唯一索引获取用于将业务交换至输出叶子交换机(ToR)的特定的结构***端口。然而,这一技术扩展性差。相应地,要求输入叶子交换机(ToR)保持所有端口的全局唯一的索引信息,以致以后该索引信息除了别的以外还可以被用于获取到达输出叶子交换机(ToR)所需的特定结构***端口,可能是不现实的。存在对改进的技术的需求。
附图简要说明
通过参考附图,这里所描述的实施例可以被更好地理解,在附图中,相同的参考数字指示了相同或功能上类似的元件,其中:
图1为示例性云交换机的框图;
图2为示例性叶子交换机(ToR)的硬件框图;
图3为示出了在示例性的云交换机中与示例性业务流有关的从使用较不具体的路径向更为具体的路径转换的框图;
图4为示例性的更为具体的路径学习分组的示图;以及
图5为用于从使用较不具体的路径向更为具体的路径转换的步骤的示例性序列。
示例性实施例描述
概述
根据本公开的实施例,业务流的原始分组的拷贝在云交换机的输入叶子节点被创建。输入叶子节点将原始分组沿着通过云交换机的较不具体的路径转发,该较不具体的路径基于原始分组的输出域的域索引。原始分组的拷贝被修改以创建更为具体的路径学习请求分组。输入叶子节点将更为具体的路径学习请求分组沿着通过云交换机的较不具体的路径转发。输入叶子节点接收回更为具体的路径学习请求回复分组,该更为具体的路径学习请求回复分组包括结构***端口的指示。输入叶子节点然后可以基于该结构***端口的指示编排转发表,以使业务流的后续分组沿着被结构***端口定义的更为具体的路径转发。
示例性实施例
层-2和层-3网络协议被网络使用,以分别在开放式***互连(OSI)参考模型的数据链路层和网络层传送数据消息。典型地,层-2网络协议提供建立共享媒体链接的能力,这里节点至少体现为共享通用的物理媒体,例如,以太局域网(LAN)。一般地,层-2协议依赖基于硬件的地址,诸如媒体访问控制(MAC)地址。典型地,层-3网络协议提供通过中间设备穿过大型网络以转发分组的能力。一般地,层-3协议依赖在软件中分配的主机地址,诸如因特网协议(IP)地址。
层-2和层-3网络协议可以部署在多种设置中。一种设置为数据中心的设置。数据中心可以支持数以万计,乃至以十万计的主机,例如,单独的服务器。这一规模可以测试许多架构的能力。为了满足数据中心的需求,多种新的大规模扩展数据中心(MSDC)架构被采用。这些架构中的很多架构采用了云交换架构的形式。典型地,云交换架构(或简称为“云交换机”)包括耦接至大量主机的大量单独的“架顶”交换机(ToR)。这种ToR可以被认为是云交换机的“叶子”,并且可以被称为叶子交换机。叶子交换机(ToR)可以通过高速结构互连,并且作为虚拟交换机被共同管理。
图1为示例性的云交换机100的框图。云交换机100提供了由单独的叶子交换机(ToR)交换机151-156组成的叶子交换机(ToR)的阵列110。叶子交换机(ToR)151-156可以提供大量的端口171-176,主机(例如服务器、外部交换机或桥等)可以耦接至这些端口。叶子交换机(ToR)151-156可以通过链接耦接至结构互连120的结构***端口161-166。尽管在图1中,每一个叶子交换机151-156被示出通过单个链接耦接,应当理解,典型地,多个链接将被利用以提供更大的吞吐量和冗余。结构互连120可以包括提供在叶子交换机中的路径的多个矩阵模块130-134。矩阵模块130-134在控制平面140的指引下运行,该平面可以包括多个控制在叶子交换机151-156中的转发的路由处理器170、172。
图2为示例性叶子交换机(ToR)200的硬件框图。交换机200包括多个接口210,该接口用作耦接至主机的端口,且作为耦接至结构互连120的面向结构的端口。交换机200还包括通过互连结构250耦接的一个或多个处理器220和存储器230。存储器230包括用于存储软件和数据结构的多个存储位置。该一个或多个处理器220包括被配置为执行软件和处理来自于数据结构的数据的逻辑。软件可以包括网络操作***240,以及多个协议过程,包括转发过程260,例如,层-2和层-3转发过程。数据结构可以包括各种转发表270,一些转发表的操作也在下面讨论。
在MSDC架构中,诸如云交换机,通常需要提供端口级的服务质量(QoS)。端口级的QoS可以包括在输入叶子交换机(ToR)的输入端口和输出叶子交换机(ToR)的输出端口之间的多个资源保留控制机制,所述资源保留控制机制保证那些端口之间的数据流的某个级别的性能。为了提供端口级的QoS,典型地,精确了解通过云交换机的路径,包括服务于输出叶子交换机(ToR)的输出端口的特定的结构***端口,是必要的。输入叶子交换机(ToR)可以依靠与每一个输出端口相应的全局唯一的索引,确定该特定的结构***端口。具体地,输入叶子交换机(ToR)可以保持与每一个输出端口相应的全局唯一的索引。这一索引为静态的,在该架构/云交换机的生命期内相同。当新的流被建立时,输入叶子交换机(ToR)除了别的以外还可以使用输出端口的该唯一索引,获取用于将业务交换至输出叶子交换机(ToR)的输出端口的特定的结构***端口。
然而,这一技术扩展性差。尽管典型的结构互连可以能够保持可出现于MSDC架构/云交换机的所有端口的全局唯一的索引,但是叶子交换机(ToR)可能被这一任务负累。它们的转发表可能大小有限而不足以容纳所有可能的索引。因此,要求输入叶子交换机(ToR)保持用于所有端口的全局唯一的索引信息,是不现实的。
一般地,在经过一段时间之后的任何给定时刻,来自于给定的输入叶子交换机(ToR)的业务去往输出叶子交换机(ToR)的仅一小组输出端口。尽管这一组的输出端口可以随时间改变,但是,典型地,它不会增长至超过适度大小。充分利用这一特性,使用对叶子交换机(ToR)唯一,但并非全局唯一的端口索引的多层编址技术可以被实现。换言之,一个叶子交换机(ToR)的端口索引,可以被另一个叶子交换机(ToR)重用以指向不同的端口。更高级的索引,具体地讲,域索引,可以被利用以定义云交换机的部分(即,域),其中端口的索引是唯一的。
在本公开的一个实施例中,一个或多个叶子交换机(ToR)的端口被组织为域并与域索引相关。在每一个叶子交换机(ToR)的端口被组织进入单独的域的情况下,该域的索引可以与叶子交换机(ToR)的索引相同。在几个叶子交换机(ToR)的端口被组织进入相同域的情况下,该域的索引可以具有独立的值。在域内,唯一的更具体的端口索引(该索引对该域内的每一个端口是唯一的),与每一个端口相关。
对于新的流,域索引可以被输入叶子交换机(ToR)使用以将业务引导至输出域。换言之,在输入叶子交换机中的转发表的综合条目可以指示输出域的域索引。一旦在输出域中,叶子交换机(ToR)可以在它的一个转发表中查找输出端口的更具体的索引,以将业务引导至适当的端口。
域索引的使用可以节省索引空间,并导致从域学习的改进的路由概括。然而,在一些情况下,它可以导致低于最优的业务转发(即,通过结构互连120的多跳)。由于域索引识别输出域,而非该域中的具体的输出叶子交换机(ToR),业务可能仅被传递至输出域中的任一叶子交换机(ToR)。如果接收业务的叶子交换机(ToR)刚好不是包括该输出端口的叶子交换机(ToR),该交换机(ToR)可能不得不通过结构互连120将该业务向回转发至适当的叶子交换机(ToR)(即,具有第二跳)。
另外,对该端口,域索引的使用可以妨碍端口的交换机结构的QoS。由于域索引识别输出域而非具体的叶子交换机(ToR),不确定通向输出端口的特定的结构***端口。这可以阻碍端口级的QoS技术,该端口级的QoS技术需要被使用的特定的结构***端口的知识。
为了解决这些问题,在本公开的一个实施例中,输入叶子交换机(ToR)可以从最初使用被域索引定义的较不具体的路径(将把业务传递至输出域的任意叶子交换机(ToR)),转换至更为具体的路径(被耦接至叶子交换机(ToR)并服务于输出端口的特定的结构***端口定义)。响应于触发事件,从使用较不具体的路径至更为具体的路径的转换可以被发起。触发事件可以为分组的接收,对该分组,目的地查找指向域索引,该域索引与被学习的新的源相关,该新的源具有向回指向结构互连的出口查找,或者满足其它条件。
为了从使用被域索引定义的较不具体的路径转换至被结构***端口定义的更为具体的路径,上述讨论的输入叶子交换机的转发表中的综合条目可以被一个或多个指示本地索引的单独的条目替换,该本地索引用于更为具体的路径。单独的条目可以通过特殊过程被创建,且当业务流停止存在时老化。
在一个实现方案中,业务流的原始分组的拷贝(例如,速率受限的拷贝)可以被生成,以致存在原始分组和该分组的拷贝。基于输出域的域索引,原始分组可以被简单地沿着较不具体的路径转发。该分组的拷贝可以通过添加头字段(例如,传送头字段)而被修改,以创建更为具体的路径学习请求分组,该路径学习请求分组被发送至输出域以获取服务于输出端口的结构***端口。包括来自于包括结构***端口的输出域的更为具体的路径学习回复分组,可以最终在输入叶子交换机(ToR)接收。在那之后,输入叶子交换机可以向结构互连120发送消息以在结构互连中编排本地索引,且可以利用本地索引编排本地转发表条目,以指引分组沿着被结构***端口定义的更为具体的路径。
除转发业务流以外(例如,用层2或层3转发),该技术可以被利用以发送在叶子交换机(ToR)中主机迁移的信号。在这种情形下,主动提供的更为具体的路径学习分组可以被利用。进一步地,该技术可以在基于结构互连的多链接透明互连(TRILL)的传递中使用。本领域的技术人员将可理解该技术很容易适用于多种情况,且这里提供的具体示例仅为它的许多应用的代表。
图3为示出了在示例性的云交换机300中,从使用与示例性的业务流有关的较不具体的路径向更为具体的路径转换的框图。云交换机300的结构可以与图1类似,然而为了表述的目的,某些部分被抽象化。叶子交换机(ToR)310可以与第一域相关,另外的叶子交换机(ToR)320、330可以与第二域相关。第二域可以具有域索引D2。端口312、322、324、332可以将叶子交换机(ToR)耦接至主机。每一个域的端口312、322、324、326、332可以与更为具体的索引P1、P2、P3、P4相关,这些索引在各自的域内是唯一的,但并非全局唯一。例如,索引P1可以在第一域内使用以代表叶子交换机(ToR)310的端口312,而在第二域内,它可以代表叶子交换机(ToR)320的端口322。结构***端口F3-1、F2-1、F2-2、F3-1可以将叶子交换机(ToR)耦接至结构互连120。
业务流的示例性分组可以在作为输入叶子交换机(ToR)的叶子交换机(ToR)310的端口312接收。业务流的分组可以去往叶子交换机(ToR)330的输出端口332,该叶子交换机330作为输出叶子交换机(ToR)。输入叶子交换机(ToR)可以执行几个操作。
输入叶子交换机(ToR)可以使用第二域的域索引D2使业务流的原始分组被转发,第二域作为输出域。这样的转发可以使原始分组最终处于叶子交换机(ToR)320或叶子交换机(ToR)330。接收的叶子交换机(ToR)可以执行另外的查找以确定输出端口332的更为具体的索引P3。分组可以被转发至适当的叶子交换机(ToR)330(如果需要是)。最终,业务流的原始分组从输出端口332向外被转发至主机。
另外,输入叶子交换机(ToR)可以生成业务流的原始分组的原始分组的拷贝(例如,速率受限拷贝)。输入叶子交换机(ToR)可以将头字段加入(例如,传送头字段)至该拷贝,以将拷贝变成更为具体的路径学习请求分组。如以下被进一步所解释的,除了别的之外,该更为具体的路径学习请求分组可以具有被设置为MORE_SPECIFIC_PATH_LEARN的类型和被设置为REQUEST的子类型。该更为具体的路径学习请求分组可以以与原始分组类似的方式被转发,并最终处于输出域的叶子交换机(ToR)320或330。接收的叶子交换机(ToR)可以基于域索引D2执行查找,并检验分组类型以确定该分组为更为具体的路径学习请求分组。基于该更为具体的路径学习请求分组,接收的叶子交换机(ToR)可以修改分组的字段以生成更为具体的路径学习请求回复分组,该分组除了别的以外还具有设置为MORE_SPECIFIC_PATH_LEARN的类型和现在被设置为REPLY的子类型。接收的叶子交换机(ToR)可以将结构***端口F3,1的指示添加至该更为具体的路径学习请求回复分组,并将该分组返回至输入叶子交换机(ToR)。
当接收该更为具体的路径学习回复分组的时候,输入叶子交换机(ToR)使用索引池中一个未被使用的本地索引(例如L1)。它向结构互连120发送消息以在结构互连120中编排本地索引L1,以使用在更为具体的路径学习请求回复分组中指示的结构***端口F3,1。它还编排具有本地索引L1的单独的本地转发表条目。一旦这种情况发生,业务流的分组可以被输入叶子交换机在被结构***端口F3,1定义的更为具体的路径上转发,因此它们被直接转发至叶子交换机(ToR)330且提供给输出端口332,而不需要通过结构互连120的可能第二跳。通过根据需求分配本地索引L1,且允许它在不同域的不同叶子交换机之间同时可重用,***可以很容易扩展,有效使用索引以覆盖大范围的端口。最终,当业务流停止存在时,与本地索引L1相应的条目可以老化,且本地索引L1可以被返回至索引池,节省了索引的使用。
图4为示例性的更为具体的路径学习分组的示图。该更为具体的路径学习分组可以包括多个典型的头和字段(未被示出)。另外,该更为具体的路径学习分组可以包括被这里所描述的实施例使用的扩展字段。特别地,类型字段410可以指示MORE_SPECIFIC_PATH_LEARN的类型。这可以为被指定用于这里所描述的技术的特殊类型。子类型字段420可以指示REQUEST、REPLY或UNSOLICITED的子类型。REQUEST子类型可以被输入叶子交换机(ToR)使用以指示分组为更为具体的路径学习请求分组,且输入叶子交换机(ToR)仅知道输出域索引,并期望学习服务于输出端口的***端口。REPLY子类型可以被输出域的叶子交换机(ToR)使用,当它接收更为具体的路径学习请求分组时,执行转发表的查找,并确定输出端口。REPLY子类型可以指示输出域的叶子交换机(ToR)正在提供服务于输出端口的结构***端口的指示。进一步地,UNSOLICITED子类型可以用于多种其它环境中,例如,当输出叶子交换机(ToR)检测输入叶子交换机(ToR)具有过时的信息且主机已迁移时,或者当新的层-2地址被学习或层-3至层-2的地址绑定在叶子交换机(ToR)被创建以追踪主机迁移时。
转发类型字段430可以指示与将更为具体的索引绑定至结构***端口相关的业务分组的字段。对具有REQUEST子类型或REPLY子类型的分组,转发类型字段430可以指示层-2或层-3源地址。对具有UNSOLICITED子类型的分组,转发类型字段可以指示层-2或层-3的源地址或层-2或层-3的目的地地址。
掩码字段440可以包括与转发类型相关的地址的前缀的掩码。对具有REQUEST子类型的分组,该字段可以为空,且当分组作为REPLY子类型分组返回时,在输出域的叶子交换机(ToR)填入。对具有UNSOLICITED子类型的分组,该字段可以被产生该分组的叶子交换机(ToR)设置。如果被命令,该字段可以用于从输入域学习的前缀概括和用于更为具体的前缀的安装。
本地索引字段450可以存储更为具体的索引,该索引除了别的以外还用于匹配REQUEST子类型分组和REPLY子类型分组。对具有REQUEST子类型的分组,该字段可以填入从位于输入叶子交换机(ToR)的索引池获取的索引,该索引在输入叶子交换机(ToR)是本地有效的,但是可以被其他叶子交换机(ToR)重用。对具有REPLY子类型的分组,其可以被输出域的叶子交换机(ToR)通过从具有REPLY子类型的相应分组获取索引而填入。该字段可以被输入叶子交换机(ToR)使用,以匹配REPLY子类型分组和它发送的相应REQUEST子类型分组。对具有UNSOLICITED子类型的分组,该字段可以不被使用。
仍然进一步地,结构***端口字段460可以存储结构***端口的指示,该结构***端口服务于输出域中的叶子交换机(ToR)的输出端口。与转发分组一起,结构***端口可以在将QoS应用于业务流的分组时使用。对具有REQUEST子类型的分组,该字段可以被输入叶子交换机(ToR)保留为空。对具有REPLY子类型的分组,该字段可以被输出域的叶子交换机(ToR)填入。交换机可以执行转发表查找以确定与业务的目的地相关的更为具体的索引。从这一索引,交换机可以执行另一表查找以确定服务于该目的地的结构***端口。这一查找的结果在具有REPLY子类型的分组的结构***端口字段450中被发送回。对具有UNSOLICITED子类型的分组,生成该分组的叶子交换机(ToR)可以用在转发类型中指示的前缀的结构***端口的指示设置结构***端口字段460。
图5为从使用较不具体的路径(被域索引定义,且将业务传给输出域的任意叶子交换机(ToR))向使用更为具体的路径(被特定的结构***端口定义,该特定的结构***端口耦接至叶子交换机(ToR)并服务于输出端口)的转换的步骤500的示例性序列。在步骤510,触发事件被接收。该触发事件可以为分组的接收,对该分组,目的地查找指向域索引,该域索引与被学习的新的源相关,该新的源具有向回指向结构互连的输出查找,或满足其它条件。在步骤520,用原始分组生成拷贝(例如,速率受限拷贝),从而存在原始分组和该分组的拷贝。在步骤530,基于输出域的域索引,原始分组被沿着较不具体的路径转发。在步骤540,通过添加与特殊消息类型相关的头字段,分组的拷贝被修改以创建更为具体的路径学习请求分组。在步骤550,分组的拷贝(现在为更为具体的路径学习请求分组)被沿着较不具体的路径转发。在步骤560,更为具体的路径学习回复分组从输出域被接收。除了别的以外,该更为具体的路径学习回复分组包括服务于输出端口的结构***端口的指示。在步骤570,输入叶子交换机(ToR)向结构互连120发送消息,以基于所指示的结构***端口编排结构互连。在步骤580,基于所指示的结构***端口,输入叶子交换机(ToR)编排本地转发表。以这种方式,后续的分组可以沿着被结构***端口定义的更为具体的路径被指引。进一步地,端口级QoS可以被提供。
总之,本公开描述了从初始使用较不具体的路径(被域索引定义,且将业务传递给输出域的任意叶子交换机(ToR))向使用更为具体的路径(被耦接的服务于输出端口的特定的结构***端口定义)的转换的实施例。上述实施例的至少一些可以以软件、硬件或二者的组合实现。软件实现方案可以包括存储于非瞬时计算机可读介质(诸如易失性或永久性存储器、硬盘、压缩盘(CD)或其它有形介质)的计算机可读指令。硬件实现方案可以包括被配置的处理器、逻辑电路、专用集成电路和/或其他类型的硬件组件。进一步地,组合的软件/硬件实现方案可以包括存储于非瞬时计算机可读介质的计算机可读指令,以及一个或多个硬件组件,例如,处理器、存储器等。上述描述意欲只作为示例而被采用。附加的权利要求的目标是覆盖落入这里的实施例的实际精神和范围的所有这种变形和修改。
Claims (14)
1.一种用于按需路径更新的方法,包括:
在云交换机的输入叶子节点,创建业务流的原始分组的拷贝;
由输入叶子节点沿着通过云交换机的较不具体的路径转发该原始分组,该较不具体的路径基于用于该原始分组的输出域的域索引;
修改该原始分组的拷贝以创建更为具体的路径学习请求分组;
由输入叶子节点沿着通过云交换机的较不具体的路径转发更为具体的路径学习请求分组;
在输入叶子节点,接收包括结构***端口的指示的更为具体的路径学习请求回复分组;以及
基于结构***端口的指示编排转发表,以使业务流的后续分组沿着被结构***端口定义的更为具体的路径转发,
其中所述编排进一步包括:从索引池根据需求分配本地索引;利用所述本地索引编排所述输入叶子节点的本地转发表条目;以及在结构互连中编排所述本地索引;其中所述本地索引在所述输入叶子节点和所述结构互连是本地有效的,并且可由所述云交换机中的其它叶子交换机重用。
2.如权利要求1所述的方法,其中所述域索引定义云交换机的一部分,其中端口的非全局唯一索引是唯一的。
3.如权利要求1所述的方法,进一步包括:
当所述业务流终止时,将所述本地索引返回所述索引池。
4.如权利要求1所述的方法,进一步包括:
初始使用指示所述输出域的域索引的转发表中的综合条目;以及
其中所述编排在所述转发表中创建单独的条目,以使业务流沿着被所述结构***端口定义的更为具体的路径转发。
5.如权利要求4所述的方法,进一步包括:
当所述业务流终止时,所述转发表中的所述单独的条目老化。
6.如权利要求1所述的方法,其中沿着所述较不具体的路径转发原始分组将所述原始分组转发至所述输出域的任意叶子交换机。
7.如权利要求6所述的方法,进一步包括:
在所述输出域的第一叶子交换机接收所述原始分组,所述第一叶子交换机不包括用于所述业务流的输出端口;以及
从所述第一叶子交换机向所述输出域的包括所述输出端口的第二叶子交换机转发所述原始分组。
8.如权利要求1所述的方法,其中所述结构***端口服务所述业务流的输出叶子交换机的输出端口。
9.如权利要求1所述的方法,其中被所述结构***端口定义的更为具体的路径将后续分组直接传递至所述输出域的包括所述输出端口的叶子交换机。
10.如权利要求1所述的方法,其中响应于检测触发事件,执行所述创建拷贝。
11.如权利要求10所述的方法,其中所述触发事件为分组的接收,对该分组,目的地查找指向域索引。
12.如权利要求1所述的方法,其中所述更为具体的路径学习请求分组包括多个头部的扩展字段,所述多个扩展字段包括类型字段、子类型字段、转发类型字段、本地索引字段和结构***端口字段。
13.一种用于按需路径更新的装置,包括:
一个或多个处理器;以及
一个或多个存储器,包括如果由所述装置执行则使得所述装置执行下述操作的指令:
在云交换机的输入叶子节点创建业务流的原始分组的拷贝;
由输入叶子节点沿着通过云交换机的较不具体的路径转发该原始分组,该较不具体的路径基于用于该原始分组的输出域的域索引;
修改该原始分组的拷贝以创建更为具体的路径学习请求分组;
由输入叶子节点沿着通过云交换机的较不具体的路径转发更为具体的路径学习请求分组;
在输入叶子节点,接收包括结构***端口的指示的更为具体的路径学习请求回复分组;以及
基于结构***端口的指示编排转发表,以使业务流的后续分组沿着被结构***端口定义的更为具体的路径转发,
其中所述编排进一步包括:从索引池根据需求分配本地索引;利用所述本地索引编排所述输入叶子节点的本地转发表条目;以及在结构互连中编排所述本地索引;其中所述本地索引在所述输入叶子节点和所述结构互连是本地有效的,并且可由所述云交换机中的其它叶子交换机重用。
14.一种计算机可读存储介质,包括一个或多个软件过程和一个或多个数据结构,当所述软件过程和数据结构被一个或多个处理器执行时,使所述一个或多个处理器执行一种方法,所述方法如权利要求1-12任一项所述。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/744,137 US9356884B2 (en) | 2013-01-17 | 2013-01-17 | MSDC scaling through on-demand path update |
US13/744,137 | 2013-01-17 | ||
PCT/US2014/011814 WO2014113547A1 (en) | 2013-01-17 | 2014-01-16 | Msdc scaling through on-demand path update |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105122744A CN105122744A (zh) | 2015-12-02 |
CN105122744B true CN105122744B (zh) | 2018-10-23 |
Family
ID=50073466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480005024.4A Active CN105122744B (zh) | 2013-01-17 | 2014-01-16 | 通过按需路径更新的msdc扩展 |
Country Status (4)
Country | Link |
---|---|
US (3) | US9356884B2 (zh) |
EP (1) | EP2946535B1 (zh) |
CN (1) | CN105122744B (zh) |
WO (1) | WO2014113547A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9356884B2 (en) | 2013-01-17 | 2016-05-31 | Cisco Technology, Inc. | MSDC scaling through on-demand path update |
US10587517B2 (en) * | 2017-11-30 | 2020-03-10 | Juniper Networks, Inc. | Optimizing fabric path forwarding for virtual nodes within an electronic device |
US11271868B2 (en) * | 2020-07-28 | 2022-03-08 | Ciena Corporation | Programmatically configured switches and distributed buffering across fabric interconnect |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6804201B1 (en) | 2000-10-05 | 2004-10-12 | S. Erol Gelenbe | Cognitive packet network |
KR100446301B1 (ko) * | 2002-06-01 | 2004-08-30 | 삼성전자주식회사 | 전화선 상에서 패킷 데이터를 안정되게 수신할 수 있는버스트 모드 수신기 및 그 방법 |
US8990430B2 (en) * | 2004-02-19 | 2015-03-24 | Cisco Technology, Inc. | Interface bundles in virtual network devices |
US8531991B2 (en) | 2006-10-16 | 2013-09-10 | Cisco Technology, Inc. | Multi-chassis emulated switch |
US8792490B2 (en) | 2009-03-16 | 2014-07-29 | Cisco Technology, Inc. | Logically partitioned networking devices |
US8259726B2 (en) * | 2009-05-28 | 2012-09-04 | Force10 Networks, Inc. | Method and apparatus for forwarding table reduction |
US8289961B2 (en) * | 2009-08-20 | 2012-10-16 | Telefonaktiebolaget L M Ericsson (Publ) | Link state identifier collision handling |
US20110103391A1 (en) * | 2009-10-30 | 2011-05-05 | Smooth-Stone, Inc. C/O Barry Evans | System and method for high-performance, low-power data center interconnect fabric |
CN102474449B (zh) * | 2009-11-02 | 2016-05-04 | 马维尔国际贸易有限公司 | 基于虚拟接口的交换装置和方法 |
US8619595B2 (en) | 2010-02-05 | 2013-12-31 | Cisco Technology, Inc. | Fault isolation in trill networks |
US8345692B2 (en) | 2010-04-27 | 2013-01-01 | Cisco Technology, Inc. | Virtual switching overlay for cloud computing |
US8867552B2 (en) * | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US9769016B2 (en) * | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US8634308B2 (en) * | 2010-06-02 | 2014-01-21 | Brocade Communications Systems, Inc. | Path detection in trill networks |
CN103069756A (zh) * | 2010-08-20 | 2013-04-24 | 日本电气株式会社 | 通信***、控制器、节点控制方法和程序 |
US20130188647A1 (en) * | 2010-10-29 | 2013-07-25 | Russ W. Herrell | Computer system fabric switch having a blind route |
EP2670088B1 (en) * | 2011-02-21 | 2015-11-04 | ZTE Corporation | Trill network interconnection method and system |
US9497073B2 (en) * | 2011-06-17 | 2016-11-15 | International Business Machines Corporation | Distributed link aggregation group (LAG) for a layer 2 fabric |
US9736065B2 (en) | 2011-06-24 | 2017-08-15 | Cisco Technology, Inc. | Level of hierarchy in MST for traffic localization and load balancing |
US9380132B2 (en) * | 2011-06-27 | 2016-06-28 | Marvell Israel (M.I.S.L.) Ltd. | FCoE over trill |
US9225633B2 (en) * | 2011-10-31 | 2015-12-29 | At&T Intellectual Property I, L.P. | Methods, apparatus, and articles of manufacture to provide a multicast virtual private network (MVPN) |
US8861403B2 (en) | 2012-03-15 | 2014-10-14 | Cisco Technology, Inc. | Interconnecting segmented layer two network for cloud switching |
US8789164B2 (en) * | 2012-03-16 | 2014-07-22 | International Business Machines Corporation | Scalable virtual appliance cloud (SVAC) and devices usable in an SVAC |
US9130764B2 (en) * | 2012-05-31 | 2015-09-08 | Dell Products L.P. | Scaling up/out the number of broadcast domains in network virtualization environments |
US20140010096A1 (en) * | 2012-07-09 | 2014-01-09 | International Business Machines Corporation | Port mirroring in distributed switching systems |
US8750311B2 (en) * | 2012-07-25 | 2014-06-10 | Hewlett-Packard Development Company, L.P. | Fibre channel host virtualization |
US8717944B2 (en) | 2012-08-23 | 2014-05-06 | Cisco Technology, Inc. | TRILL optimal forwarding and traffic engineered multipathing in cloud switching |
US20140064150A1 (en) | 2012-08-31 | 2014-03-06 | Cisco Technology, Inc. | Mst extensions for flexible and scalable vn-segment loop prevention |
US9112788B2 (en) * | 2012-10-10 | 2015-08-18 | Cisco Technology, Inc. | Bicasting using non-congruent paths in a loop-free routing topology having routing arcs |
US20140237156A1 (en) * | 2012-10-25 | 2014-08-21 | Plx Technology, Inc. | Multi-path id routing in a pcie express fabric environment |
US9253140B2 (en) * | 2012-11-20 | 2016-02-02 | Cisco Technology, Inc. | System and method for optimizing within subnet communication in a network environment |
US9979595B2 (en) * | 2012-12-18 | 2018-05-22 | Juniper Networks, Inc. | Subscriber management and network service integration for software-defined networks having centralized control |
US9479427B2 (en) * | 2012-12-21 | 2016-10-25 | Dell Products L.P. | System and methods for load placement in data centers |
US9356884B2 (en) * | 2013-01-17 | 2016-05-31 | Cisco Technology, Inc. | MSDC scaling through on-demand path update |
-
2013
- 2013-01-17 US US13/744,137 patent/US9356884B2/en active Active
-
2014
- 2014-01-16 CN CN201480005024.4A patent/CN105122744B/zh active Active
- 2014-01-16 EP EP14703988.7A patent/EP2946535B1/en active Active
- 2014-01-16 WO PCT/US2014/011814 patent/WO2014113547A1/en active Application Filing
-
2016
- 2016-05-19 US US15/159,634 patent/US10298484B2/en active Active
-
2019
- 2019-05-20 US US16/417,249 patent/US11146476B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2014113547A1 (en) | 2014-07-24 |
US20190273676A1 (en) | 2019-09-05 |
US20140198800A1 (en) | 2014-07-17 |
US9356884B2 (en) | 2016-05-31 |
US11146476B2 (en) | 2021-10-12 |
EP2946535A1 (en) | 2015-11-25 |
EP2946535B1 (en) | 2016-08-24 |
US20160269271A1 (en) | 2016-09-15 |
CN105122744A (zh) | 2015-12-02 |
US10298484B2 (en) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9025495B1 (en) | Flexible routing engine for a PCI express switch and method of use | |
CN101242371B (zh) | 基于PCIe交换架构路由器堆叠的方法、***和装置 | |
US6633565B1 (en) | Apparatus for and method of flow switching in a data communications network | |
CN106664251A (zh) | 网络环境中的双向流粘性 | |
US8379642B2 (en) | Multicasting using a multitiered distributed virtual bridge hierarchy | |
US9565138B2 (en) | Rule-based network traffic interception and distribution scheme | |
CN104717081B (zh) | 一种网关功能的实现方法及装置 | |
CN104737507B (zh) | 在大规模数据中心环境中用机会第3层转发确保任意到任意可达性的方法及装置 | |
CN102724098B (zh) | 航空电子设备全双工交换以太网相兼容的通信交换机 | |
CN103023827B (zh) | 一种虚拟化数据中心的数据转发方法及其实现设备 | |
CN105706391A (zh) | 通过索引的本地化来增加组播规模 | |
US9612989B2 (en) | Computer system and routing control method | |
CN109698788A (zh) | 流量转发方法和流量转发装置 | |
CN106341338B (zh) | 一种报文的转发方法及装置 | |
US9391893B2 (en) | Lookup engine for an information handling system | |
US10880233B2 (en) | Routing management | |
CN103812777B (zh) | 覆盖虚拟化网络中的高效数据传输方法和*** | |
CN107547391A (zh) | 一种报文传输方法和装置 | |
CN106209638A (zh) | 从虚拟局域网至虚拟可扩展局域网的报文转发方法和设备 | |
CN106209689A (zh) | 从vxlan至vlan的组播数据报文转发方法和设备 | |
CN105122744B (zh) | 通过按需路径更新的msdc扩展 | |
CN107968749A (zh) | 实现QinQ路由终结的方法、交换芯片及交换机 | |
CN108696435A (zh) | 对于对称流的单个查找表条目 | |
EP3534577B1 (en) | Forwarding multicast packets through an extended bridge | |
WO2017084228A1 (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 |