CN103765825B - 响应于不可用的路径实施交换结构 - Google Patents
响应于不可用的路径实施交换结构 Download PDFInfo
- Publication number
- CN103765825B CN103765825B CN201180073139.3A CN201180073139A CN103765825B CN 103765825 B CN103765825 B CN 103765825B CN 201180073139 A CN201180073139 A CN 201180073139A CN 103765825 B CN103765825 B CN 103765825B
- Authority
- CN
- China
- Prior art keywords
- chip
- packet
- port
- port interface
- fabric
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1881—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with schedule organisation, e.g. priority, sequence management
-
- 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/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/101—Packet switching elements characterised by the switching fabric construction using crossbar or matrix
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
在用于实施交换结构的方法中,在第一结构芯片中从源结构芯片接收包括目的地节点芯片的标识的分组,并且确定交换结构中要向着目的地节点芯片传递分组所依循的第一路径是不可用的。此外,确定要向着不包括源结构芯片的目的地节点芯片传递分组所依循的另一路径是否是可用的。响应于确定另一路径是可用的,沿该另一路径传递分组。此外,响应于确定另一路径是不可用的,将分组传递回至源结构芯片。
Description
技术领域
本申请总体涉及结构芯片、包括结构芯片的交换结构以及用于实施交换结构的方法。
背景技术
计算机性能已提升并且继续以很快的速率提升。伴随所提升的计算机性能,将计算机连接在一起的网络的带宽能力也已提升并且继续显著提升。基于以太网的技术是已被改变和改进来向联网的计算机提供充足带宽的一种网络的示例。基于以太网的技术通常利用网络交换机,网络交换机是根据数据分组(packet)中包含的目的地地址信息对数据分组流进行控制的基于硬件的设备。在交换结构中,网络交换机通过结构(fabric)彼此连接,该结构允许建造具有可扩展端口密度的网络交换机。此结构通常从网络交换机接收数据并且将数据转发至其它连接的网络交换机。
发明内容
本申请公开一种用于实施交换结构的方法,所述方法包括:在第一结构芯片中,从源结构芯片接收分组,其中所述分组包括目的地节点芯片的标识;确定所述交换结构中要向着所述目的地节点芯片传递所述分组所依循的第一路径是不可用的;确定所述交换结构中要向着不包括所述源结构芯片的目的地节点芯片传递所述分组所依循的另一路径是否是可用的;响应于确定所述另一路径是可用的,沿所述另一路径传递所述分组;以及响应于确定所述另一路径是不可用的,将所述分组传递回至所述源结构芯片。
本申请公开一种交换结构,其包括:源结构芯片;目的地节点芯片;以及第一结构芯片,从所芯片接收分组,其中所述分组包括所述目的地节点芯片的标识,所述第一结构芯片包括端口解析模块,所述端口解析模块将:确定所述交换结构中要向着所述目的地节点芯片传递所述分组所依循的第一路径是不可用的;确定所述交换结构中要向着不包括所述源结构芯片的目的地节点芯片传递所述分组所依循的另一路径是否是可用的;响应于确定所述另一路径是可用的,沿所述另一路径传递所述分组;以及响应于确定所述另一路径是不可用的,将所述分组传递回至所述源结构芯片。
本申请公开一种结构芯片,其包括:多个端口接口,其中所述多个端口接口中的每一个包括具有端口解析模块的网络芯片接口(NCI)模块;交叉开关模块,与所述多个端口接口中的所述NCI模块中的每一个通信地联接;其中所述结构芯片将通过所述多个端口接口中的一个端口接口从源结构芯片接收分组,其中所述分组包括目的地节点芯片的标识,并且其中所述多个端口接口中的所述一个端口接口的端口解析模块将:确定所述多个端口接口中的哪个端口接口要从所述NCI模块接收所述分组;确定交换结构中要向着所述目的地节点芯片传递所述分组所依循的第一路径是不可用的;确定所述交换结构中要向着不包括所述源结构芯片的目的地节点芯片传递所述分组所依循的另一路径是否是可用的;响应于确定所述另一路径是可用的,沿所述另一路径传递所述分组;以及响应于确定所述另一路径是不可用的,将所述分组传递回至所述源结构芯片。
附图说明
本公开的特征是通过示例图示的且不局限于下面的图,在下面的图中,相同的附图标记表示相同元件,其中:
图1图示根据本公开示例的网络装置的简化示意图;
图2示出根据本公开示例的图1所示的结构芯片的简化框图;
图3、图4A和图4B分别示出根据本公开的示例的交换结构的简化框图;以及
图5和图6分别示出根据本公开示例的用于实施包括图1至图4B的结构芯片的交换结构的方法的流程图。
具体实施方式
为简单和说明目的,通过主要参考本公开的示例对本公开进行描述。在下面的描述中,阐述大量特定细节,以便提供对本发明的全面理解。然而,将显而易见的是,本公开可以在没有对这些特定细节的限制的情况下实践。在其它情况中,未详细地描述一些方法和结构,以便不非必要地使本公开模糊。
在本公开全文中,附图标记后的术语“n”意在表示大于1的整数值。此外,图中的省略号(“…”)意在表示在围绕省略号的要素之间可以包括附加的要素。此外,术语“一”意在表示特定要素中至少一个。本文中使用的术语“包括”指包括但不限于,本文使用的术语“包含”指包含但不限于。术语“基于”指至少部分地基于。
本文公开的是结构芯片、包含该结构芯片的交换结构和用于实施该交换结构的方法。本文公开的结构芯片是为了避免将从源结构芯片接收的分组传递回至该源结构芯片,除非在交换结构中没有其它可用路径供分组穿过来到达目的地节点芯片。换言之,本文公开的结构芯片、交换结构和用于实施该交换结构的方法实际上避免交换结构中的不良“U回转(U-Turn)”。本文中,源结构芯片可以被限定为直接连接至另一结构芯片且因此与另一结构芯片相邻的结构芯片。在这一方面,本文中,源结构芯片可以被限定为分组进入交换结构所通过的结构芯片。此外或可替代地,源结构芯片可以被限定为分组在进入另一结构芯片之前穿过的前一结构芯片。
“U回转”可以被定义为由另一结构芯片从源结构芯片接收的分组被发送回至该源结构芯片。可以通过与分组到达所通过的相同结构端口或者通过作为与该分组到达所通过的结构端口相同干线的一部分的不同结构端口,将该分组发送回去。在任何情况下,通过本文公开的结构芯片、交换结构和方法的实施,分组在不得已的情况下才进行U-回转。也就是说,如果不存在不以源结构芯片终止的其它路径或上行链路,则该分组才会返回至源结构芯片。
此外,一旦分组被传递回至源结构芯片,源结构芯片就选择该分组所传递至的不同结构芯片,从而继续沿反向路径朝目的地节点芯片传播分组。关于这一点,源结构芯片可以将具有该结构芯片的干线链路视为单个链路,因此可以防止通过不同的干线链路将分组传递回至该结构芯片。于是,其中最高优先级故障转移选项可以在相同干线内,该优先级可以降级至最低优先级,使得一旦决定要沿相反的方向传送分组,就可以在交换结构中沿相反的方向继续向前行进。本文中,相反的方向可以被定义为起始于分组将从结构芯片中发出所使用的结构端口并且指向该分组已穿过的结构端口所定义的方向。换言之,相反的方向可以包括对分组而言是非优选路径的方向。
通过本文公开的结构芯片、交换结构和方法的实施,当优选路径不可用或者不活跃时,分组可以通过交换结构前进。此外,涉及干线链路的处理被包含到交换结构的实施内,因此避免分组经过单个链路或经过多个干线链路在源结构芯片与另一结构芯片之间来回地反弹的情况。
如本文中记载,网络交换机之间或交换结构中的结构芯片之间的干线链路可以被限定为联结同一对网络交换机或该交换结构中的结构芯片的两个或更多个结构链路。换言之,干线链路包括平行链路。此外,可以将干线限定为同一对网络交换机或结构芯片之间的干线链路的集合。因此,例如可以在第一网络交换机和第二网络交换机之间提供干线链路的第一干线,并且可以在第一网络交换机和第三网络交换机之间提供干线链路的第二干线。分组可以经由联结网络交换机的干线链路中任何干线链路在网络交换机之间传递。
如本文使用的,分组可以包括数据分组和/或控制分组。根据示例,分组包括数据迷你分组(MPacket)和控制迷你分组,其中控制迷你分组是请求或应答,数据迷你分组是单播和/或多播。
首先参考图1,这里示出根据示例的网络装置100的简化图。很明显,图1中绘出的图代表概括图示,并且可以添加其它组件或可以移除、修改或重布置现有组件,而不背离网络装置100的范围。
网络装置100大体包括用于执行联网功能的装置,如网络交换机或等同装置。在这一点上,网络装置100可以包括外壳或外罩102,并且可以被用作联网组件。换言之,例如,可以将外壳102用于放置在电子器件架或其它联网环境中,如与其它网络装置一起放置在堆叠构造中。在其它示例中,网络装置100可以位于外壳内较大ASIC的或一组ASIC的内部。此外或可替代地,网络装置100可以提供单个外壳内部的结构网络的一部分。
将网络装置100描绘为包括结构芯片110和具有标记有“0”和“1”的端口的多个节点芯片130a-130n。还将结构芯片110描绘为包括多个端口接口112a-112n,多个端口接口112a-112n可通信地联接至节点芯片130a-130n的端口“0”和“1”中的各个端口。端口接口112a-112n还可通信地连接至交叉开关(crossbar)阵列120,将交叉开关阵列120描绘为包括控制交叉开关122、单播数据交叉开关124和多播数据交叉开关126。还将端口接口112n描绘为连接至另一网络装置150,另一网络装置150可以包括与网络装置100相同或相似的构造。因此,例如,另一网络装置150可以包括可通信地联接至结构芯片110的多个节点芯片130a-130n。如图所示,端口接口112n通过上行链路152连接至另一网络装置150。然而,可替代地并且如本文下面更详细地介绍的,网络装置100和另一网络装置150可以通过公共干线的干线链路彼此通信。
根据示例,节点芯片130a-130n包括使用户端口和结构芯片110能彼此接合的专用集成电路(ASIC)。虽然未示出,但是节点芯片130a-130n中每个节点芯片还可以包括用户端口,通过该用户端口可以将像分组这样的数据输入给节点芯片130a-130n和/或从节点芯片130a-130n中输出。此外,端口接口112a-112n中每个端口接口112a-112n可以包括端口,通过该端口可以建立节点芯片130a中的端口和端口接口112a之间的连接。节点芯片130a的端口和端口接口112a-112n的端口之间的连接可以包括使能数据的相对高速通信的任何适合连接,如光纤或其等同物。
根据示例,结构芯片110包括将节点芯片130a-130n可通信地彼此连接的ASIC。结构芯片110还可以包括将结构芯片110可通信地连接至另一网络装置150的结构芯片110的ASIC,其中如此连接的结构芯片110可以被解释为背面可堆叠的结构芯片。本文将与节点芯片130a-130n的端口可通信地联接的端口接口112a-112n的端口描述为“下行链路端口”。此外,本文将与另一网络装置150中的结构芯片110的端口接口112a-112n可通信地联接的端口接口112a-112n的端口描述为“上行链路端口”。
根据示例,分组通过源节点芯片的下行链路端口进入结构芯片110,源节点芯片可以包括与目的地节点芯片相同的节点芯片。目的地节点芯片可以是交换结构中包括与源节点芯片附接的结构芯片端口在内的任何结构芯片端口。此外,分组包括要由结构芯片110将分组传递至的那个节点芯片的标识,如数据列表、目的地节点掩码等。此外,可以向端口接口112a-112n中每个端口接口指派比特,端口接口112a-112n中每个端口接口均可以执行端口解析操作,以确定端口接口112a-112n中哪个端口接口要接收分组。更具体地,例如,接收分组的端口接口112a可以向该分组中包含的节点芯片的标识应用比特掩码,以确定该数据中标识的比特并且确定端口接口112b-112n中哪个端口接口对应于所确定的比特。在分组包括单播分组的情况下,端口接口112a可以经由适合的交叉开关122-126将数据传递至所确定的端口接口112b-112n。然而,当分组包括多播分组时,端口接口112a可以在端口解析操作期间执行附加操作,以如本文下面更详细地讨论地确定端口接口112b-112n中哪个(哪些)端口接口要接收多播分组。
现在具体参考图2,这里示出根据示例的图1所示结构芯片110的简化框图。显然,图2中绘出的结构芯片110代表概括图示,并且可以添加其它组件或可以移除、修改或重布置现有组件,而不背离结构芯片110的范围。
将结构芯片110描绘为包括多个端口接口112a-112n和交叉开关阵列120。本文详细地描绘特定端口接口112a的组件,但是应当理解,剩余的端口接口112b-112n可以包括类似组件或配置。
如图2所示,结构芯片110包括网络芯片接口(NCI)模块202、高速链路(HSL)(接口)模块210以及一组串行器/解串行器(serdes)222。作为特定示例,该组serdes 222包括一组serdes模块。此外,将serdes 222描绘为将接收端口224和发送端口226相接合。然而,可替代地,在结构芯片110中可以使用除HSL模块210和serdes 222以外的组件,而不背离本文公开的结构芯片110的范围。
将NCI模块202描绘为包括网络芯片接收器(NCR)模块204a和网络芯片发送器(NCX)模块204b。NCR模块204a将从HSL模块210接收的数据馈送至交叉开关阵列120,NCX模块204b将从交叉开关阵列120接收的数据传递至HSL模块210。将NCR模块204a和NCX模块204b进一步描绘为包括各自的寄存器206a-206d,其中寄存器206b和206d中的一些寄存器可通信地联接至交叉开关122-126中的一个交叉开关,寄存器206a和206c中的其它寄存器可通信地联接至HSL模块210。
NCI模块202大体以全双工的方式在对应HSL模块210和交叉开关阵列120之间传送数据和控制迷你分组(MPacket)。此外,NCI 202提供两个方向上的缓冲。NCI模块202还包括端口解析模块208,端口解析模块208对每个所接收的MPacket中包含的目的地和路径信息进行解释。作为示例,每个所接收的MPacket可以包括目的地节点芯片掩码,端口解析模块208可以在执行端口解析操作时使用该目的地节点芯片掩码来确定结构芯片110的不同端口接口112b-112n中的正确目的地NCI模块202,以进行去往可以与结构芯片110的下行链路端口或上行链路端口附接的正确目的地节点芯片130a-130n的下一跳。在这一方面,端口解析模块208可以被编程有资源,在该资源的比特掩码中每个比特对应于结构芯片110的端口接口112a-112n之一。此外,在端口解析操作期间,端口解析模块208可以对结构端口掩码使用比特掩码,以确定哪个比特以及因此哪个端口接口112b-112n要接收该分组。此外,端口解析模块208独立于外部软件对目的地和路径信息进行解释,确定正确的NCI模块202,并且确定要将分组输出至哪个端口。换言之,端口解析模块208不需要由外部软件控制来执行这些功能。
端口解析模块208可以被编程有机器可读指令,该机器可读指令在被运行时促使端口解析模块208确定交换结构中要向着目的地节点传递分组所依循的第一路径是不可用的,确定交换结构中要向着不包括源结构芯片的目的地节点芯片传递分组所依循的另一路径是否是可用的,响应于确定另一路径是可用的,沿该另一路径传递分组,并且响应于确定该另一路径是不可用的,将分组传递回源结构芯片。在这一点上,如果没有其它可用路径供分组到达目的地节点芯片所用,则端口解析模块208仅将分组传递回源结构芯片。
端口解析模块208还可以被编程有对端口接口112a-112n中哪个端口接口包括作为干线链路的上行链路进行识别的信息。如本文下面更详细地介绍的,端口解析模块208可以将所有干线链路视为公共链路,以避免将分组返还至源结构芯片,除非没有其它路径供分组能到达目的地节点芯片所用。
NCX模块204b还包括对从多播数据交叉开关126接收的分组进行操作的节点修剪模块209和单播转换模块2011。更具体地,单播转换模块211要对分组进行处理,以识别下行链路上的节点芯片将对那个分组需要的数据中的数据字。此外,节点修剪模块209要将目的地节点芯片掩码修剪为那些比特的子集,该子集代表哪些节点芯片要接收分组,使得仅被认为穿过该端口的目的地节点芯片130a-130n仍包含在芯片掩码中。因此,例如,如果NCX模块204b接收列出结构芯片110的芯片节点130a和与另一网络装置150附接的芯片节点130的多播分组,则NCX模块204b可以在将该多播分组发送至另一装置150以前对该多播分组的数据列表进行修剪,以移除结构芯片110的芯片节点130a。
HSL模块210大体操作来初始化并检测高速链路中的错误,并且如果必要则重传数据。根据示例,NCI模块202和HSL模块210之间的数据路径在每个方向上均是64比特宽。
现在转向图3、图4A和图4B,这里分别示出根据各个示例的交换结构300、400和410的简化框图。应当清楚,图3、图4A和图4B中绘出的交换结构300、400和410代表概括图示,并且可以添加其它组件或可以移除、修改或重布置现有组件,而不背离交换结构300、400和410的范围。
将交换结构300描绘为包括两个网络装置302a和302b,将交换结构400和410描绘为包括八个网络装置302a-302h。还将网络装置302a-302h中每个网络装置描绘为包括各自的结构芯片(FC0-FC7)350a-350h。网络装置302a-302h中每个网络装置可以包括与图1中绘出的网络装置100相同或相似的构造。此外,结构芯片350a-350h中每个结构芯片可以包括与图2中描绘的结构芯片110相同或相似的构造。而且,尽管在图3、图4A和图4B中已经描绘出特定数量的网络装置302a-302h,但是应当理解,交换结构300、400和410可以包括相对于彼此被布置在任何数量不同构造中的任何数量的网络装置302a-302h,而不背离交换结构300、400和410的范围。
在任何方面,如在交换结构300、400和410中示出的,将每个网络装置302a-302h描绘为包括四个节点芯片(N0-N31)311-342。将节点芯片(N0-N31)311-342中每个节点芯片描绘为包括两个端口(0,1),这两个端口可通信地联接至至少一个不同的结构芯片350a-350h的端口(0-11)。更具体地,将节点芯片311-342的端口中每个端口描绘为连接至十二个端口0-11中的一个端口,其中端口0-11中每个端口可通信地联接至端口接口112a-112n。此外,将节点芯片311-342描绘为通过双向链路连接至各自的结构芯片350a-350h。在这一方面,数据可以在节点芯片311-342和它们各自的结构芯片350a-350h之间沿任一方向流动。
如上面关于图1讨论的,结构芯片350a-350h的与节点芯片311-342连接的端口被称为“下行链路端口”,结构芯片350a-350h的与其它结构芯片350a-350h连接的端口被称为“上行链路端口”。结构芯片350a-350h的上行链路端口和下行链路端口中的每个端口均包括期望通过该链路到达的目的地节点芯片311-342的标识。此外,被供应到交换结构300、400和410内的分组随其一起包括应当将分组传送至的那个(那些)节点芯片311-342的标识。其节点芯片311-342的标识与这些节点芯片的标识中一个或多个节点芯片或芯片掩码相匹配的上行链路端口被认为是“优选上行链路端口”,该优选上行链路端口将接收要传送的数据,除非该“优选上行链路端口”是死的或在别的方面不可用。如果优选上行链路是死的或在别的方面不可用,那么端口解析模块208可以使用可编程的、划分优先级的端口接口列表,以选择替代上行链路端口接口而不选择优选上行链路端口来接收分组。
其单个节点芯片311-342的列表与这些节点芯片的标识中的节点芯片之一相匹配的下行链路端口被认为是“活跃下行链路端口”。在分组中嵌入“路径索引”,该路径索引选择将对该分组使用“活跃下行链路端口”中的哪个活跃下行链路端口。该基于路径的过滤使结构芯片350a-350h能够具有与节点芯片311-342的多个连接。
在任何方面,结构芯片350a-350h会将分组传送至在节点芯片的标识内的节点芯片311-342。对于在节点芯片的标识内包含的与结构芯片350a的下行链路端口连接的那些节点芯片311-342而言,结构芯片350a可以将分组直接传送至至那个(那些)节点芯片311-314。然而,对于在节点芯片的标识中不与结构芯片350a的下行链路端口连接的节点芯片315-342而言,结构芯片350a执行硬件计算,来确定为了到达那些节点芯片315-342,分组将穿过哪个(哪些)上行链路端口。将这些硬件计算限定为“端口解析操作”。
如图3所示,将网络装置302a的结构芯片350a描绘为通过三个干线链路156-160可通信地连接至网络装置302b的结构芯片350b,这三个干线链路156-160是相同干线154的一部分。在图4A中,结构芯片350a-350h中每个结构芯片连接至恰好两个其它结构芯片350a-350h。在图4B中,将结构芯片350a-350h中每个结构芯片描绘为通过两个各自的干线链路156-158和160-162连接至两个相邻的结构芯片350a-350h,这两个各自的干线链路是两个分离的干线154的一部分。
图4A和图4B中描绘的交换结构400和410包括环形网络构造,其中结构芯片350a-350h中每个结构芯片均连接至恰好两个其它结构芯片350a-350h。更具体地,相邻结构芯片350a-350h的端口(0)和(1)在图4A中被描绘为彼此通信地联接。此外,相邻结构芯片350a-350h的端口(0)和(1)和(10)和(11)在图4B中被描绘为彼此通信地连接。于是,在网络装置302a-302h之间提供用于数据信号流过每个节点的单个连续通路。
虽然已经将交换结构300描绘为包括两个网络装置302a、302b,并且已经将交换结构400、410描绘为包括八个网络装置302a-302h,网络装置302a-302h中每个网络装置包括四个节点芯片311-342,但是应当清楚地理解,交换结构300、400和410可以包括任何合理数量的网络装置302a-302h,任何合理数量的网络装置302a-302h在其之间具有任何合理数量的链路152和/或干线链路156-162,而不背离交换结构300、400和410的范围。此外,网络装置302a-302h每个可以包括任何适合合理数量的节点芯片311-342,而不背离交换结构300、400和410的范围。此外,结构芯片350a-350h中每个可以包括任何适合合理数量的端口接口112a-112n和端口。更进一步,网络装置302a-302h可以被布置在其它网络构造中,如网状布置或其它构造。
关于图5和图6更详细地描述可以实施交换结构300、400和410的各种方式,图5和图6分别绘出根据示例的用于实施包括结构芯片10、350a-350h(如图1至图4B所示的那些结构芯片)的交换结构的方法500和600的流程图。应当明白,方法500和方法600代表概括图示,可以添加其它步骤或者可以移除、修改或重布置现有步骤,而不背离方法500和方法600的范围。
特别地参考图1至图4B中描绘的结构芯片110和结构芯片350a-350h进行方法500和600的描述,然而应当理解方法500和600可以在与结构芯片110和350a-350h不同的结构芯片中执行,而不背离方法500和600的范围。此外,虽然参考网络装置302a-302h中的特定网络装置并因此参考结构芯片350a-350h和节点芯片311-342中特定的结构芯片和节点芯片,但是应当理解,本文描述的操作可以被网络装置302a-302h中任何网络装置或在网络装置302a-302h中的任何网络装置中执行。
结构芯片110、350a-350h的端口接口112a-112n中的每个端口接口可以被编编程有通过各个端口接口112a-112n会到达的目的地节点芯片130a-130n、311-342。因此,例如,包含结构芯片(FC0)350a的端口(2)的端口接口112a可以被编制有节点芯片(N0)311作为与端口接口112a相关的可到达目的地节点芯片。作为另一示例,包含结构芯片(FC0)350a的端口(0)的端口接口112n可以被编程有节点芯片(N4-N31)315-342或者这些节点芯片的子集作为与端口接口112n相关的可到达目的地节点芯片。
结构芯片110、350a-350h的端口接口112a-112n中的每个端口接口可以被编程有包括干线链路的结构链路的标识。此外,结构芯片110、350a-350h的端口接口112a-112n中的每个端口接口可以被编程有被组织在一起的干线链路的标识。因此,例如,结构芯片350a的端口接口112a-1120n可以被编程有干线链路156和158在第一干线中且干线链路158和160在第二链路中的信息。
一般而言,图5中描绘的方法500适合于由结构芯片350a-350h响应于单播分组或多播分组的接收而执行的各种操作。此外,图6中描绘的方法600适合于由结构芯片350a-350h响应于多播分组的接收而执行的各种操作。在方法500和方法600中,分组可以包括各种信息,如要将分组传送至的节点芯片的标识(本文中被称为“数据列表”)、结构端口掩码、目的地芯片节点掩码、比特掩码、芯片掩码等。在分组中还可以嵌入“路径索引”,该路径索引选择多个活跃下行链路端口中哪些下行链路端口要被用于将该分组传送至在标识中包含的目的地节点芯片。
首先参考图5,在框502处,通过例如第一结构芯片350a中的第一端口接口112a,从源结构芯片350b将分组接收到结构芯片350a中。结构芯片350a可以通过源结构芯片350b的上行链路端口接收分组。在任何情况下,如图2所示,可以通过接收端口224将分组接收到第一端口接口112a内,可以将分组接收到serdes 222、DIB 220、HSL 210内以及NCR 240a的寄存器206内。
在框504处,例如通过端口解析模块208确定在结构芯片350a中要向着在分组中标识的目的地节点芯片传递分组所依循的路径是不可用的。例如,如果与要传递分组的所选择端口接口相关联的路径是无效的或不可用,则端口解析模块208可以确定路径是不可用的。端口解析模块208可以基于分组的通信未通过端口接口112b-112n被传递的先前标识,进行确定。端口解析模块208还可以通过确定将分组传递至端口接口112b-112n的尝试已经失败来做出该确定。此外或可替代地,如果未从已经尝试将分组传递至的目的地结构芯片接收到确认消息,则端口解析模块208可以确定路径是不可用的。在该示例中,目的地结构芯片上的端口接口可以是无效的或不可用,或者结构芯片350a中的端口接口与目的地结构芯片350h之间的连接已经断开或不可用。
在框506处,对向着不包括源结构芯片350b的目的地节点芯片311-342的另一路径是可用的进行确定。更具体地,例如,端口解析模块208可以确定划分优先级的端口接口列表中要被用作到达目的地节点芯片311-342的上行链路端口的下一可替代端口接口112b-112n是否是可用的。如果下一可替代端口接口12b-112n被确定为可用,则端口解析模块208还可以确定所选择的端口接口是否是活跃的,并且可以响应于所选择的端口接口是不可用的确定,来确定并选择划分优先级的列表中的下一端口接口112b-112n。端口解析模块208可以继续该过程,直至端口解析模块208确定没有在该划分优先级的列表中列出的更多的活跃端口接口或者仅连接至源节点芯片350b的端口接口是可用的。
根据示例,该划分优先级的端口接口列表包含与源结构芯片350b保持通信的端口接口。在该实例中,与源结构芯片350b保持通信的那些端口接口(包括干线链路)被列出为具有最低的优先级,使得与源节点芯片350b保持通信的端口接口是要将分组传递至的端口接口的最后选择。
响应于框506处确定通向目的地节点芯片311-342的另一路径是可用的,如框508处指示的沿另一路径传递分组。更具体地,例如,包含分组的端口接口112a的NCR 204a可以通过单播数据交叉开关124将分组传递至与另一路径对应的所确定的端口接口112b-112n。此外,所确定的端口接口112b-112n可以通过NCX 204b从单播数据交叉开关124接收分组。此外,所确定的端口接口112b-112n输出分组。
然而,响应于框506处确定通向目的地节点芯片311-342的另一路径是不可用的,如框510处指示的将分组传递回至源结构芯片350b。更具体地,例如,包含分组的端口接口112a的NCR 204a可以通过与接收分组的结构端口相同的结构端口将分组传递回至源结构芯片350b。然而,可替代地,在结构芯片350a通过干线链路156-158连接至源结构芯片350b的情况下,端口解析模块208可以确定要将分组传递至干线链路156-158中哪个干线链路,并且NCR 204a可以将分组传递至与所确定的干线链路156-158对应的端口接口112b-112n。基于干线链路156-158在划分优先级的端口接口列表中针对源结构芯片350的列出的顺序,端口解析模块208可以在干线链路156-158之间做出选择。
在任何方面,在块508和块510中任一块处,将分组传递至所确定的端口接口112b-112n。更具体地,例如,包含分组的端口接口112a的NCR 204a可以通过单播数据交叉开关124或多播数据交叉开关126将分组传递至所确定的端口接口112b-112n。此外,所确定的端口接口112b-112n可以通过NCX 204b从单播数据交叉开关124或多播数据交叉开关126接收分组。
在框512处,方法500可以对结构芯片350a结束。此外,从结构芯片350a接收分组的结构芯片350b-350h还可以执行在框502-512中标识的操作。
响应于接收从结构芯片350a返回的分组,源结构芯片350b将选择与结构芯片350a不同的要将分组传递至的结构芯片3530c,并且将分组传递至另一结构芯片350a。更具体地,例如,源结构芯片350b,更具体地是接收分组的端口接口的端口解析模块208,包括标识用于分组到达目的地节点芯片311-342的上行链路端口的划分优先级的端口接口列表。此外,在选择另一结构芯片350c之前,端口解析模块208可以从划分优先级的端口接口列表中移除与第一结构芯片保持通信的端口接口。此外,在源结构芯片350b包括连接至第一结构芯片350a的至少两个端口接口来作为干线154的干线链路156-158的至少两个端口接口的情况下,连接至第一结构芯片350a的至少两个端口接口的源节点芯片350b的至少两个端口接口或者在划分优先级的列表中以最低优先级列出,或者从划分优先级的列表中移除。关于这一点,可以基本上防止分组在第一结构芯片350a与源结构芯片350b之间来回地反弹。
作为要将分组从节点芯片(N4)315传递至节点芯片(N23)334的特定示例,节点芯片(N4)315将分组传递至源结构芯片(FC1)350b的端口(2)或者端口(3)。如上面关于图1介绍的,来自节点芯片315的分组包括要将该分组传送至的节点芯片的列表(数据列表)。在此情况下,该列表仅包括节点芯片(N23)334。此外,从节点芯片315接收分组的端口接口112a的NCR 204a的端口解析模块208在硬件中执行计算,来确定分组为到达目的地节点芯片334将穿过的源结构芯片350b的上行链路端口(0-11)。更具体地,例如,分组可以包括包含目的地和路径信息的迷你分组(MPacket),其中端口解析模块208可以在确定上行链路端口(0-11)时对该目的地和路径信息进行解释。如上面介绍的,分组可以包括控制分组和/或数据分组。控制分组包括至少一个MPacket,而数据分组包括两个或更多个MPacket。
在任何方面,端口解析模块208可以使用该信息来索引到查找表内,该查找表确定结构芯片350b的正确NCI模块202,以进行去往目的地节点芯片334的下一跳。在上面的示例中,端口解析模块208可以确定上行链路端口(1)的NCI模块202是正确的NCI模块202。于是,端口接口112a的NCR 204a可以将分组传递至包含上行链路端口(1)的端口接口112n的NCI模块202。包含上行链路端口(1)的端口接口112n可以将分组传递至与上行链路端口(1)连接的第一结构芯片(FC1)350a。
第一结构芯片(FC1)350a可以通过上行链路端口(0)接收分组,并且包含上行链路端口(0)的端口接口112a的NCR 204a可以使用包含在分组中的信息,来确定要传送该分组的第一结构芯片350a的正确NCI模块202,以进行去往目的地节点芯片334的下一跳。在该示例中,端口解析模块208可以确定上行链路端口(1)的NCI模块202是正确的NCI模块202。然而,端口解析模块208可以确定沿上行链路端口(1)的路径是不可用的。
在关于图4A示出的第一示例中,端口解析模块208可以确定不包括源结构芯片(FC1)350b的另一路径是不可用的。也就是说,在图4A中,在第一结构芯片350a与另一结构芯片350h之间仅存在一个连接,在第一结构芯片350a与源结构芯片350b之间仅存在一个连接。因此,如果第一结构芯片350a与另一结构芯片350h之间的连接是不可用的,则仅存在一个剩余路径,该剩余路径返回至源结构芯片350b。因此,第一结构芯片(FC0)350a可以将分组传递回至源结构芯片(FC1)350b。此外,源结构芯片(FC1)350b可以选择要将分组传送至另一结构芯片(FC2)350c所通过的下一端口接口,并且可以将分组传递至另一结构芯片(FC2)350c。此外,分组可以通过剩余结构芯片350d-350f传播,直至分组到达目的地节点芯片334。
在关于图4B示出的第二示例中,端口解析模块208可以确定第一结构芯片(FC0)350a的端口(11)与另一结构芯片(FC7)350h的端口(10)之间的干线链路158是可以向着目的地节点芯片334传递分组所依循的另一路径。在该示例中,端口解析模块208可以确定沿干线链路158的路径是否是可用的,如果是可用的,则可以沿该路径传递分组。然而,如果确定该路径是不可用的并且任何其它可能的路径也是不可用的,则端口解析模块208可以通过第一结构芯片350a与源结构芯片350b之间的干线链路之一将分组传递回至源结构芯片350b。源结构芯片350b可以接收从第一结构芯片350a返回的分组,并且可以从划分优先级的端口接口列表中移除与第一结构芯片350c链接的端口接口。此外,源结构芯片350b可以选择并且将分组传递至第二结构芯片(FC2),第二结构芯片(FC2)然后可以将分组向着目的地节点芯片334传递。
现在参考图6,在框602处,将来自源结构芯片350b的多播分组接收到结构芯片350a中。在任一事件中,如图2所示,可以通过接收端口224将分组接收到serdes 222、HSL210以及NCR 204a的寄存器206a内。
在框604处,计算可使用的端口接口112a-112n列表。换言之,计算不是不良“U回转”且不是不可用的端口接口112a-112n列表。根据示例,端口解析模块208可以基于例如交换结构300、400、410中的可用路径的标识、接收分组所通过的端口接口的标识等计算可使用的端口接口112a-112n列表。
在框606处,将可使用的端口接口112a-112n列表连同分组一起传递至要接收该分组的端口接口。换言之,端口解析模块208可以根据分组中包含的信息确定可使用的端口接口112a-112n中的哪些要接收该分组,并且通过多播数据交叉开关126利用可使用的端口接口112a-112n列表将分组传递至所确定的端口接口112a-112n,所确定的端口接口112a-112n传输与所需一样多的分组副本。
在框608,通过利用可使用的端口接口列表接收该分组的端口接口对该分组的目的地列表进行修剪。在多播交叉开关126的多个NCX 204b侧对端口解析操作的计算进行重构,以确定哪些目的地节点会在该特定NCX 204b的寄存器206d处终止。这允许修剪逻辑从目的地节点204b的寄存器206c的该特定NCX 204b列表中移除“不会”被映射至该特定NCX204b的所有目的地节点。该行为存在于接收多播分组的复本的每个NCX 204b中,因为在NCR204a的端口解析操作中,每个NCX 204b仅会将该多播分组传播至映射至该NCX 204b的目的地节点。
在框610处,根据分组的被修剪的目的地列表,将该多播分组传送至至少一个第二结构芯片。被传送的多播分组的数量等于在上面的段落中介绍的接收该分组的复本的NCX204b的数量。
在一个方面,由于结构芯片350a-350h控制分组到节点芯片311-342的传送和转发,所以多播分组需要由节点芯片311发送一次,而不是单独地发送至每个目的地节点。这减少在将分组传送至目的地节点芯片311-342时在交换结构300、400和410中消耗的带宽量。
此外,从结构芯片350a接收多播分组的结构芯片350b,和/或被放置在从结构芯片350b起更下游的另一结构芯片350c-350h,要复制该多播分组,以传递至该多播分组的目的地节点芯片。在这一方面,不是通过结构芯片350a-350h之间的链路传递多播分组的多个复本,而是可以通过链路对每个干线传递多播分组的单个复本,并且位于距离源结构芯片350a-350h最远的结构芯片350a-350h可以复制多播分组。这减少在将多播分组传送至目的地节点芯片311-342时在交换结构300、400中消耗的带宽量。此外,当将多播分组传送至目的地芯片节点时,结构芯片350a-350c中的NCX 204b可以从节点芯片的标识中去除接收该多播分组的芯片节点,从而减少或消除多播分组的重复传送尝试。
本文已经描述和图示的是本公开的各个示例,以及它们的一些变化。本文使用的术语、描述和图仅是作为说明阐述的,而不旨在作为限制。在本公开的精神和范围内,许多变化是可能的,其中本公开旨在由下面的权利要求及其等同物限定,其中所有术语从其最广的合理意义上去理解,除非另外指出。
Claims (15)
1.一种用于实施交换结构的方法,所述方法包括:
在包括多个端口接口的第一结构芯片中,其中所述多个端口接口中的每个端口接口被编程有所述多个端口接口与多个目的地节点之间相应的关联列表:
从源结构芯片接收分组,其中所述分组包括目的地节点芯片的标识;
根据所述分组中包含的要接收所述分组的目的地结构芯片的标识,识别所述目的地结构芯片;
确定所述交换结构中要向着所述目的地节点芯片传递所述分组所依循的第一路径是不可用的;
确定所述交换结构中要向着不包括所述源结构芯片的目的地节点芯片传递所述分组所依循的另一路径是否是可用的;
响应于确定所述另一路径是可用的,沿所述另一路径传递所述分组;以及
响应于确定所述另一路径是不可用的,将所述分组传递回至所述源结构芯片,其中接收分组包括:基于相应的所述关联列表中所述目的地节点芯片的标识之间的关联,确定所述多个端口接口中的哪个端口接口要接收所述分组。
2.根据权利要求1所述的方法,进一步包括:
在所述源结构芯片中,
接收从所述第一结构芯片返回的所述分组;
选择要将所述分组传递至的与所述第一结构芯片不同的其它结构芯片;以及将所述分组传递至所述其它结构芯片。
3.根据权利要求2所述的方法,其中所述源结构芯片包括划分优先级的端口接口列表,所述划分优先级的端口接口列表识别用于分组到达目的地节点芯片的上行链路端口,所述方法进一步包括:
在选择与所述第一结构芯片不同的结构芯片之前,从所述划分优先级的端口接口列表中移除与所述第一结构芯片通信的端口接口。
4.根据权利要求3所述的方法,其中所述源结构芯片包括连接至所述第一结构芯片的至少两个端口接口来作为干线的干线链路的至少两个端口接口,并且其中连接至所述第一结构芯片的至少两个端口接口的所述源结构芯片的至少两个端口接口在所述划分优先级的列表中以最低优先级列出或者在接收从所述第一结构芯片返回的分组之后从所述划分优先级的列表中移除。
5.根据权利要求1所述的方法,其中确定要向着所述目的地节点传递所述分组所依循的第一路径是不可用的进一步包括:尝试通过所确定的端口接口将所述分组传递至所述目的地结构芯片,响应于确定所述分组尚未被传递至所述目的地结构芯片,确定要向着所述目的地节点传递所述分组所依循的所述第一路径是不可用的。
6.根据权利要求5所述的方法,其中所述第一结构芯片要通过所述多个端口接口中的第一端口接口接收所述分组,其中所述第一端口接口被编程有所述多个端口接口与多个目的地节点之间的关联列表,并且其中确定所述多个端口接口中的哪个端口接口要接收所述分组进一步包括通过比较所述分组中包含的信息和所述关联列表确定哪个端口接口要接收所述分组。
7.根据权利要求6所述的方法,其中所述第一端口接口被编程有划分优先级的端口接口列表,所述划分优先级的端口接口列表识别用于所述分组到达目的地节点芯片的上行链路端口,并且其中与所述源节点芯片通信的端口接口在所述划分优先级的列表中以最低优先级列出,所述方法进一步包括:
按照在所述划分优先级的端口接口列表中列出的端口接口的优先级顺序,尝试依次通过所述端口接口中的每一个传递所述分组,使得与所述源节点芯片通信的端口接口是要将所述分组传递至的端口接口的最后选择。
8.根据权利要求6所述的方法,其中所述多个端口接口中的至少两个端口接口连接至所述源结构芯片的至少两个端口接口来作为干线的干线链路,其中所述第一端口接口被编程有划分优先级的端口接口列表,所述划分优先级的端口接口列表识别用于所述分组到达目的地节点芯片的上行链路端口,并且其中连接至所述源结构芯片的至少两个端口接口的所述第一结构芯片的至少两个端口接口在所述划分优先级的列表中以最低优先级列出,所述方法进一步包括:
按照在所述划分优先级的端口接口列表中列出的端口接口的优先级顺序,尝试依次通过所述端口接口中的每一个传递所述分组,使得与所述源节点芯片的至少两个端口接口通信的至少两个端口接口是要将所述分组传递至的端口接口的最后选择。
9.根据权利要求5所述的方法,其中所述分组包括多播分组,所述方法进一步包括:
计算可使用的端口接口列表;
将所述可使用的端口接口列表与所述分组一起传递至要接收所述分组的所确定的端口接口;
在所确定的端口接口处,利用所述可使用的端口接口列表修剪所述分组的目的地列表;以及
根据所述分组的被修剪的目的地列表,将所述多播分组传送至至少一个第二结构芯片。
10.一种交换结构,包括:
源结构芯片;
目的地节点芯片;以及
第一结构芯片,从所述源结构芯片接收分组,其中所述第一结构芯片包括多个端口接口,所述多个端口接口中的每个端口接口被编程有所述多个端口接口与多个目的地节点之间相应的关联列表,并且其中所述分组包括所述目的地节点芯片的标识,所述第一结构芯片包括端口解析模块,所述端口解析模块将:
根据所述分组中包含的要接收所述分组的目的地结构芯片的标识,识别所述目的地结构芯片;
基于相应的所述关联列表中所述目的地节点芯片的标识之间的关联,确定所述多个端口接口中的哪个端口接口要接收所述分组;
确定所述交换结构中要向着所述目的地节点芯片传递所述分组所依循的第一路径是不可用的;
确定所述交换结构中要向着不包括所述源结构芯片的目的地节点芯片传递所述分组所依循的另一路径是否是可用的;
响应于确定所述另一路径是可用的,沿所述另一路径传递所述分组;以及
响应于确定所述另一路径是不可用的,将所述分组传递回至所述源结构芯片。
11.根据权利要求10所述的交换结构,所述源结构芯片包括源端口解析模块,所述源端口解析模块将接收从所述第一结构芯片返回的分组,选择要将所述分组传递至的与所述第一结构芯片不同的其它结构芯片,并且将所述分组传递至所述其它结构芯片。
12.根据权利要求10所述的交换结构,其中所述源结构芯片包括划分优先级的端口接口列表,所述划分优先级的端口接口列表识别用于分组到达目的地节点芯片的上行链路端口,并且其中所述端口解析模块在选择与所述第一结构芯片不同的结构芯片之前从所述划分优先级的端口接口列表中移除与所述第一结构芯片通信的端口接口。
13.根据权利要求12所述的交换结构,其中所述源结构芯片包括连接至所述第一结构芯片的至少两个端口接口来作为干线的干线链路的至少两个端口接口,并且其中连接至所述第一结构芯片的至少两个端口接口的所述源结构芯片的至少两个端口接口在所述划分优先级的列表中以最低优先级列出或者在接收从所述第一结构芯片返回的所述分组之后从所述划分优先级的列表中移除。
14.一种结构芯片,包括:
多个端口接口,其中所述多个端口接口中的每一个被编程有所述多个端口接口与多个目的地节点之间相应的关联列表,并且包括具有端口解析模块的网络芯片接口(NCI)模块;
交叉开关模块,与所述多个端口接口中的所述NCI模块中的每一个通信地联接;
其中所述结构芯片将通过所述多个端口接口中的一个端口接口从源结构芯片接收分组,其中所述分组包括目的地节点芯片的标识,并且其中所述多个端口接口中的所述一个端口接口的端口解析模块将:
根据所述分组中包含的要接收所述分组的目的地结构芯片的标识,识别所述目的地结构芯片;
基于相应的所述关联列表中所述目的地节点芯片的标识之间的关联,确定所述多个端口接口中的哪个端口接口要从所述NCI模块接收所述分组;
确定交换结构中要向着所述目的地节点芯片传递所述分组所依循的第一路径是不可用的;
确定所述交换结构中要向着不包括所述源结构芯片的目的地节点芯片传递所述分组所依循的另一路径是否是可用的;
响应于确定所述另一路径是可用的,沿所述另一路径传递所述分组;以及
响应于确定所述另一路径是不可用的,将所述分组传递回至所述源结构芯片。
15.根据权利要求14所述的结构芯片,其中确定要向着所述目的地节点传递所述分组所依循的所述第一路径是不可用的包括:尝试通过所确定的端口接口将所述分组传递至所述目的地结构芯片,响应于确定所述分组尚未被传递至所述目的地结构芯片,确定所述第一路径是不可用的。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2011/053705 WO2013048391A1 (en) | 2011-09-28 | 2011-09-28 | Implementing a switch fabric responsive to an unavailable path |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103765825A CN103765825A (zh) | 2014-04-30 |
CN103765825B true CN103765825B (zh) | 2017-02-15 |
Family
ID=47996137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180073139.3A Active CN103765825B (zh) | 2011-09-28 | 2011-09-28 | 响应于不可用的路径实施交换结构 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9479391B2 (zh) |
EP (1) | EP2761817A4 (zh) |
CN (1) | CN103765825B (zh) |
WO (1) | WO2013048391A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9287208B1 (en) | 2014-10-27 | 2016-03-15 | Intel Corporation | Architecture for on-die interconnect |
CN111382858A (zh) * | 2018-12-29 | 2020-07-07 | 上海寒武纪信息科技有限公司 | 数据发送方法、装置及相关产品 |
CN113079090A (zh) * | 2020-01-06 | 2021-07-06 | 华为技术有限公司 | 一种流量传输的方法、节点和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1482769A (zh) * | 2002-09-13 | 2004-03-17 | 华为技术有限公司 | 基于以太网接入平台的主备倒换与负荷分担系统及方法 |
US7167441B2 (en) * | 2001-12-22 | 2007-01-23 | 3Com Corporation | Cascade control system for network units |
CN101047538A (zh) * | 2006-03-31 | 2007-10-03 | 上海贝尔阿尔卡特股份有限公司 | 基于以太网交换的数据链路的无缝切换系统及其方法 |
US7428209B1 (en) * | 2001-06-12 | 2008-09-23 | Roberts Lawrence G | Network failure recovery mechanism |
CN101631080A (zh) * | 2009-08-14 | 2010-01-20 | 重庆邮电大学 | 基于epa协议的工业以太网交换机和报文转发方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6333929B1 (en) * | 1997-08-29 | 2001-12-25 | Intel Corporation | Packet format for a distributed system |
US7430164B2 (en) * | 1998-05-04 | 2008-09-30 | Hewlett-Packard Development Company, L.P. | Path recovery on failure in load balancing switch protocols |
US6728777B1 (en) | 1999-06-02 | 2004-04-27 | Nortel Networks Limited | Method for engineering paths for multicast traffic |
WO2002065661A1 (en) | 2001-02-12 | 2002-08-22 | Maple Optical Systems, Inc. | System and method for fast-rerouting of data in a data communication network |
US7042877B2 (en) * | 2001-04-27 | 2006-05-09 | The Boeing Company | Integrated analysis of incoming data transmissions |
US6532212B1 (en) * | 2001-09-25 | 2003-03-11 | Mcdata Corporation | Trunking inter-switch links |
US7164652B2 (en) | 2001-12-17 | 2007-01-16 | Alcatel Canada Inc. | System and method for detecting failures and re-routing connections in a communication network |
US7660239B2 (en) * | 2003-04-25 | 2010-02-09 | Alcatel-Lucent Usa Inc. | Network data re-routing |
GB2406742B (en) | 2003-10-03 | 2006-03-22 | 3Com Corp | Switching fabrics and control protocols for them |
US7680107B2 (en) | 2004-11-30 | 2010-03-16 | Broadcom Corporation | High speed trunking in a network device |
-
2011
- 2011-09-28 EP EP11873283.3A patent/EP2761817A4/en not_active Withdrawn
- 2011-09-28 US US14/239,837 patent/US9479391B2/en active Active
- 2011-09-28 WO PCT/US2011/053705 patent/WO2013048391A1/en active Application Filing
- 2011-09-28 CN CN201180073139.3A patent/CN103765825B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7428209B1 (en) * | 2001-06-12 | 2008-09-23 | Roberts Lawrence G | Network failure recovery mechanism |
US7167441B2 (en) * | 2001-12-22 | 2007-01-23 | 3Com Corporation | Cascade control system for network units |
CN1482769A (zh) * | 2002-09-13 | 2004-03-17 | 华为技术有限公司 | 基于以太网接入平台的主备倒换与负荷分担系统及方法 |
CN101047538A (zh) * | 2006-03-31 | 2007-10-03 | 上海贝尔阿尔卡特股份有限公司 | 基于以太网交换的数据链路的无缝切换系统及其方法 |
CN101631080A (zh) * | 2009-08-14 | 2010-01-20 | 重庆邮电大学 | 基于epa协议的工业以太网交换机和报文转发方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103765825A (zh) | 2014-04-30 |
EP2761817A4 (en) | 2015-06-10 |
US9479391B2 (en) | 2016-10-25 |
WO2013048391A1 (en) | 2013-04-04 |
US20140211609A1 (en) | 2014-07-31 |
EP2761817A1 (en) | 2014-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103858391B (zh) | 在转发层面针对无连接的mpls网络使mpls路径环回 | |
CN102724098B (zh) | 航空电子设备全双工交换以太网相兼容的通信交换机 | |
CN102415065B (zh) | 在有路由的网络中冗余主机连接的方法和装置 | |
CN101296186B (zh) | 一种路由交换设备、方法和交换线卡板 | |
CN105391567B (zh) | 流量管理实现方法、装置和网络设备 | |
CN102957616B (zh) | 在asic中转发trill网络报文的方法及系统 | |
CN104247341B (zh) | 分布式交换机及其多播树层次结构的动态优化方法 | |
CN102217238A (zh) | 应用于mpls网络的服务实例 | |
JPH0372739A (ja) | 通信システムおよびそのデータ通信制御方法 | |
CN104348735B (zh) | 堆叠系统中的报文转发方法及装置 | |
US20140211630A1 (en) | Managing packet flow in a switch faric | |
JP2003046547A (ja) | パケット転送方法およびパケット送受信装置 | |
CN103765825B (zh) | 响应于不可用的路径实施交换结构 | |
CN101459602A (zh) | 一种在分组传送网络中传送管理和控制信息的装置及方法 | |
CN103597789A (zh) | 具有端口解析模块的结构芯片 | |
CN109479031A (zh) | 用于在网络设备中处理分组的方法和装置 | |
CN103609063B (zh) | 协议无关组播最后一跳路由器发现的方法及设备 | |
CN109150731A (zh) | 基于卷积神经网络的多播包连接电路及其路由方法 | |
CN102006231B (zh) | 建立数据业务网元智能路由的方法、装置及数据业务传输设备 | |
CN105830402B (zh) | 分组转发系统、控制装置及中继设备的控制方法和程序 | |
CN107070791A (zh) | 一种sdn网络系统及其数据传输方法 | |
CN103597788B (zh) | 具有干线链路的结构芯片 | |
CN105122744B (zh) | 通过按需路径更新的msdc扩展 | |
CN105871761A (zh) | 一种高阶矩阵开关、片上网络及通信方法 | |
US8315254B2 (en) | Bandwidth management switching card |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20160818 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, Limited Liability Partnership |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |