CN1571417A - 网络数据重新路由 - Google Patents
网络数据重新路由 Download PDFInfo
- Publication number
- CN1571417A CN1571417A CNA2004100639346A CN200410063934A CN1571417A CN 1571417 A CN1571417 A CN 1571417A CN A2004100639346 A CNA2004100639346 A CN A2004100639346A CN 200410063934 A CN200410063934 A CN 200410063934A CN 1571417 A CN1571417 A CN 1571417A
- Authority
- CN
- China
- Prior art keywords
- data
- cell
- multilink
- switch architecture
- link
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 33
- 230000001360 synchronised effect Effects 0.000 claims description 24
- 230000005540 biological transmission Effects 0.000 claims description 13
- 125000004122 cyclic group Chemical group 0.000 claims description 2
- 238000004590 computer program Methods 0.000 claims 2
- 238000007689 inspection Methods 0.000 claims 1
- 239000004744 fabric Substances 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000875 corresponding effect Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
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/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
-
- 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
- H04L45/247—Multipath using M:N active or standby paths
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- 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
- H04L49/1515—Non-blocking multistage, e.g. Clos
- H04L49/153—ATM switching fabrics having parallel switch planes
-
- 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
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5625—Operations, administration and maintenance [OAM]
- H04L2012/5627—Fault tolerance and recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
通过交换机结构传送数据包括:对于每个要进行传送的数据单元,选择从结构接入节点到交换机结构的多条链路中的一条传送数据单元;以及在多条链路中的一条或一条以上变为不可用以使一条或一条以上余下链路保持可用于传送数据的情况下,通过余下链路中的一条传送随后接收的数据单元。
Description
本申请要求2003年4月25日申请的、题目为“AN IMPROVEDNETWORK SWITCH AND FABRIC ACCESS ARCHITECTURE”的美国临时专利申请60/465,652的优先权,其在此为了所有的目的引入作为参考。
本申请与共同未决的、于2003年12月18日申请的、题目为“SWITCHFABRIC ACCESS SCHEDULER”的美国专利申请10/740,720相关,其在此为了所有的目的引入作为参考,还与共同未决的、与本申请一起同时申请的、题目为“DADA SWITCHING USING SOFT CONFIGURATION”的美国专利申请10/831,628(代理卷号137780)相关,其在此为了所有的目的引入作为参考。
技术领域
本发明一般涉及数据网络。更具体地说,公开了数据交换。
背景技术
在数据通信网络中,路由器、交换机或其它合适的设备经常被用于从源向目的地传送数据。许多高速系统典型地利用带有多条链路且每条链路将一个源地址连接到一个目的地地址的交换机结构来交换数据。如果任何一条链路出故障,典型地可以基于软件指令重新路由数据。用软件重新路由数据经常降低系统的性能,因此是不希望的。而且,一些现有的系统利用分成数据信元和通过多条链路传送信元的带状结构,因此在一条链路上出故障可能导致系统性能的指数降级。如果在链路出故障的情况下数据的重新路由可以被更有效地执行,而不进一步降低系统性能,将是有益的。如果在结构的任何链路出故障的情况下,其性能的降低更为适度,也将是所期望的。
发明内容
本发明提供了一种通过交换机结构传送数据的方法,包括:
对于每个要进行传送的数据单元,选择从结构接入节点到交换机结构的多条链路中的一条来传送数据单元;
在多条链路中的一条或一条以上变为不可用以使一条或一条以上余下的链路保持可用于传送数据的情况下,通过余下的链路中的一条传送随后接收的数据单元。
附图说明
在接下来的详细描述和附图中公开了本发明的各种实施例。
图1A是说明了配置成交换带状信元的交换系统实施例的图。
图1B说明了非带状交换机结构的实施例。在此例中,信元,例如150-156,没有被细分。
图2是说明在一个实施例中应用的交换机平台的框图。
图3是根据一些实施例说明在源端口和目的地端口之间的数据传送的图。
图4是根据图3所示的实例说明在信元被交换之前对信元的处理的流程图。
图5是根据一些实施例说明在信元正在交换时对信元的处理的流程图。
图6是根据一些实施例说明在信元被目的地端口接收之后对信元的处理的流程图。
图7是说明在一个实施例中应用的交换系统的图。
图8是根据一些实施例说明连接的初始化过程的流程图。
图9是说明在一个实施例中当在结构接入节点检测到出口链路出故障时该结构接入节点的操作的流程图。
图10是说明当在远端结构接入节点检测到出口链路出故障时交换机平台实施例的操作的流程图。
图11是说明当由交换机平台检测到出口链路出故障时该交换机平台实施例的操作的流程图。
图12是说明在一个实施例中当在交换机平台检测到出口链路出故障时结构接入节点的操作的流程图。
图13是说明在一些实施例中、在结构接入节点上执行以通过交换机结构发送数据的过程的流程图。
具体实施方式
本发明可以以多种方式实现,包括例如过程、装置、系统、物质组成、诸如计算机可读存储介质这样的计算机可读介质或者计算机网络,其中程序指令通过光或电通信链路发送。在本说明书中,这些实现方案,或本发明可能采用的任何其它形式,都可以称为技术。一般地,所公开过程的步骤的顺序可以在本发明范围内改变。
下面连同说明本发明原理的附图一起提供了本发明一个或多个实施例的详细说明。本发明是结合这些实施例进行描述的,但本发明不局限于任何一个实施例。本发明的范围仅仅由权利要求书限定,本发明包含了多种变化、修改和等价替换。在下面描述中阐明了许多特定细节以便提供对本发明的详尽理解。这些细节为举例的目的而提供,本发明可以根据权利要求书在没有这些特定细节的一些或全部的情况下实行。为清楚起见,与本发明相关的技术领域内已知的技术材料没有进行详细描述,以免使本发明被不必要地混淆。
公开了数据交换。在一些实施例中,数据通过到交换机结构的多条链路从源传送到目的地。如果其中一条链路不可用,数据可以通过余下的链路被连续地从源发送到目的地。指示链路不可用的反压(backpressure)信息可以被发送到数据源。
在一些交换系统中,数据分组被细分成信元,然后通过交换机结构进行发送。如在这里用到的,信元指的是被传送数据的单元;其它的数据单元也可能被用到。在不同实施例中,信元的长度可以是固定或变化的。信元可以是带状或非带状的。图1A是说明了配置成交换带状信元的交换系统实施例的图。在这个实例中,信元100到106每个被分成穿过链路110到116散开的几部分。划分每个信元所穿过的链路数以及由此的信元部分的数目可能随不同实施例变化。链路是配置成从它们的源向它们的目的地传送信元的物理连接。链路的集合和它们的互连称作交换机结构。在带状结构中,例如图1A所示的交换机结构,包括每个信元的数据段通过链路以同步方式被传送,以便这些段可以被组装以重建原始的信元。在本例中,用于交换信元的链路集合用作单个的交换机平台。其中一条链路负责作出交换判决,例如,恰好具有包含信元控制信头和/或目的地地址数据的部分的哪个,那条链路把判决传达给被交换信元带状穿过的其它链路。
图1B说明了非带状交换机结构的实施例。在这个实例中,信元例如150-156没有被细分。每个信元作为一个整体通过链路例如链路160-166中的一条进行传送。链路的数目可以根据实现方案而不同。链路不需要同步,信元可以无序到达目的地,然后被重新排序。在这种情况下,链路间不需要同步或通信。因此,从链路接收数据的交换机结构可用作是独立的子结构的集合。
图2是说明在一个实施例中应用的交换机平台的框图。在这个实例中,端口200-206是可以为传送数据目的寻址的逻辑源或目的地。每个端口可以通过交换机平台向其中一个具有到交换机平台的链路的端口发送数据,或者从交换机平台接收自其中一个具有到交换机平台的链路的端口发送到该交换机平台的数据。端口可以和一个或多个结构接入设备,例如结构接入电路或芯片相关。信元通过交换机平台212被从它的源端口传送到它的目的地端口。如在这里用到的,交换机平台指的是交换路径的集合,通过这种路径集合,数据可以被从任何一个具有到交换机平台的链路的端口发送到任何一个具有到交换机平台的链路的端口。交换机平台可以实现为包括多个交叉连接点的电路,其中每个交叉连接点将一个输入和一个输出连接起来,并为信元提供交换路径。交换机结构可能包括一个或多个交换机平台。交换机结构可以用一个或多个物理的交换机设备来实现,例如一个或多个集成电路,而且每个这样的设备可以根据配置(例如每个端口具有的到该设备的链路的数目)包括一个或多个交换机平台。
在所示实例中,在每个端口和交换机平台之间具有双向连接。每个双向连接包括用于从端口向交换机平台传送数据的入口链路(例如入口链路208、入口链路216),以及用于向其目的地传送已被交换机平台交换的数据的出口链路(例如出口链路210和出口链路214)。例如,源端口为206和目的地端口为202的数据信元被从端口206通过入口链路208发送到交换机平台212。接着交换机平台交换数据信元并在出口链路214上发送该信元。数据信元最后到达它的目的地端口202。在一些实施例中,例如链路可用性、反压等控制信息可以包含在通过出口链路发送到端口的信元的信头中。控制信息的细节和它的使用下面进行论述。
图3是根据一些实施例说明在源端口和目的地端口之间的数据传送的图。在这个实例中,数据信元通过交换机302被从源端口206传送到目的地端口202。相应的入口和出口链路分别是208和214。数据信元被处理成在不同时候包括合适的信头。尤其地,端口将入口控制信头312加到净负荷310的前面,其被交换机302重新拆卸和处理。交换机302将出口控制信头316加到净负荷310的前面,并向目的地端口202发送信元,目的地端口202拆除和处理出口控制信头316,并将净负荷310传送到它想要去的目的地。过程的细节将在图4-6中论述。
图4是根据图3所示的实例,说明在信元被交换之前对信元的处理的流程图。在这个实例中,一旦接收到信元的净负荷数据(310)(400),入口控制信头(312)被加到净负荷数据的前面(402)。入口控制信头(312)可能包括用于在接收端(例如交换机)确定和入口链路相关的出口链路的可用性的同步标志,如在下面更充分描述的,和与入口链路相关的出口链路相关的反压信息(例如,通知交换机端口当前不能在入口链路接收信元)、净负荷的描述、目的地的描述、以及其它适当的信息或者其组合。信息也可以被加到净负荷后或者以一些其它的合适格式安排。结果的信元接着被发送到交换机(404)。
图5是根据一些实施例说明在信元正在交换时对信元的处理的流程图。在这个实例中,包括净负荷(例如310)和入口控制信头(312)的信元被接收(500)。分析入口控制信头(501),接着拆除其(502)。基于包括在入口控制信头中的信息,确定与目的地端口相关的合适的出口链路,并且净负荷被交换到链路(504)。出口控制信头(316)被加到净负荷的前面(506),新形成的信元被通过合适的出口链路发送到它的目的地端口(508)。出口信头可以包括指示与出口链路相关的入口链路的同步状态的同步标志,同与出口链路相关的入口链路相关的反压信息(例如,通知端口不要通过入口链路发送寻址到特定目的地的信元,关于该目的地,交换机正在接收反压),净负荷的描述,源的描述,以及其它适当的信息或者其组合。信息也可以被加到净负荷后或者以一些其它的合适格式被安排。
图6是根据一些实施例说明在信元被目的地端口接收之后对信元的处理的流程图。在这个实例中,一旦从交换机接收到数据信元(600),它的控制信头被拆卸(602)。接着信元数据的净负荷被从结构接入设备发送出去,且如果有必要,被进一步处理(604)。
图7是说明在一个实施例中应用的交换系统的图。在这个实例中,多个结构接入节点1到M(700-706)耦合到交换机结构712。交换机结构712包括多个交换机平台1到N(714-718)。每个交换机平台可以独立地交换整个(非带状)信元,而不需要和其它交换机平台同步。每个结构接入节点通过双向连接(例如,入口链路708和它的相关的出口链路包括在结构接入节点700和交换机平台716之间的双向连接,出口链路710和它的相关的入口链路包括在结构接入节点706和交换机平台714之间的双向连接)和每个交换机平台相连。在这个实例中,每个结构接入节点和一个端口相关并用于服务这个端口。通过图7所示的连接信元从源端口传送到目的地端口。接入节点(端口)和交换机平台的实际数目取决于实现方案,可能随不同实施例而变化。
拥塞或者与链路有关的其它问题可能阻止信元被传送到适当的目的地。不能在入口或出口方向上传送其数据的双向连接被认为是出现了故障。在一个实施例中,这保证了仅当相应的返回链路可用于向发送端传送流量控制(例如反压或同步状态)信息时,数据在链路(入口或出口)上发送。在一个实施例中,在这种故障的情况下,信元自动地被路由到替代的路径,不再在出故障的连接上发送,如下面更充分描述的那样。在一些实施例中,在结构接入节点和交换机平台之间维护的链路质量状态机用于确定哪些链路可用。链路质量状态机可以作为处理器、逻辑电路或其它相应的硬件、软件、固件或其组合来实现。在一些实施例中链路质量状态机与结构接入节点和/或交换机结构集成在一起,而在一些实施例中作为一个单独的部件来实现。
图8是根据一些实施例说明连接的初始化过程的流程图。发送方通过与连接相关的链路向接收方发送同步码元(800)。初始化过程可以在入口方向或者出口方向启动。换句话说,如果结构接入节点是发送方,则接收机平台是接收方,反之亦然。在一些实施例中,同步码元是8B/10B IDLE码元。也可以用其它类型的、适合于同步化链路的码元。如果在远端的接收方接收到同步码元,它将设置一个内部标志指示在接收方正在从远端的发送方接收良好的同步码元。一旦在接收端的发送方被启用,它将开始向远端(例如,它从中接收同步码元的那端)发送空闲信元(没有净负荷,但有正确形成的控制信头)。在一些实施例中将设置为真的同步标志包含于空闲信元的控制信头部分中。
在发送端(即,上面描述为发送空闲信号的那端),确定在超时发生前是否接收到响应(802)。在一些实施例中,在步骤802检查的响应是正确形成的空闲信元(或其它信元)。如果超时之前没有接收到响应,那么接收方可能没有接收到同步码元,或者响应可能丢失。这样,发送方再次发送同步码元(800)。但是,如果及时接到了响应,则确定响应中的同步标志是否设定为真(804)。如果同步标志没有设定为真,这指示接收方没有正确接收同步码元。这样,同步码元被再次发送(800)。但是,如果同步标志被设定为真,则确定远端接收方已经正确地接收了同步码元。此时,链路被初始化,信元可以在双向连接的两个方向上传送。发送方接着设定它的内部状态为真(806)。该内部状态指示发送方是否正在从接收方接收正确形成的信元。当发送方准备发送下一个信元时,包含在下一信元信头中的同步标志被设置为与发送方内部状态相同的值(808)。在这种情况下,同步标志通知远端接收机正在从远端接收正确形成的信元,这样建立了双向连接。接着通过链路信元被发送到接收方(810)。
图9是说明在一个实施例中当在结构接入节点检测到出口链路出故障时该结构接入节点的操作的流程图。在这个实例中,和出口链路例如图7中的链路710相关的问题由结构接入节点例如图7中的706来检测(800)。有各种方法可检测链路问题。在一些实施例中,根据一系列编码标准例如8B/10B对数据信元进行编码,每个数据信元包括用于错误检测的循环冗余校验和(CRC)。如果信元是通过有问题的链路传送的,很有可能检测到错误。通过基于接收的信元数据执行计算,结构接入节点可以检测错误并确定是否有链路故障。如果节点停止接收正确的8B/10B的空闲信号,也可能在结构接入节点检测到问题。当检测出任何链路问题,结构接入节点设置它的内部状态为假(902)。当下一个信元准备在入口链路向交换机平台发送时,它的同步标志根据内部状态来设置(904)。接着信元被发送到交换机平台(906)。当信元由交换机平台接收并检测到同步标志时,出口链路由交换机平台标记为不可用,反压信息被发送到其它的结构接入节点以阻止它们通过这条链路向这个目的地发送更多的数据(908)。数据仍可以被发送到其它可用的端口和/或链路。
图10是说明当由远端结构接入节点检测到出口链路出故障时交换机平台实施例的操作的流程图。交换机平台接收信元(1000),确定它的同步链路是否被设置为假(1002)。如果信元中的同步标志没有被设置为假,这指示结构接入节点在出口链路上没有检测出任何问题。交换机结构接着转发该信元,并等待更多要到达的信元(1004)。但是,如果同步标志被确定为假,它指示出口链路不可用(1006)。相应地,交换机平台将它的内部状态从真转变为假(1008)。反压信息接着被提供给与不可用出口链路相关的源(1010)。反压信息向源指示与出口链路相关的链路不可用,源会停止通过该交换平台向与该链路相关的端口发送数据。保留在与该链路相关的出口链路或缓冲器中的信元被丢弃(1012)。
图11是说明当由交换机平台检测到入口链路出故障时该交换机平台实施例的操作的流程图。在这个实例中,检测到入口链路上有问题(1100)。该问题可以通过,例如,检测同步的丢失或检测在与该入口链路相关的出口链路上接收到的信元中的CRC错误而检测出来。用于有故障的入口链路的交换机平台的内部状态标志由真变为假(1102)。当下一信元变为可用来向与出故障的入口链路相关的结构接入节点发送时,该信元的同步标志被设置为假以反映内部状态的变化(1104)。下一个信元经过出口链路被发送到结构接入节点(1106)。反压信息接着被发送到所有其它可能的源,来通知源停止利用这条已变为不可用的链路(1108)。任何保留在这条不可用链路或其相关的缓冲器中的信元被引出(1110)。
图12是说明在一个实施例中当在交换机平台检测到出口链路出故障时结构接入节点的操作的流程图。在这个实例中,结构接入节点在到交换机平台的出口链路上接收信元(1200),并检查信元信头,以确定它的同步标志是否被设置为假(1202)。如果该同步标志不是假,则与接收这个信元的出口链路相关的入口链路运行正常,信元像平常一样发送,结构接入节点等待接收更多的信元(1204)。但是,如果同步标志为假,这指示入口链路不可用(1206)。接着结构接入节点将它的内部状态从真转变为假(1208)。入口链路标记为不可用(1210)。相应地,结构接入节点将停止在标记的入口链路上发送净负荷信元(1212)。
图13是说明在一些实施例中、在结构接入节点上执行以通过交换机结构发送数据的过程的流程图。在这个实例中,数据通过多个到结构上的链路发送到交换机结构,每条链路提供接入到可能被结构接入节点用来向具有到交换机平台的链路的结构接入节点发送数据的交换机平台。
当信元可被发送到交换机结构时,确定从交换机接入节点到交换机结构的链路是否可用(1302)。在一些实施例中,交换机结构是非带状的,结构接入节点根据例如在上文引入作为参考的美国专利申请10/740,720中公开的调度过程调度链路来发送信元。根据这样的调度过程或任何其它合适的选择过程,被检查为可用的链路可以被选择。
如果链路被确定是可用的,则信元通过这条链路被传送(1304)。否则,多条链路中的另一条被检查以确定其是否可用(1306)。如果另一条链路可用,它被用于传送该信元(1304)。但是,如果该链路不可用,重复该过程以确定是否任何一条余下的链路可用(1306),直到找到一条可用链路。任选地,当一条链路被确定为不可用,一个指示可被发送到数据源以阻止还有数据被传送到该不可用的链路。该指示可以是相应出口链路上同步的丢失,或在结构接入节点检测到在出口链路上接收的信元中的错误(如图9中所示的步骤900),或者在出口链路上接收到的信元中检测到被设置为假的同步状态标志(如图12中的步骤1202和1206)。结构接入节点可以继续通过余下的可用链路向交换机结构发送数据。在一个实施例中,这是通过继续调度要通过余下的可用链路发送的信元,而不调度要通过不可用链路发送的信元完成的。以这种方式,单个链路的丢失不会导致和交换机结构相连的任何其它链路的损失,最小化了链路故障对结构接入节点发送数据到与交换结构相关的节点的能力的影响。
在一个实施例中,结构接入节点可以有最多2N条链路连到交换机结构,这里N代表维持线路速率数据流所需要的链路的数目。由于象这里描述这样配置的结构接入节点可使用任意数量的链路,从1到最大值,因此仅仅通过给接入节点提供到交换机结构的N+1到2N条链路(根据想要的冗余水平),可以自动支持从N+1到2N的冗余,而不需要任何软件干预。例如,如果需要8条链路维持线路速率数据流,可以通过提供给结构接入节点到交换机结构的9条链路,根据例如上文描述的调度过程通过所有9条链路发送数据,并在如上所述的9条链路中的一条出故障的情况下自动地通过余下的8条链路继续发送数据来提供N+1冗余。
虽然为了清楚说明起见,对前述的实施例已经以一些细节进行了描述,但本发明不局限于提供的这些细节。有许多可选的方式实现本发明。公开的实施例是示例性的,而不是限制性的。
Claims (21)
1.一种通过交换机结构传送数据的方法,包括:
对于每个要进行传送的数据单元,选择从结构接入节点到交换机结构的多条链路中的一条来传送数据单元;
在多条链路中的一条或一条以上变为不可用以使一条或一条以上余下的链路保持可用于传送数据的情况下,通过余下的链路中的一条传送随后接收的数据单元。
2.如权利要求1所述的通过交换机结构传送数据的方法,其中数据包括多个信元。
3.如权利要求1所述的通过交换机结构传送数据的方法,其中数据包括多个非带状信元。
4.如权利要求1所述的通过交换机结构传送数据的方法,其中交换机结构包括多个交换机平台。
5.如权利要求1所述的通过交换机结构传送数据的方法,其中第一链路是双向连接的一部分。
6.如权利要求1所述的通过交换机结构传送数据的方法,其中第一链路是包括入口链路和出口链路的双向连接的一部分。
7.如权利要求1所述的通过交换机结构传送数据的方法,进一步包括接收多条链路中的一条已变为不可用的指示。
8.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条链路中的一条已变为不可用的指示包括在与多条链路中的一条相关的出口链路上从交换机结构接收信元,该信元包含指示多条链路中的一条已出故障的数据。
9.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条链路中的一条已变为不可用的指示包括在与多条链路中的一条相关的出口链路上从交换机结构接收信元,该信元包含指示多条链路中的一条已出故障的同步标志。
10.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条键路中的一条已变为不可用的指示包括在与多条链路中的一条相关的出口链路上从交换机结构接收信元,该信元包含指示与多条链路中的一条相关的所述出口链路已出故障的同步标志。
11.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条链路中的一条已变为不可用的指示包括在与多条链路中的一条相关的出口链路上从交换机结构接收信元,在该信元中检测出错误。
12.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条链路中的一条已变为不可用的指示包括在与多条链路中的一条相关的出口链路上从交换机结构接收信元,在该信元中通过对信元执行循环冗余校验检测出错误。
13.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条链路中的一条已变为不可用的指示包括检查关于与多条链路中的一条相关的出口链路的同步丢失。
14.如权利要求7所述的通过交换机结构传送数据的方法,其中接收多条链路中的一条已变为不可用的指示包括在与多条链路中的一条相关的出口链路上接收反压信息。
15.如权利要求1所述的通过交换机结构传送数据的方法,进一步包括向交换机结构发送指示符,其中该指示符指示多条链路中的一条不可用。
16.如权利要求1所述的通过交换机结构传送数据的方法,进一步包括向数据源发送反压信息,其中该反压信息指示多条链路中的一条不可用,以及数据源应阻止更多数据传送到该不可用的链路。
17.如权利要求1所述的通过交换机结构传送数据的方法,在多条链路中的一条或一条以上变为不可用的情况下,进一步包括停止向一条或一条以上不可用的链路发送数据。
18.如权利要求1所述的通过交换机结构传送数据的方法,其中多条链路中的每一条都连接在结构接入节点和交换机结构之间。
19.如权利要求1所述的通过交换机结构传送数据的方法,进一步包括:在余下链路中的一条或一条以上变为不可用以使一条或一条以上仍余下链路保持可用于传送数据的情况下,通过仍余下链路中的一条传送另一个随后接收的数据单元。
20.一种网络结构接入设备,包括:
耦合到交换机结构和结构接入节点的多条链路,其中:
对于每个待传送的数据单元,选择多条链路中的一条传送该数据单元;
在多条链路中的一条或一条以上变为不可用以使一条或一条以上余下链路保持可用于传送数据的情况下,通过余下链路中的一条传送随后接收的数据单元。
21.一种用于控制注册重叠的计算机程序产品,该计算机程序产品体现在计算机可读介质上,且包括用于以下的计算机指令:
对于每个待传送的数据单元,选择从结构接入节点到交换机结构的多条链路中的一条传送该数据单元;
在多条链路中的一条或一条以上变为不可用以使一条或一条以上余下链路保持可用于传送数据的情况下,通过余下链路中的一条传送随后接收的数据单元。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US46565203P | 2003-04-25 | 2003-04-25 | |
US60/465,652 | 2003-04-25 | ||
US10/831,629 | 2004-04-23 | ||
US10/831,629 US7660239B2 (en) | 2003-04-25 | 2004-04-23 | Network data re-routing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1571417A true CN1571417A (zh) | 2005-01-26 |
CN1571417B CN1571417B (zh) | 2011-06-29 |
Family
ID=33303264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004100639346A Expired - Fee Related CN1571417B (zh) | 2003-04-25 | 2004-04-26 | 网络数据重新路由 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7660239B2 (zh) |
EP (1) | EP1501246B1 (zh) |
CN (1) | CN1571417B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10205630B2 (en) | 2013-12-31 | 2019-02-12 | Huawei Technologies Co., Ltd. | Fault tolerance method for distributed stream processing system |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070109015A1 (en) * | 2005-11-15 | 2007-05-17 | Alcatel | Switched integrated circuit connection architectures and techniques |
GB2458952B (en) * | 2008-04-04 | 2012-06-13 | Micron Technology Inc | Queue processing method |
US8923277B1 (en) * | 2010-12-15 | 2014-12-30 | Juniper Networks, Inc. | Methods and apparatus related to flexible physical interface naming in a distributed switch fabric system |
CN103765825B (zh) * | 2011-09-28 | 2017-02-15 | 慧与发展有限责任合伙企业 | 响应于不可用的路径实施交换结构 |
WO2013108761A1 (ja) * | 2012-01-16 | 2013-07-25 | 日本電気株式会社 | ネットワークシステム、及び経路情報同期方法 |
GB201417149D0 (en) * | 2014-09-29 | 2014-11-12 | Metaswitch Networks Ltd | Method of operating a network node, network node, system and computer-readable medium |
CN106302251B (zh) | 2015-06-26 | 2019-09-06 | 深圳市中兴微电子技术有限公司 | 一种交换网络同步方法及交换装置、接入装置 |
US10218607B2 (en) | 2017-01-27 | 2019-02-26 | At&T Intellectual Property I, L.P. | Flow distribution using fabric access tunnels |
US10686729B2 (en) | 2017-03-29 | 2020-06-16 | Fungible, Inc. | Non-blocking any-to-any data center network with packet spraying over multiple alternate data paths |
WO2018183526A1 (en) | 2017-03-29 | 2018-10-04 | Fungible, Inc. | Non-blocking, full-mesh data center network having optical permutors |
US10637685B2 (en) | 2017-03-29 | 2020-04-28 | Fungible, Inc. | Non-blocking any-to-any data center network having multiplexed packet spraying within access node groups |
CN110741356B (zh) | 2017-04-10 | 2024-03-15 | 微软技术许可有限责任公司 | 多处理器系统中的中继一致存储器管理 |
EP3625940A1 (en) | 2017-07-10 | 2020-03-25 | Fungible, Inc. | Data processing unit for compute nodes and storage nodes |
WO2019014268A1 (en) | 2017-07-10 | 2019-01-17 | Fungible, Inc. | DATA PROCESSING UNIT FOR FLOW PROCESSING |
US11178262B2 (en) | 2017-09-29 | 2021-11-16 | Fungible, Inc. | Fabric control protocol for data center networks with packet spraying over multiple alternate data paths |
WO2019068017A1 (en) * | 2017-09-29 | 2019-04-04 | Fungible, Inc. | RESILIENT NETWORK COMMUNICATION USING SELECTIVE PULVER FLOW SPRAY BY MULTIPATH PATH |
US10841245B2 (en) | 2017-11-21 | 2020-11-17 | Fungible, Inc. | Work unit stack data structures in multiple core processor system for stream data processing |
WO2019152063A1 (en) | 2018-02-02 | 2019-08-08 | Fungible, Inc. | Efficient work unit processing in a multicore system |
US10929175B2 (en) | 2018-11-21 | 2021-02-23 | Fungible, Inc. | Service chaining hardware accelerators within a data stream processing integrated circuit |
CN112583746B (zh) * | 2019-09-30 | 2024-03-22 | 深圳市中兴微电子技术有限公司 | 信元传输方法及装置、存储介质、电子装置 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4763329A (en) * | 1986-02-10 | 1988-08-09 | Techlan, Inc. | Modular data routing system |
US5084816A (en) * | 1987-11-25 | 1992-01-28 | Bell Communications Research, Inc. | Real time fault tolerant transaction processing system |
US4929939A (en) * | 1988-10-31 | 1990-05-29 | International Business Machines Corporation | High-speed switching system with flexible protocol capability |
JPH11501476A (ja) * | 1995-03-08 | 1999-02-02 | オックスフォード・ブルックス・ユニバーシティー | 広帯域交換網 |
CN1097912C (zh) * | 1995-03-08 | 2003-01-01 | 英国电讯公司 | 宽带交换系统 |
US6067286A (en) * | 1995-04-11 | 2000-05-23 | General Datacomm, Inc. | Data network switch with fault tolerance |
JPH09326807A (ja) * | 1996-06-06 | 1997-12-16 | Nec Corp | 共有セルメモリ型atm交換制御方法及び共有セルメモリ型atm交換スイッチ |
CN1240564A (zh) * | 1996-11-06 | 2000-01-05 | 诺基亚电信公司 | 交换结构 |
US5862338A (en) * | 1996-12-30 | 1999-01-19 | Compaq Computer Corporation | Polling system that determines the status of network ports and that stores values indicative thereof |
JP3001502B2 (ja) | 1998-05-20 | 2000-01-24 | 九州日本電気通信システム株式会社 | Atmスイッチモジュール、atmスイッチ容量拡張方法、およびatmルーティング情報設定方法 |
US6925054B1 (en) * | 1998-12-07 | 2005-08-02 | Nortel Networks Limited | Network path protection |
GB9828144D0 (en) * | 1998-12-22 | 1999-02-17 | Power X Limited | Data switching apparatus |
US6993027B1 (en) * | 1999-03-17 | 2006-01-31 | Broadcom Corporation | Method for sending a switch indicator to avoid out-of-ordering of frames in a network switch |
US6747971B1 (en) * | 1999-04-20 | 2004-06-08 | Cisco Technology, Inc. | Crosspoint switch with independent schedulers |
US6560237B1 (en) * | 1999-07-15 | 2003-05-06 | 3Com Corporation | Packet order assurance mechanism |
US6975629B2 (en) * | 2000-03-22 | 2005-12-13 | Texas Instruments Incorporated | Processing packets based on deadline intervals |
US6574195B2 (en) * | 2000-04-19 | 2003-06-03 | Caspian Networks, Inc. | Micro-flow management |
CA2387550A1 (en) | 2000-08-07 | 2002-02-14 | Inrange Technologies Corporation | Fibre channel architecture |
US7035286B2 (en) * | 2000-11-14 | 2006-04-25 | Broadcom Corporation | Linked network switch configuration |
US7180867B2 (en) * | 2000-12-26 | 2007-02-20 | Lucent Technologies Inc. | Apparatus and method for flow path based fault detection and service restoration in a packet based switching system |
US7058010B2 (en) * | 2001-03-29 | 2006-06-06 | Lucent Technologies Inc. | Controlled switchover of unicast and multicast data flows in a packet based switching system |
US6959002B2 (en) * | 2001-05-01 | 2005-10-25 | Integrated Device Technology, Inc. | Traffic manager for network switch port |
US6608836B2 (en) * | 2001-05-10 | 2003-08-19 | Turin Networks | Method and apparatus for egress channel architecture that supports protection within SONET/sdh based networks |
US7151744B2 (en) * | 2001-09-21 | 2006-12-19 | Slt Logic Llc | Multi-service queuing method and apparatus that provides exhaustive arbitration, load balancing, and support for rapid port failover |
US7181485B1 (en) * | 2001-11-26 | 2007-02-20 | Integrated Device Technology, Inc. | Variably delayable transmission of packets between independently clocked source, intermediate, and destination circuits while maintaining orderly and timely processing in one or both of the intermediate and destination circuits |
US7209453B1 (en) * | 2001-12-14 | 2007-04-24 | Applied Micro Circuits Corporation | System and method for tolerating control link faults in a packet communications switch fabric |
US7242691B2 (en) * | 2002-06-04 | 2007-07-10 | Lucent Technologies Inc. | Optimal load balancing across multiple switching fabrics |
US7310333B1 (en) * | 2002-06-28 | 2007-12-18 | Ciena Corporation | Switching control mechanism for supporting reconfiguaration without invoking a rearrangement algorithm |
US7251219B2 (en) * | 2002-07-03 | 2007-07-31 | Intel Corporation | Method and apparatus to communicate flow control information in a duplex network processor system |
US7633861B2 (en) * | 2003-04-25 | 2009-12-15 | Alcatel-Lucent Usa Inc. | Fabric access integrated circuit configured to bound cell reorder depth |
US20050063701A1 (en) * | 2003-09-23 | 2005-03-24 | Shlomo Ovadia | Method and system to recover resources in the event of data burst loss within WDM-based optical-switched networks |
-
2004
- 2004-04-23 US US10/831,629 patent/US7660239B2/en not_active Expired - Fee Related
- 2004-04-26 CN CN2004100639346A patent/CN1571417B/zh not_active Expired - Fee Related
- 2004-04-26 EP EP04300229.4A patent/EP1501246B1/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10205630B2 (en) | 2013-12-31 | 2019-02-12 | Huawei Technologies Co., Ltd. | Fault tolerance method for distributed stream processing system |
Also Published As
Publication number | Publication date |
---|---|
EP1501246A2 (en) | 2005-01-26 |
EP1501246B1 (en) | 2016-02-17 |
CN1571417B (zh) | 2011-06-29 |
US7660239B2 (en) | 2010-02-09 |
EP1501246A3 (en) | 2006-05-10 |
US20040213148A1 (en) | 2004-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1571417A (zh) | 网络数据重新路由 | |
JP3709795B2 (ja) | コンピュータシステムと、コンピュータシステム内のモジュール間の通信方法 | |
JP3816529B2 (ja) | 相互接続の障害検出およびその位置特定方法および装置 | |
US6894970B1 (en) | Router switch fabric protection using forward error correction | |
US6879559B1 (en) | Router line card protection using one-for-N redundancy | |
CN1246994C (zh) | 用于在局域网内实现快速恢复进程的方法和系统 | |
US7613183B1 (en) | System and method for router data aggregation and delivery | |
US6950428B1 (en) | System and method for configuring adaptive sets of links between routers in a system area network (SAN) | |
CN107508640B (zh) | 基于光纤通道技术的双环冗余自愈光纤网络构建方法 | |
US7324500B1 (en) | Router network protection using multiple facility interfaces | |
US9270484B2 (en) | Data center network using circuit switching | |
CN1835478A (zh) | 用于重定向虚拟局域网网络业务的系统和方法 | |
WO2000001130A1 (en) | Method and apparatus for non-disruptive addition of a new node to an inter-nodal network | |
EP1471698A2 (en) | Network fabric access device with multiple system side interfaces | |
AU776750B2 (en) | Redundant channels over a packet network | |
US6667954B1 (en) | Methods and apparatus for selecting the better cell from redundant streams within a cell-oriented environment | |
US6337860B1 (en) | Redundancy termination | |
US6452926B1 (en) | Reliable and robust atm-switch | |
EP0570348A2 (en) | Control of the interchange of data packets in a network | |
JPH0342940A (ja) | Atm交換装置 | |
CN1863106A (zh) | 无线通信系统中的板间通信故障检测方法 | |
US7170908B2 (en) | System and method of selecting sources for a network element having redundant sources | |
JP5357436B2 (ja) | 伝送装置 | |
JP3504510B2 (ja) | パケットスイッチ | |
US6870814B1 (en) | Link extenders with error propagation and reporting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110629 Termination date: 20180426 |