CN102684990A - 单层网络、以及在单层交换网络中进行路由的方法 - Google Patents

单层网络、以及在单层交换网络中进行路由的方法 Download PDF

Info

Publication number
CN102684990A
CN102684990A CN2012100579157A CN201210057915A CN102684990A CN 102684990 A CN102684990 A CN 102684990A CN 2012100579157 A CN2012100579157 A CN 2012100579157A CN 201210057915 A CN201210057915 A CN 201210057915A CN 102684990 A CN102684990 A CN 102684990A
Authority
CN
China
Prior art keywords
switch
network
source
place
groups
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
Application number
CN2012100579157A
Other languages
English (en)
Other versions
CN102684990B (zh
Inventor
奥弗·伊妮
伊亚尔·达冈
戈兰·斯楚金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Zyray Wireless Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN102684990A publication Critical patent/CN102684990A/zh
Application granted granted Critical
Publication of CN102684990B publication Critical patent/CN102684990B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/527Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header 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)

Abstract

本发明涉及一种单层网络、以及在单层交换网络中进行路由的方法和设备。该设备包括分组或部分分组的动态路由,其在网络中通过作出局部决定避免了拥挤和阻塞。该设备进一步包括创建和更新路由表,该路由表将交换机的输出端映射到可到达的网络输出端口。此外,在进入网络前或部分进入网络时,对进入网络的分组报头进行处理。处理的分组或部分分组最好包括完整的路由信息或最终目的地地址,该最终目的地地址使得不用进一步对分组报头进行处理便能够通过网络进行快速路由。组合本发明的其他方面来实现本发明的一个或多个方面,以进一步提高网络的效率。

Description

单层网络、以及在单层交换网络中进行路由的方法
技术领域
本发明涉及在网络中路由分组的设备和方法。
背景技术
许多数据网络如计算机网络或视频传输网络使用分组交换机制来传输数据。在通常被称为节点的实体之间路由分组。
一种用于在节点之间传输分组的机制是交换机,其含有多个输入端口和多个输出端口。一些交换机类型可以在任何输入端口和任何输出端口之间传输数据分组。可以构建这样的交换机,使得在输入和输出端口之间的任何可能同时发生的路由组合是可行的。这样的交换机被称为无阻塞。无阻塞交换机的一种类型是纵横制交换机。
当所需的交换机的大小大于单个设备能容纳的大小时,可以组合一些设备来形成较大的交换机。当组合一些交换机如纵横制交换机时,该组合在本发明中被称为架构(fabric)或网络。就像交换机,网络可以是阻塞或无阻塞。
网络的一个示例架构使用多个设备作为源交换机(source switch)、另一多个设备作为宿交换机(sink switch)和第三多个设备作为中间交换机。源交换机与网络的输入端口相连接,且用作网络的输出端口的数据的来源。宿交换机与网络的输出端口相连接,且充当来自网络的输入端口的数据的宿。不同的路由可以共享网络中的许多链路,这些路由可以允许单个源通过垄断网络中的关键链路来阻塞交换机。特别地,与网络相连接的一个宿或宿交换机可能过载数据。通常宿或宿交换机具有数据缓存区来容纳数据的爆满。然而,在没有对输入数据进行控制的情况下,缓存区可能过载。
控制网络中的数据流量的一种方法是,使每个源交换机向宿交换机请求带宽。宿交换机相应地为数据带宽生成“信用值(credits)”,并将这些信用发送到请求源。系统使用本领域所知悉的信用值和在被全文引用的专利US7619970中所描述的信用值。
现有的网络/架构的一个缺点是一个路由可能会阻塞另一个路由。虽然可以共享链路,某些路由有时可能被阻塞。绕过被阻塞的路径而进行路由可能是可行的,但其可能需要使一些或全部现有的路由进行路由,来容纳被阻塞的路由。通过网络的流量的路由可能需要以各种交换机来暂停(halting)数据流量,导致在到输出端口的数据传输中产生不合意的延迟。
现有的网络的另一个缺点是需要在每一阶段/网络中的交换机对分组报头进行处理。通常分组包含数据部分和报头部分。通常构建报头以支持众所周知的协议如TCP/IP。在每一阶段/网络中的交换机中,通常对报头进行处理,来提取路由信息。这种处理要求会大大增加成本、存储器大小和交换机的处理要求。
现有的网络还有一个缺点是,缺乏关于网络的整体拓扑的信息。在网络中的单个交换机仅可以知道网络或本地连接的原始拓扑。如果网络中的一条链路变为无效的,数据可能丢失或延迟。
因此,提供一种在网络中阻止阻塞的路由、减少或消除每个交换机的分组报头处理开销的设备和方法,以及一种绕过网络中损坏的或无效的链路而进行路由的设备和方法,这是可取的。
发明内容
本发明提供了一种包括交换机的网络,结合至少一幅附图进行了详细描述,并在权利要求中得到了更完整的阐述。该网络可以包括阻止阻塞的路由的机制。此外,网络可以减少和/或消除在网络中由交换机进行的报头处理和可以绕过无效的链路而对数据分组进行路由。
根据本发明的一个方面,提供一种单层网络,所述网络包括:
至少一个输入端口;
至少一个输出端口;
至少一个源交换机,所述源交换机包括至少一个输入、至少两个输出和至少一个虚拟输出队列,其中,所述至少一个虚拟输出队列与至少一个宿相关;
至少一个宿交换机,所述宿交换机包括至少一个输入、至少两个输出和至少一个调度机制;及
连接所述至少一个源交换机和至少一个宿交换机的架构;
其中,所述至少一个虚拟输出队列提供所述至少一个调度机制的队列状态信息,所述至少一个调度机制响应于所述队列状态信息的接收,生成信用值,其中,所述源交换机响应于所述信用值的接收,使用至少一个负载分配算法,通过多个输出发送单个数据流量的分组或部分分组;及
其中,通过所述源交换机对所述分组或部分分组进行排序和通过所述宿交换机对所述分组或部分分组进行重新排序。
优选地,所述网络进一步包括至少一个中间交换机,其中所述至少一个中间交换机与所述至少一个宿交换机相连接。
优选地,所述网络进一步包括至少一个中间交换机,其中所述至少一个中间交换机与所述至少一个源交换机相连接。
优选地,所述至少一个源交换机和所述至少一个宿交换机是相同的。
优选地,所述至少一个中间交换机使用至少一个负载分配算法,通过多个输出发送数据的分组或部分分组。
优选地,所述至少一个源交换机存储至少一个源表,所述至少一个源表用于将所述至少一个源交换机的所述至少一个输出映射到所述至少一个宿交换机,及
其中,使用所述源表,通过所述源交换机的多个输出对所述数据流量进行路由;
其中,所述数据流量包含多个分组或部分分组。
优选地,所述网络进一步包括至少一个中间交换机,其中,所述至少一个中间交换机与所述至少一个源交换机相连接,所述至少一个中间交换机存储至少一个中间表。
优选地,所述网络进一步包括至少一个中间交换机,其中所述中间交换机包括至少两个输出和至少一个数据流量,使用所述中间表,通过所述中间交换机的多个输出对所述数据流量进行路由。
优选地,所述至少一个源交换机对至少一个分组报头进行处理,来产生至少一个处理的分组或处理的部分分组,其中,将所述至少一个处理的分组或处理的部分分组路由到所述宿交换机,其独立于所述至少一个分组报头的进一步处理。
优选地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出。
优选地,所述处理的分组或处理的部分分组包括最终目的地。
优选地,所述处理的分组或处理的部分分组包括至少一个在所述网络中的显式路由。
优选地,根据所述最终目的地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
根据本发明的一个方面,提供一种单层网络,所述网络包括:
至少一个输入端口;
至少一个输出端口;
至少一个源交换机,所述源交换机包括至少一个输入和至少一个输出;
至少一个宿交换机,所述宿交换机包括至少一个输入和至少一个输出;及
连接所述至少一个源交换机和至少一个宿交换机的架构;
其中,所述至少一个源交换机存储至少一个源表,所述至少一个源表用于将所述至少一个源交换机的所述至少一个输出映射到所述至少一个宿交换机,所述源表从所述至少一个宿交换机或至少一个中间交换机中接收更新的拓扑信息,及
其中,通过变换模块或通过所述至少一个源交换机对进入网络的每个分组报头进行处理。
优选地,所述网络进一步包括至少一个中间交换机,其中,所述至少一个中间交换机与所述至少一个源交换机相连接,所述至少一个中间交换机存储至少一个中间表,所述中间表从所述至少一个宿交换机中接收更新的拓扑信息。
优选地,所述至少一个源表基于所述至少一个中间表,以及所述至少一个源交换机输出从所述至少一个中间交换机中接收的所述中间表。
优选地,所述至少一个宿交换机对至少一个源表进行更新。
优选地,至少一个无效的连接引发至少一个源表的至少一个更新。
优选地,将所述处理的分组或或处理的部分分组路由到所述网络的所述至少一个输出端口。
优选地,所述处理的分组或处理的部分分组包括最终目的地。
优选地,所述处理的分组或处理的部分分组包括至少一个在所述网络中的显式路由。
优选地,根据所述最终目的地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
优选地,所述至少一个源交换机对至少一个分组报头进行处理,来产生至少一个处理的分组,其中使用所述源表,将所述至少一个处理的分组路由到所述架构的所述至少一个输出端口,其独立于所述至少一个分组报头的进一步处理。
优选地,所述至少一个源交换机对至少一个分组报头进行处理,来产生至少一个处理的分组,其中使用所述至少一个中间表,将所述至少一个处理的分组路由到所述网络的所述至少一个输出端口,其独立于所述至少一个分组报头的进一步处理。
根据本发明的一个方面,提供一种单层网络,所述网络包括:
至少一个输入端口;
至少一个输出端口;
至少一个源交换机,所述源交换机包括至少一个输入和至少一个输出;
至少一个宿交换机,所述宿交换机包括至少一个输入和至少一个输出;及
连接所述至少一个源交换机和至少一个宿交换机的架构;
其中,所述至少一个源交换机对至少一个分组报头进行处理,来产生至少一个处理的分组或处理的部分分组,将所述至少一个处理的分组或处理的部分分组路由到所述宿交换机,其独立于所述至少一个分组报头的进一步处理。
优选地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
优选地,所述处理的分组或处理的部分分组包括最终目的地。
优选地,所述处理的分组或处理的部分分组包括至少一个在所述架构中的显式路由。
优选地,根据所述最终目的地,将所述处理的分组或处理的部分分组路由到所述架构的所述至少一个输出端口。
根据本发明的一个方面,提供一种在单层网络中对分组或部分分组进行路由的方法,其中,所述网络包括输入端口、输出端口,以及至少一个源交换机和至少一个宿交换机的架构,所述至少一个源交换机包括至少一个虚拟输出队列,所述至少一个宿交换机包括至少一个调度机制,所述方法包括:
将队列状态信息从至少一个虚拟输出队列发送到至少一个调度机制;
响应于所述队列状态信息的接收,将至少一个信用值从所述至少一个调度机制发送到所述虚拟输出队列;
对在所述源交换机的至少两个分组或至少两个部分分组进行排序;
响应于所述信用值的接收,使用至少一个负载分配算法,通过多个输出,将排序的分组或部分分组的至少一个数据流量从所述至少一个源交换机发送到所述至少一个宿交换机,其中所述数据流量包含多个分组;及
对在所述宿交换机的所述分组或部分分组进行重新排序。
优选地,所述网络进一步包括至少一个中间交换机:
其中,将所述队列状态信息从所述至少一个源交换机,通过所述至少一个中间交换机,发送到所述至少一个宿交换机;
其中,将所述至少一个信用值从所述至少一个宿交换机,通过所述至少一个中间交换机,发送到所述至少一个源交换机;
将排序的分组的所述至少一个数据流量从所述至少一个源交换机,通过至少一个中间交换机,发送到所述至少一个宿交换机;及
进一步包括:使用至少一个负载分配算法,通过所述中间交换机的多个输出,将至少两个排序的分组或部分分组发送到所述至少一个宿交换机。
优选地,所述方法进一步包括:
将至少一个源表存储在至少一个宿交换机中,所述至少一个源表用于将所述至少一个宿交换机的所述至少一个输出映射到所述网络的所述至少一个输出端口;及
使用所述至少一个源表,通过所述至少一个宿交换机的多个输出对所述数据流量进行路由。
优选地,所述方法进一步包括:
将至少一个源表从所述至少一个源交换机,通过所述至少一个中间交换机输出,发送到所述至少一个中间交换机;
根据所述至少一个中间交换机输出,将至少一个中间表存储在所述至少一个中间交换机中,所述至少一个中间交换机输出接收所述源表;及
使用所述至少一个中间表,通过所述至少一个中间交换机的多个输出对所述数据流量进行路由。
优选地,所述方法进一步包括:
通过至少一个源交换机输出,将至少一个中间表发送到所述至少一个源交换机;
根据所述至少一个中间表和所述至少一个源交换机输出,将至少一个源表存储在所述至少一个源交换机中,所述至少一个源交换机输出接收的所述中间表;及
使用所述源表,通过所述源交换机的多个输出对所述数据流量进行路由。
优选地,所述方法进一步包括:
响应于至少一个无效的连接,对至少一个源表进行更新。
优选地,所述方法进一步包括:
对至少一个分组报头进行处理,来产生至少一个处理的分组或处理的部分分组;及
将所述至少一个处理的分组或处理的部分分组路由到所述宿交换机,其独立于所述至少一个分组报头的进一步处理。
优选地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
优选地,所述处理的分组或处理的部分分组包括最终目的地。
优选地,所述处理的分组或处理的部分分组包括至少一个在所述网络中的显式路由。
优选地,根据所述最终目的地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
根据本发明的一个方面,提供一种在单层网络中对分组或部分分组进行路由的方法,其中所述网络包括至少一个输入端口、至少一个输出端口,以及至少一个源交换机和至少一个宿交换机的架构,所述方法包括:
通过变换模块或通过所述至少一个源交换机,对每一个分组或处理的部分分组进行处理,所述处理产生至少一个处理的分组或处理的部分分组;
将至少一个源表存储在所述至少一个源交换机中,所述至少一个源表用于将所述至少一个宿交换机的所述至少一个输出映射到所述网络的所述至少一个输出端口,及
将至少一个数据流量从所述至少一个源交换机发送到所述网络的所述至少一个输出,其中,使用所述源表,对所述数据流量进行路由,所述数据流量包含多个分组或多个部分分组,至少一个分组或部分分组包含至少一个报头。
优选地,所述网络进一步包括至少一个中间交换机,所述方法进一步包括:
通过至少一个中间交换机输出,将所述至少一个源表发送到所述至少一个中间交换机;及
根据所述至少一个源表和所述至少一个中间交换机输出,对所述至少一个中间表进行存储,所述至少一个中间交换机输出接收所述源表。
优选地,所述方法进一步包括:
通过至少一个源交换机输出,将所述至少一个中间表发送到所述至少一个源交换机;及
根据所述至少一个中间表和所述至少一个源交换机输出,对至少一个源表进行存储,所述至少一个源交换机输出接收中间表。
优选地,所述方法进一步包括对所述至少一个源表进行更新。
优选地,所述方法进一步包括对至少一个源表进行更新,其中,由至少一个无效的连接引发所述更新。
优选地,所述方法进一步包括将至少一个处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
优选地,所述处理的分组或处理的部分分组包括最终目的地。
优选地,所述处理的分组或处理的部分分组包括至少一个在所述网络中的显式路由。
优选地,根据所述最终目的地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
优选地,所述方法进一步包括:
在所述至少一个源交换机,对至少一个分组报头或部分分组进行处理,来产生至少一个处理的分组或处理的部分分组;及
使用所述宿表,将所述至少一个处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口,其独立于所述至少一个分组报头的进一步处理。
优选地,所述方法进一步包括:
在所述至少一个源交换机,对至少一个分组报头进行处理,来产生至少一个处理的分组或处理的部分分组;及
使用所述中间表,将所述至少一个处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口,其独立于所述至少一个分组报头的进一步处理。
优选地,所述方法进一步包括:
在所述至少一个源交换机,对至少一个分组报头进行处理,来产生至少一个处理的分组或处理的部分分组;及
使用所述源表,将所述至少一个处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口,其独立于所述至少一个分组报头的进一步处理。
根据本发明的一个方面,提供一种在单层网络中对分组进行路由的方法,其中所述网络包括至少一个输入端口、至少一个输出端口,以及至少一个源交换机和至少一个宿交换机的架构,所述方法包括:
通过变换模块或通过所述至少一个源交换机,对每一个分组或部分分组进行处理,所述处理产生至少一个处理的分组或处理的部分分组;
将至少一个处理的分组从所述至少一个源交换机路由到所述至少一个宿交换机,其独立于所述至少一个分组报头的进一步处理。
优选地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出。
优选地,所述处理的分组或处理的部分分组包括最终目的地。
优选地,所述处理的分组或处理的部分分组包括至少一个在所述网络中的显式路由。
优选地,根据所述最终目的地,将所述处理的分组或处理的部分分组路由到所述网络的所述至少一个输出端口。
附图说明
通过下面结合附图对本发明进行详细的描述,本发明及其优点是显而易见的,其中,相同的附图标记表示相同的组件。
图1是包含交换机的典型的网络的示意图;
图2是源设备的示意图;
图3是宿设备的示意图;
图4a是含有阻塞的路由的网络的示意图;
图4b是含有无阻塞的路由的网络的示意图;
图4c是含有动态路由的网络的示意图;
图5a是含有路由表的网络的示意图;
图5b是容纳无效的链路的含有路由表的网络的示意图;
图6a是数据分组的示意图;
图6b是含有最终目的地的数据分组的示意图;
图6c是含有显式路由信息的数据分组的示意图;
图6d是含有显式路由信息的数据分组的示意图;
图6e是含有显式路由信息的数据分组的示意图;
图6f是含有显式路由信息的数据分组的示意图;
图6g是含有显式路由信息的数据分组的示意图;
图7是服务器和网络的示例架构的示意图;
图8是服务器和网络的示例架构的示意图。
具体实施方式
本发明提供了提高数据传输网络的效率的设备和方法。为包含网络的设备减少了处理的时间和存储器的要求。此外,减少了数据丢失,从而在故障条件下提高传输效率。
现在将结合附图对根据本发明的原理的设备和方法的示例进行描述,这些附图形成本发明的一部分。应当理解,在不离开本发明的精神和范围情况下,可以使用其他实施例做出架构上、功能上和程序上的改变。
本领域的技术人员知悉,本发明可以整体或部分地体现为方法、数据处理系统或计算机程序产品。因此,本发明可以采取全硬件、全固件/软件、软件、固件、硬件结合或任何其他适合的方式的实施例形式。
此外,这些方面可以采取这样的形式:由含有计算机可读程序代码或指令的一个或多个计算机可读存储媒介存储的计算机程序产品,在存储媒介里或上实施计算机可读程序代码或者指令。可以使用任何适合的计算机可读存储媒介,包括硬盘、EEPROM、闪存、SRAM、DRAM、CD-ROM、光存储设备、磁存储设备和/或任何以上的结合。此外,可以以电磁波的形式在源和目的地之间传输代表本发明所描述的数据或事件的各种信号,该电磁波在信号传导媒介如金属线、光纤,和/或无线传输媒介如空气和/或空间中进行传播。
图1是网络100的示例的示意图。网络100最好包括一层源交换机110、111和112、一层中间交换机120、121和122,以及一层宿交换机130、131和132。网络100含有9个输入端口1-9和9个输出端口11-19。网络100通常以分组或部分分组的形式,将数据从输入端口传输到输出端口。通常使用网络100来将数据从与输入端口相连接的硬盘驱动器传输到与输出端口相连接的另一个硬盘驱动器。
所示的网络100含有输入端口和输出端口,从而支持只在一个方向的数据流量。然而,最好的拓扑允许数据同样从名义上的“输出端口”传输到名义上的“输入端口”。因此,最好的拓扑最好允许网络中的每一条链路同样在任何一个方向上传输数据。在这样最好的拓扑中,不需要从宿返回到源的额外的链路。因此,同一路径可以用于传输数据,也可以用于传输控制信息。
例如,如果宿130想发送控制信息返回给源111,它能使用退出源111的链路。如果相应的源和宿在它们之间具有各自的通信信道,这是有可能的。这样的通信信道通常是简单的和局部的(local),因为相应的源和宿可以是相同的网络元件的一部分。例如,宿130和源111可以是相同的网络服务器的一部分。
因此,正如在下面的描述所示,允许数据在系统中“反向(backwards)”流动来支持控制信息和路由表的传输是方便的。其他允许数据在一个方向上流动或仅允许在一个方向上的高速数据移动的配置是可以设想的且包含于本发明的范围之内。同样,“带外”的提供或控制信息的各自的控制流量路径是可以设想的且包含于本发明的范围之内。为了简化网络100的实施例的描述,将仅对从输入端口到输出端口的、含有在相同链路中以任何一个方向流动的控制信息的数据传输进行描述。
在先前的描述中,每一个交换机含有几个输入端和输出端,该输入端和输出端通过链路连接至其他交换机和/或网络的输入/输出端口。为了短暂的利益,将通过其端点对链路进行描述,例如,将在源交换机111的输出116z到中间交换机122的输入端127B之间的链路描述为链路(116z,127B)。该链路也可以描述为链路(127B,116z),其使用一个或另一个描述没有区别。将以类似的方式对在网络端口和交换机之间的链路进行描述,例如,将在宿交换机输出138y到网络输出端口18之间的链路描述为(138y,18)。可以通过已知的标准,如通过以太网的TCP/IP或通过专有的(proprietary)方法或机制,来执行每一条链路。
源交换机110分别通过输入端113A、113B和113C与输入端口1、2、3相连接。在网络100的输入端口1-3和源交换机的输入端113A-113C之间的链路可以是通过已知的标准如基于以太网的TCP/IP或专有的标准的。网络的输入端口(或输出端口)的一个实施例可以使用变换模块来将数据从已知的标准转换为专有链路协议(或从专有链路协议转换为已知的标准)。变换模块可以被执行为一个或多个线卡。或者,一个或多个变换模块可以被配置为“比萨盒”或任何其他适合执行的架构。这个架构允许同一源交换机与不同的网络协议相连接,而每一网络协议可需要不同的变换模块。
在本发明的一些实施例中,网络可以包括在网络的起点和终点的服务器。这样,服务器最好可以替换在网络的输入端上的源交换机、替换在网络的输出端上的宿交换机,或不仅替换在网络的输入端上的源交换机,也替换在网络的输出端上的宿交换机。在一些实施例中,单个服务器不仅可以充当源交换机,也可以充当宿交换机。
在源交换机的另一个实施例中,其可以包含作为输入端113A-113C的一部分的一个或多个标准协议。在这样的配置中,网络100的输入端口成为至少一个源交换机110-112的输入端。然而,在另一个实施例中,网络的几个输入端口可以通过共享的媒介,与源交换机的单个输入端相连接。所述这样的实施例和这些实施例的组合都是可以设想的且包含于本发明的范围之内。
下面的描述通过假设变换模块架构而标准化。在这个架构中,一张卡连接于网络的每一个输入端或输入端。源交换机111和112类似地分别与输入端口4-6和7-9相连接。
源交换机110通过链路(114x,123A)与中间交换机120相连接。源交换机110以类似的方式,分别通过链路(114y,125A)和链路(114z,127A)与中间交换机121和122相连接。类似地,源交换机111和112还与中间交换机120-122相连接,因此,网络100中的每一个源交换机都通过至少一条链路与网络100中的每一个中间交换机相连接。
虽然所述的实施例示出了在每一个源交换机110-112和中间交换机120-122之间的一条或仅一条链路,但其他配置也是可能的。这些配置包括在几对源交换机110-112和中间交换机120-122之间的多个连接,和/或在几对源交换机110-112和中间交换机120-122之间没有连接。所有这些可能的变化都是可以设想的且包含于本发明的范围之内,网络100的实施例反映设备的一个可能的配置。
中间交换机120通过链路(124y,133A)与宿交换机130相连接。中间交换机120以类似的方式,分别通过链路(124y,135A)和链路(124z,137A)与宿交换机131和132相连接。类似地,中间交换机121和122还与宿交换机130-132相连接,因此,每一个中间交换机都通过至少一条链路与每一个宿交换机相连接。
虽然所述的实施例示出了在每一个中间交换机120-122和宿交换机130-132之间的一条或仅一条链路,但其他配置也是可能的。这些配置包括在几对中间交换机120-122和宿交换机130-132之间的多个连接,和/或在几对中间交换120-122和宿交换机130-132之间没有连接。所有这些可能的变化都是可以设想的且包含于本发明的范围之内,网络100的实施例反映设备的一个可能的配置。
宿交换机130分别通过输出端134x、134y和134z与输出端口11、12、13相连接。在网络100的输出端口11-13和宿交换机的输出端134x-134z之间的链路可以是通过已知的标准如基于以太网的TCP/IP或专有的标准的。网络的输入端口的一个实施例可以使用变换模块来将数据从专有链路协议转换为已知的标准。这个架构允许同一宿交换机与不同的网络协议相连接,而每一网络协议可需要不同的变换模块接口。在宿交换机的另一个实施中,其可以包含作为输出端134x-134z的一部分的一个或多个标准协议,并减少对转换模块的需求。在这样的配置中,网络的输出端口成为至少一个宿交换机130-132的输出端。然而,在另一个实施例中,网络的几个输出端口可以通过共享的媒介,与宿交换机的单个输出端相连接。所述这样的实施例和这些实施例的组合都是可以设想的且包含于本发明的范围之内。宿交换机131和132类似地分别与输出端口14-16和17-19相连接。
网络100最好配置为本领域所知悉的COLS网络。但其他包括完全连接的交叉交换机的阻塞和无阻塞的配置是可以设想的且包含于本发明的范围之内。
虽然网络100的配置仅含有单层中间交换机120、121、122,但可以使用多层中间交换机,且包含于本发明的范围之内。同样,源交换机110-112和宿交换机130-132可以彼此相同或不同。如果网络中的所述链路是相同的,那么源交换机和宿交换机也最好是相同的。同样,所述交换机,源交换机110-112、中间交换机120-122和宿交换机130-132可以是相同的。每一个这些变化可以设想的且包含于本发明的范围之内。
在网络100的交换机110-112的每层中,示出了三个中间交换机120-122和三个宿交换机130-132。任何数量的交换机都可以包括在层中,从单个交换机到三个以上的交换机,使网络100的实施例代表一种可能的配置。每个层具有与任何可能的组合中的其他层不同数量的交换机。交换机的所有这些配置是可以设想的且包含于本发明的范围之内。
虽然所示的源交换机110-112、中间交换机120-122和宿交换机130-132为不同的设备,以任何组合形式来组合源交换机110-112和中间交换机120-122的功能、源交换机110-112和宿交换机130-132的功能的其他设备配置也是可能的。所有可能的配置都包含于本发明的范围之内,包括使用单层设备来执行网络100。
图2是源交换机110的一个实施例的示意图。源交换机110含有三个输入端113A、113B和113C。输入端113A-113C可以与存储器140相连接。源交换机110含有三个输出端114x、114y和114z。输出端114x-114z可以与存储器140相连接。存储器140可以用于执行N个虚拟输出队列141A、141B、141C…141N。每个虚拟输出队列141A-141N为某一目的地而缓存数据。从虚拟输出队列141A-141N至目的地的数据传输,需要将数据路由到网络100的特定输出端口。
虽然描述示出了使用单个存储器140来执行所有的虚拟输出队列141A-141N,但是其他的执行,例如,每个虚拟输出队列141A-141N的单独的存储器也是可能的,且包含于本发明的范围之内。单独的存储器可以用于执行无阻塞的交叉交换机,但是其他配置,包括阻塞的配置,是可以设想的且包含于本发明的范围之内。
虽然源交换机110的实施例示出了三个输入端和三个输出端,但是其他任何组合的更多或更少的输入端和/或更多或更少的输出端的配置是可以设想的。同样,源交换机可以有不匹配的输入端和输出端,例如,2个输入端和5个输出端,这也是可以设想的。每一个上述的任何组合的可能是可以设想的且包含于本发明的范围之内。
图3是宿交换机130的一个实施例的示意图。宿交换机含有三个输入端133A、133B和133C。输入端133A-133C可以与控制模块150相连接。宿交换机130含有三个输出端134x、134y和134z。输出端134x-134z可以与控制模块150相连接。控制模块150可以用于执行机制151A、151B…151M。
最好每一个调度机制151A-151M可以控制宿交换机130的输出端134x-134z中的一个。或者,每个调度机制151A-151M可以控制宿交换机130的输出端134x-134z中的一些或全部。在另一种选择中,多个调度机制151A-151M可以被分配给宿交换机130的每一个输出端134x-134z。特别地,在源交换机中的虚拟输出队列的数量N可以等于或可以不等于在宿交换机中的调度机制的数量M。每个这些配置和任何其他适合的配置都是可以设想的且包含于本发明的范围之内。
每个调度机制151A-151M可以从属于一个或多个交换机的一个或多个虚拟输出队列中接收队列状态信息。可以当已对虚拟输出队列进行分配或初始化时,发送队列状态信息。也可以当虚拟输出队列的状态发生变化时,发送队列状态信息。队列状态信息可以包含状态,例如队列满、队列几乎满、队列在中点等。队列状态信息可以包括命令,例如加速传输、大大加速传输、减速等。
调度机制151A-151M可以用于生成信用值来响应队列状态信息。信用值允许通过网络100,将数据从源交换机路由到宿交换机。分配可以采取保留链路或保留链路的带宽的一部分的形式。先前的描述,至少需要链路,该链路携带控制信息例如从虚拟输出队列到调度机制的队列状态信息。同样,链路应该携带从调度机制到虚拟输出队列的信用值。在网络100中的数据链路最好能够在各个方向都携带数据和控制信息。
虽然描述示出了使用单个控制模块150来执行所有的调度机制151A-151M,但是其他的配置,例如,每个调度机制151A-151M的单独的模块,也是可能的,且包含于本发明的范围之内。单个控制模块150可以用于执行无阻塞的交叉交换机和/或宿交换机130的输出队列。所有这些配置,包括阻塞的配置和任何其他适合的配置都是可以设想的且包含于本发明的范围之内。
虽然宿交换机130的实施例示出了三个输入端和三个输出端,但是其他任何组合的更多或更少的输入端和/或更多或更少的输出端的配置是可以设想的。同样,宿交换机可以有不匹配的输入端和输出端,例如,2个输入端和5个输出端,这也是可以设想的。每一个上述的任何组合的可能是可以设想的且包含于本发明的范围之内。
网络100至少部分地根据带宽的分配来传输数据。数据通常以数据分组(或一部分数据分组)的形式存在于源交换机的输入端,例如,源交换机110的113A。数据分组(或部分数据分组)可以含有报头,该报头包含目的地地址。可以将目地地址映射到网络的输出端口,例如,网络100的输出端口11。
可以通过源交换机的报头处理来启动数据的传输。源交换机最好对虚拟输出队列进行分配,例如,将源交换机110的虚拟输出队列141A分配给特定输出端口。可以将数据分组(或部分数据分组)存储于虚拟输出队列。可以有几乎无限数量的虚拟输出队列到同一目的地,包括,例如,不同流量到同一目的地和/或不同流量类别到同一目的地。最好将每个虚拟输出队列(或至少每个单传的(unicast)虚拟输出队列)分配给输出端口(或逻辑输出端口,其可以是网络100的输出端口的子端口)。另一种选择是,数据分组(或部分数据分组)可以存储于现有的队列中,该队列先前已被分配。
在本发明的一些实施例中,当将分组(或部分分组)存储好时,虚拟输出队列将队列状态信息发送到宿交换机中的调度机制,例如宿交换机130的调度机制151A。队列状态信息可以基于队列状态的变化。调度机制将以带宽的适合的信用值来进行响应。根据路由拥挤、在宿交换机中的拥挤或在网络的输出端口上的拥挤或任何其他适合的标准,来对信用值进行分配。最好根据在所有源交换机中的所有的竞争的虚拟输出队列之间的计划(scheme)来对信用值进行分配,其中,虚拟输出队列将一些东西发送到目的地,也就是,虚拟输出队列不能为空或不能处于OFF的状态。调度利用一个或多个层次(安全加密链路(tunnels)、客户、应用等),可以是简单的(所有队列是均等的)或基于优先级(严格的优先级或重要性)。
当接收到信用值时,虚拟输出队列可以通过一个或多个中间交换机,将数据分组(或部分数据分组)发送到宿交换机。由虚拟输出队列发送的数据量可以通过接收的信用值来控制。
通过网络发送数据分组(或部分数据分组)要求网络中的交换机被配置来对数据流量进行路由。图4a示出了在网络400中的对几个数据流量进行路由的实施例。图中假设已对带宽信用值进行分配来允许同时地对数据流量进行路由。然而,路由的选择可以在网络400中产生瓶颈或阻塞。特别地,当一次一个地对数据流量进行路由时,可能会存在沿着一条链路来对两个流量进行路由的需要。这样的冲突可能需要对一些或全部目前的路由进行重新路由。
为了简化路由的描述,通过网络的数据流量(或仅仅是流量)将被指定为一系列片段(segments),例如,流量450是片段450A-450D的集合,而图4a所示的为一系列片段。必须将每一片段进行路由以允许数据流量的移动。
图4a示出了在对流量的某一队列进行路由之后如何发生阻塞的。应当注意的是,图4a描述了一种静态路由的形式,一般地,其代表了静态路由的许多形式。图4a所示的静态路由,根据源端口、目的地端口或源端口和目的地端口的组合来进行选择。使用宿530作为目标而不直接将分组和/或部分分组传输到网络的某一端口也是可能的。因此,中间交换机520能,但不是必须的,知道特定的端口11、12或13。更确切地说,知道如何到达宿交换机是足够的。当流量到达宿交换机时,宿交换机可以使用特定的输出信息来选择宿交换机的特定的输出端口。这种方法较好地减少了在网络中的其他设备的路由表中的信息量。
首先,流量450可以连接输入端口1至输出端口11。流量450包含片段450A、450B、450C和450D。片段450A可以沿着链路(1,413A)路由到源交换410。数据可以缓存在源交换机410里的虚拟输出队列。片段450B可以通过链路(414x,423A)路由到中间交换机420。片段450C可以通过链路(424x,433A)路由到宿交换机430。最后,片段450D可以通过链路(434x,11)路由到网络400的输出端口11。
接着,可以增加流量453,来连接输入端口9至输出端口19。流量453包含片段453A、453B、453C和453D。片段453A可以沿着链路(9,417A)路由到源交换机412。可以将数据缓存在源交换机412里的虚拟输出队列。片段453B可以通过链路(418z,427C)路由到中间交换机422。片段453C可以通过链路(428z,437C)路由到宿交换机432。最后,片段453D可以通过链路(438z,19)路由到网络400的输出端口19。
接着,可以增加流量452,来连接输入端口8至输出端口12。流量452包含片段452A、452B、452C和452D。片段452A可以沿着链路(8,417B)路由到源交换机412。可以将数据缓存在源交换机412里的虚拟输出队列。片段452B可以通过链路(418y,425C)路由到中间交换机421。片段452C可以通过链路(426x,433B)路由到宿交换机430。最后,片段452D可以通过链路(434y,12)路由到网络400的输出端口12。
最后,可以增加流量451,来连接输入端口7至输出端口13。然而,流量451仅仅包含片段451A和451B。片段451A沿着链路(7,417A)路由到源交换机412。可以将数据缓存在源交换机412里的虚拟输出队列。片段452B可以通过链路(418x,423C)路由到中间交换机420。但没有对更多的片段进行路由,因为流量451所需的目的地是网络400的输出端口13。这个路径需要使用已被流量450占用的链路(424x,433A)。这就需要无阻塞流量的一些重新路由,来允许对流量451进行路由。
图4b示出了网络400的替代的路由安排,其允许四个流量450-453,在不互相阻塞的情况下,可以到达它们的目的地。应当注意的是,仅仅对流量453的路由进行修改,以允许流量451路由到网络400的输出端13。如图4a所示,流量450仍然是通过链路(1,413A)、(414x,423A)、(424x,433A)和(434x,11)在输入端1和输出端11之间进行路由。类似地,流量452仍然是沿着链路(8,417B)、(418y,425C)、(426x,433B)和(434y,12)进行路由。
然而,图4b的流量453的路由与图4a中的不同。片段453沿着链路(9,417C)路由到源交换机412。正如前面可以将数据缓存在源交换机412里的虚拟输出队列。片段453B可以通过链路(418x,423C)路由到中间交换机420。片段453C可以通过链路(424z,437A)路由到宿交换机432。最后,片段453D可以通过链路(438z,19)路由到网络400的输出端口19。
流量453的路由的改变允许流量451通过不被阻塞的路径到达网络400的输出端13。流量451包含片段451A-451D。片段451A可以沿着链路(7,417A)路由到源交换机412。可以将数据缓存在源交换机412里的虚拟输出队列。片段451B可以通过链路(418z,427C)路由到中间交换机422。片段451C可以通过链路(428x,433C)路由到宿交换机430。最后,片段451D可以通过链路(434z,12)路由到所需的网络400的输出端口13。
应当注意的是,图4a和图4b的路由一旦建立,其本质上是静态的。虽然重新路由允许所有流量同时地运行,但是重新路由过程是复杂的,且需要整个网络400的合作。可能会发生这样的情况,为了容纳单个新的流量,需要改变网络400中的每一个流量的每一个路由。重新路由可能导致目前的流量的中断且需要大量资源。创建以合作的方式进行运行的路由将是可取的。此外,在局部的基础上作出路由决定而不是需要透过整个网络400作出决定,这也将是可取的。
图4c示出了动态路由的实施例,其比先前所描述的静态路由方法更有优势。正如前面流量450将在输入端1和输出端11之间进行路由,流量451将在输入端7和输出端13之间进行路由,流量452将在输入端8和输出端12之间进行路由,从及流量453将在输入端9和输出端19之间进行路由。
正如先前的图所描述,流量,例如流量450可以包含片段450A、450B、450C和450D。图4c示出了每个片段可以进一步包含子片段,例如,片段450B可以包含子片段450B1、450B2和450B3。其他片段,例如片段450A,可以不包含子片段。
流量450可以连接输入端口1至输出端口11。流量450包含片段450A、450B、450C和450D。片段450A可以沿着链路(1,413A)路由到源交换机410。可以将数据缓存在源交换机410里的虚拟输出队列。片段450B可以包含子片段450B1、450B2和450B3。每个子片段可以用于传输通过流量450移动的部分数据。
可以将数据以一个或多个分组(或一个或多个部分分组),分配在子片段中。可以将单个分组分配在几个子片段中。仅仅使用可用的子片段的一个子片段也是可能的。可以局部性地通过源交换机410,来决定数据分组(或部分分组)在片段450B的子片段的分配。可以根据至少一个分配算法来作出分配决定。任何数量的子片断都可用于形成一个片断。
子片段450B1可以通过链路(414x,423A)路由到中间交换机420。片段450B2可以通过链路(414y,425A)路由到中间交换机421。片段450B3可以通过链路(414z,427A)路由到中间交换机422。分配结果允许流量450使用网络400中的每一个中间交换机。
片段450C可以包含子片段450C1、450C2和450C3。子片段450C1可以通过链路(424x,433A)路由到宿交换机430。片段450C2可以通过链路(426x,433B)路由到宿交换机430。片段450C3可以通过链路(428x,433C)路由到宿交换机430。片段450D可以通过链路(434x,11)路由到网络400的输出端口11。
接着,可以增加流量453,来连接输入端口9至输出端口19。流量453包含片段453A-453D。片段453A可以沿着链路(9,417C)路由到源交换机412。可以将数据缓存在源交换机412里的虚拟输出队列。片段453B可以包含子片段453B1、453B2和453B3。每个子片段可以用于传输通过流量453移动的部分数据。正如流量450,可以将数据以一个或多个分组(或多个部分分组),分配在子片段中。可以局部性地通过源交换机412,来决定数据分组在片段453B的子片段的分配。
子片段453B1可以通过链路(418x,423C)路由到中间交换机420。片段453B2可以通过链路(418y,425C)路由到中间交换机421。片段453B3可以通过链路(418z,427C)路由到中间交换机422。
片段453C可以包含子片段453C1、453C2和453C3。子片段453C1可以通过链路(424z,437A)路由到宿交换机432。片段453C2可以通过链路(426z,437B)路由到宿交换机432。片段453C3可以通过链路(428z,437C)路由到宿交换机432。片段453D可以通过链路(438z,19)路由到所需的网络400的输出端口19。
接着,可以增加流量452,来连接输入端口8至输出端口12。流量452包含片段452A-452D。片段452A可以沿着链路(8,417B)路由到源交换机412。片段452B可以包含子片段452B1、452B2和452B3。可以局部性地通过源交换机412,来决定数据分组在片段452B的子片段的分配。
子片段452B1可以通过链路(418x,423C)路由到中间交换机420。片段452B2可以通过链路(418y,425C)路由到中间交换机421。片段452B3可以通过链路(418z,427C)路由到中间交换机422。片段452B的每一个子片段与片段453B的每一个子片段可以共享链路,例如,子片段453B3和子片段452B3共用链路(418z,427C)。因此,网络400中的链路可以比一次路由一个流量的链路要路由更多的流量。可以通过每个流量的数据分组(或部分数据分组)的时分复用或通过任何适合的方法,来实现支持多个流量。可以通过由源交换机412执行的分配算法来控制流量的一个或多子片段对链路的使用。
片段452C可以包含子片段452C1、452C2和452C3。子片段452C1可以通过链路(424x,433A)路由到宿交换机430。片段452C2可以通过链路(426x,433B)路由到宿交换机430。片段452C3可以通过链路(428x,433C)路由到宿交换机430。片段452D可以通过链路(434y,12)路由到所需的网络400的输出端口12。应当注意的是,片段452C的子片段与450C的子片段共享链路。正如上面所述,可以通过中间交换机420、421和420的分配算法来控制链路共享。
最后,可以增加流量451,来连接输入端口7至输出端口13。然而,流量451仅仅包含片段451A-451D。片段451A沿着链路(7,417A)路由到源交换机412。片段451B可以包含子片段451B1、451B2和451B3。子片段451B1可以通过链路(418x,423C)路由到中间交换机420。片段451B2可以通过链路(418y,425C)路由到中间交换机421。片段451B3可以通过链路(418z,427C)路由到中间交换机422。片段451C可以包含子片段451C1、451C2和451C3。子片段451C1可以通过链路(424x,433A)路由到宿交换机430。片段451C2可以通过链路(426x,433B)路由到宿交换机430。片段451C3可以通过链路(428x,433C)路由到宿交换机430。片段451D可以通过链路(434z,13)路由到所需的网络400的输出端口13。
使用分配算法来分配数据到多条链路和在这些链路上复用数据,其具有几个优点。第一,路由是无阻塞的。不需要对目前的路由进行重新路由便可以增加每一个可能的路由。第二,路由变为局部的决定,大大简化了网络400的控制。第三,它可以更容易地绕过无效的链路而进行路由,该无效的链路是拥挤的或被损坏的。
虽然图4c示出了每个片段可以进一步包含通过每一个交换机的每一个可能的输出进行分配的子片段,但是其他配置也是可能的且包含于本发明的范围之内。例如,一些交换机允许少于最大输出量的输出供片段使用。一些流量可以比其他流量有更高的优先级和比其他流量更大的交换机输出分配。
同样,一些片段不被分配,例如,流量450的片段450A可以被分配。片段450A的一个分配例子可以将该片段分成子片段450A1和450A2。子片段450A1使用链路(1,413A)来到达源交换机410。子片段450A2使用链路(8,417B)来到达源交换机412。这样的分配假设网络400之外的附加机制。
就图4c的静态路由而言,如图4c所示的动态路由的确具有缺点。静态路由仅为所有分组提供单一的路径。因此可以保证分组到达输出端口的顺序。当将分组分配到多个子片段时,没有办法保证分组以某一顺序到达,如一些链路可以比其他链路快。因此,动态路由需要对分组(或部分分组)进行编号或排序,以及通过宿交换机对分组(或部分分组)进行重新排序。
图5a示出了另一个实施例网络500,其包含目的地路由表的分配、下文中的表。网络500的拓扑与图1所示的网络100的拓扑相同。这个实施例通过分配路由表到系统的交换机,来提高路由效率。路由表的一个实施例可以包括交换机的输出到容易到达的宿设备的映射,通过网络500的宿设备号码对其进行识别。
映射最好是完整的,也就是,每一个表都映射所有容易到达的宿设备。然而,短表仅包含一些容易到达的宿设备是可以设想的且包含于本发明的范围之内。
中间交换机520创建中间表520A、下文中的表520A。表520A将输出524x映射到宿交换机530。输出524y被映射到宿交换机531、输出524z被映射到宿交换机532。中间交换机521和522以类似的方式创建表521A和522A。表520A、521A、522A与源交换机510、511、512共享。
源交换机510创建表源510A,即下文的表510A。表510A将输出514x映射到宿交换机530、531和532,即映射到网络的每一个宿交换机。将输出端514y映射到宿交换机530、531和532,以及将输出514z映射到宿交换机530、531和532。源交换机511和512以类似的方式创建表511A和512A。
一旦将表存储在交换机中,对各个流量的分组(或部分分组)进行路由将更加方便。如果一个表将在图4b所示的静态流量映射到网络500,流量450和452的路由是简单的。与流量450的路由冲突的流量451的路由,可以容易地连同流量453和452的路由来进行重新路由,以阻止阻塞。应当注意的是,静态路由问题的综合解决方案可能需要知道网络400中的每一个表。进一步应当注意的是,在图4c中所描述的动态路由使用表510A-512A和520A-522A更有效。
虽然这一次将表存储在交换机中是可能的,但是最好是连续地或周期性地,最好是以预设的时间间隔,对表进行更新。一个这样的更新率为每毫秒一次,但其他率是可以设想的且包含于本发明的范围之内。更新可能会经常发生,为了排除不能到达目的地的路由,即当某一链路变为无效时,仅使用能到达所需目的地的路由。根据本发明也可以通过这些系统和方法来处理其他故障(failures),包括多条链路故障、设备故障、多个设备故障、模块故障、底盘故障、交换机故障等。
在本发明的另一个实施例中,分组处理更有效和可以使用表510A-512A和520A-522A。图6a示出了含有数据部分601和报头602的数据分组600的通用配置。报头通常包含分组(或部分分组)的目的地地址。根据报头的布局(layout),对每种类型的分组,例如,TCP/IP分组进行处理,来获取目的地地址,以使得分组600(或部分分组)能够进行路由。分组的路由可以根据预先安排的静态路由或通过动态路由来发生;不管是哪一种情况,目的地最好是已知的。通常在每一阶段的路由都对报头进行处理。例如,在图4a中,通过流量450路由的分组经由源交换机410、中间交换机420和宿交换机430传输。在每个交换机中,对报头进行处理来提取目的地地址。在交换机获得目的地地址之后,就可以接着进行下一阶段的路由。
报头的处理可能需要交换机的处理能力和存储。在本发明的这个实施例中,在进入网络400之前,通过变换模块对分组报头进行处理,或在被分组600穿越的第一交换机如源交换机410中,对分组报头进行处理。在最初的报头处理后,最好不再对报头进行处理,因此创建单层网络,即处理一次报头的处理网络,因此,其独立于进一步的处理。报头处理从报头602中获取目的地地址。接着,将目的地地址映射到与网络400有关的目的地,即网络的输出端口。一个示例路由例如流量450具有网络400的输出端口11的目的地。
可以将最终目的地,如在图6b中所示的最终目的地603,添加到报头601。可以不用通过以下存储于每一个交换机中的路由表对报头进行处理,而对改进的分组610(或部分分组)进行路由。在本发明的某些实施例中,可以在宿设备中局部性地作出关于输出的决定。如在图5a中所示的路由表路由至宿交换机。
作为一个例子,图4b示出了流量450可以路由它的分组(或者部分分组)如下:首先,可以通过片段450A将数据分组600(或部分数据分组)发送到源交换机410,其中可以对报头602进行处理并转换成分组610(或部分分组,分别地)。流量450的最终目的地603为网络400的输出端口11。接着,可以通过片段450B将分组610(或部分分组)发送到中间交换机420。中间交换机420可以使用最终目的地603,将分组610路由到宿交换机430。
最后,宿交换机430将分组610转换成分组600,并将分组600(或部分分组)路由到网络400的最终目的地11。因此,为通过网络400的整个路由,仅对报头处理一次。内部的路由决定仅决定于最终目的地603。
应当注意的是,存储路由表,例如,图5a的表520A,增强了通过高速路由对报头处理一次而不需进一步对报头进行处理的优势。路由表通过提供每个交换机的能够到达最终目的地的输出列表,来帮助路由。
本发明的另一个实施例可以执行图4c所示的在网络500上覆盖的动态路由。采用流量450作为一个例子,可以建立流量到网络400的输出端口11。首先,可以通过片段450A将数据分组600(或部分数据分组)发送到源交换机410。其中可以对报头602进行处理并转换成分组610(或部分数据分组)。
接着,源交换机410可以使用分配算法来选择应该用于传输的子片段。在这个特定的情况下,路由表可以是不必要的,进一步简化源交换机410。在这个例子中,路由表不是必需的,因为在网络400的这个配置中,每一个中间交换机都可以接入到网络的每一个输出端口。
选择一个子片段后,可以将分组610(或部分分组)路由到中间交换机。在这个例子中,选择子片段450B1并将分组610路由到中间交换机420。接着,中间交换机420可以使用最终目的地603,来通过子片段450C1将分组610路由到宿交换机430。最后,宿交换机430将分组610转换成分组600,并将分组600路由到网络400的最终目的地11。
图6c是用于优化分组报头处理的另一个实施例。分组620(或部分分组)含有数据部分601、报头602和三个路由部分604a、604b和604c。路由部分包含分组620(或部分分组)的显式路由指示。网络500的实施例包含三层交换机,该三层交换机限制路由部分的数量。网络500的包含任何层数的其他配置是可以设想的。因此,任何数量的路由部分是可以设想的且包含于本发明的范围之内。
正如以下这个例子,顺着图4b中的流量450发送分组600(或部分分组)。通过片段450A将分组600发送到宿交换机410,其中对报头602进行处理以产生分组620。然后,源交换机410从分组620中删除并取出路由部分604c的值,以产生如图6d所示的分组630。然后,源交换机410使用输出端414x,来通过片段450B将分组630发送到中间交换机420,其中,输出端414x为从路由部分604c中取出的值。然后,中间交换机420从分组630中删除并取出路由部分604b的值,以产生如图6e所示的分组640。然后,中间交换机420使用输出端424x,来通过片段450C将分组640发送到宿交换机430。然后宿交换机430从分组640中删除并取出路由部分604a的值,以产生分组600。然后,宿交换机430通过片段450D将分组600发送到网络400的输出端口11。
处理的分组620(或部分分组)的另一运用是使用图4c所示的在网络500上覆盖的动态路由。使用在动态路由方法中的分组620(或部分分组)如下进行。正如前面将流量450的分组600(或部分分组)发送到宿交换机410。宿交换机410对报头602进行处理,来产生如图6f所示的报头620A。在这一点上,通过源交换机410作出动态路由决定。
然后,源交换机410从分组620A中删除并取出路由部分604e的值,以产生如图6g所示的分组630A。然后,源交换机410使用输出端414y,来通过子片段450B2将分组630A发送到中间交换机421。然后中间交换机420从分组630A中删除并取出路由部分604d的值,以产生如图6e所示的分组640。然后,中间交换机421使用输出端414x,来通过子片段450C1将分组640发送到宿交换机430。然后,宿交换机430从分组640中删除并取出路由部分604a的值,以产生分组600。然后,宿交换机430通过片段450D将分组600发送到网络400的输出端口11。应当注意的是,最好是,只在宿交换机410中能为这个路由作出动态路由决定。中间交换机421没有动态路由选择,但使用负载分配算法来协调几个流量之间的链路(426x,433B)的共享。
虽然图4c中所示的网络400的动态路由的配置允许在源交换机中作出所有动态路由决定,但是其他配置也是可能的且包含于本发明的范围之内。正如一个例子,二层中间交换机允许在第一层中间交换机中作出动态路由决定。一种选择是允许源交换机来为整个网络作出所有动态分配,如上述的简化例子所示。另一个选择性实施例允许通过每个交换机对分组进行重新处理,来调整局部路由的要求。
虽然使用基于目的地的路由表,连同对单个报头进行处理,但是每一种技术在其权利内是有用的,并且是可以在本发明的范围内设想的。仅对报头处理一次和使用其他的路由方法是有用的,因为中间交换机和宿交换机从来不对报头进行处理。同样,在每个交换机中创建表,允许绕过无效的链路而重新路由,即使在网络中的每一个交换机中对分组的报头进行处理。
图5b示出了图5a中所示的相同网络500的另一个实施例。然而,在这个例子中,链路(524x,533A)已经发生故障。可以对图5b中所示的表进行更新,并如下建立路由。首先,每个宿交换机获取交换机输出到宿交换机的映射。
中间交换机520创建表520B。表520B没有将输出524x映射到任何地方。输出524y被映射到宿交换机531,以及输出524z被映射到宿交换机532。中间交换机521和522创建表521A和522A,如上面参考图5a所示的实施例进行的描述。
源交换机510、511和512共享表520B、521A和522A。源交换机510创建表510B。表510B将输出514x映射到宿交换机531和532。输出514y被映射到宿交换机530、531和532,以及输出514z被映射到宿交换机530、531和532。源交换机511和512创建表511A和512A,如上面参考图5a所示的实施例进行的描述。
一旦将表存储在交换机中,各个流量中的分组的路由能将故障的链路考虑进去。在参考图4b进行描述的静态路由方案实施例中,流量450的路由是阻塞的。这是绝对的阻塞,因为输出端433B和433C分别被流量452和451占用。更新的表向网络500暴露了故障,留下协议中的更高的网络层来解决的问题。
参考图4c进行描述的动态路由实施例可以使用更新的路由表来绕过故障的链路而进行路由。作为一个示例,使用流量450,可以建立到达网络400的输出端11的路由。首先,通过片段450A,将数据分组600(或部分数据分组)发送到源交换机410,其中可以对报头602进行处理并转换成分组610。
接着,源交换机410可以使用分配算法来选择应该用于传输的子片段。在这个例子中,假定链路(524x,533A)的故障,仅可以选择两个子片段。在这个例子中,选择子片段450B3,并将分组610路由到中间交换机422。接着,中间交换机422使用最终目的地603,来通过子片段450C3将分组610(或部分数据分组)路由到宿交换机430。最后,宿交换机430将分组610(或部分数据分组)路由到网络400的输出端口11。这个路由避免了故障的链路(524x,533A)。
虽然优选的实施例使用动态路以及单个报头处理、最终目的地分组(或部分分组)和表;但所有其他可以的组合是可以设想的且包含于本发明的范围之内。
先前的描述为服务器/网络结合建议了几个可能的架构。图7示出了服务器/网络的架构700,其包含源服务器701,源服务器701通过一组连接710与网络702的端口1-9相连接。宿服务器703通过一组连接711与网络702的端口11-19相连接。连接710和711可以是单向的或双向的。
虽然端口1-9可以被指定为“输入端”,但信号如信用值和/或数据,可以从网络702流到源服务器701。同样,虽然端口11-19可以被指定为“输出端”,但信号如信用值和/或数据,可以从网络703流到源服务器702。
网络702可以类似于含有源交换机层、中间交换机层和宿交换机层的网络100。然而,可以将源交换机功能归入源服务器。同样,可以将宿交换机功能归入宿服务器。如果源交机和宿交换机功能两者都被归入服务器701、703,然后,网络702仅包含中间交换机功能。还可以将中间交换机功能归入第三“服务器”。
图8示出了服务器/网络的另一个实施例架构800。服务器源/宿801作为网络802的源和宿。服务器源/宿801通过一组连接810与网络802的端口1-9相连接。连接810可以是单向的或双向的。
网络802可以类似于含有源交换机层、中间交换机层和宿交换机层的网络100。然而,可以将源交换机功能和/或宿交换机功能归入服务器源/宿801。如果源交机和宿交换机功能两者都被归入服务器源/宿801,那么,网络802仅包含中间交换机功能。还可以将中间交换机功能归入第三“服务器”。可以在任何适合的配置中使用其他包括多层中间交换机“服务器”的架构。
因此,本发明提供了提高数据传输网络的效率的方法和设备。此外,提供了在故障条件下减少数据丢失从而提高传输效率的方法和设备。本领域的技术人员明白,可以用本发明描述的实施例以外的实施例来实现本发明,本发明描述的实施例的目的仅在于举例说明,而没有限制性。本发明仅由权利要求来限定。

Claims (10)

1.一种单层网络,其特征在于,所述网络包括:
至少一个输入端口;
至少一个输出端口;
至少一个源交换机,所述源交换机包括至少一个输入、至少两个输出和至少一个虚拟输出队列,其中,所述至少一个虚拟输出队列与至少一个宿相关;
至少一个宿交换机,所述宿交换机包括至少一个输入、至少两个输出和至少一个调度机制;及
连接所述至少一个源交换机和至少一个宿交换机的架构;
其中,所述至少一个虚拟输出队列提供所述至少一个调度机制的队列状态信息,所述至少一个调度机制响应于所述队列状态信息的接收,生成信用值,其中,所述源交换机响应于所述信用值的接收,使用至少一个负载分配算法,通过多个输出发送单个数据流量的分组或部分分组;及
其中,通过所述源交换机对所述分组或部分分组进行排序和通过所述宿交换机对所述分组或部分分组进行重新排序。
2.根据权利要求1所述的网络,其特征在于,所述网络进一步包括至少一个中间交换机,其中所述至少一个中间交换机与所述至少一个宿交换机相连接。
3.根据权利要求1所述的网络,其特征在于,所述网络进一步包括至少一个中间交换机,其中所述至少一个中间交换机与所述至少一个源交换机相连接。
4.根据权利要求1所述的网络,其特征在于,所述至少一个源交换机和所述至少一个宿交换机是相同的。
5.根据权利要求2所述的网络,其特征在于,所述至少一个中间交换机使用至少一个负载分配算法,通过多个输出发送数据的分组或部分分组。
6.一种单层网络,其特征在于,所述网络包括:
至少一个输入端口;
至少一个输出端口;
至少一个源交换机,所述源交换机包括至少一个输入和至少一个输出;
至少一个宿交换机,所述宿交换机包括至少一个输入和至少一个输出;及
连接所述至少一个源交换机和至少一个宿交换机的架构;
其中,所述至少一个源交换机存储至少一个源表,所述至少一个源表用于将所述至少一个源交换机的所述至少一个输出映射到所述至少一个宿交换机,以及,其中所述源表从所述至少一个宿交换机或至少一个中间交换机中接收更新的拓扑信息,及
其中,通过变换模块或通过所述至少一个源交换机对进入网络的每个分组报头进行处理。
7.一种单层网络,其特征在于,所述网络包括:
至少一个输入端口;
至少一个输出端口;
至少一个源交换机,所述源交换机包括至少一个输入和至少一个输出;
至少一个宿交换机,所述宿交换机包括至少一个输入和至少一个输出;及
连接所述至少一个源交换机和至少一个宿交换机的架构;
其中,所述至少一个源交换机对至少一个分组报头进行处理,来产生至少一个处理的分组或处理的部分分组,以及,其中将所述至少一个处理的分组或处理的部分分组路由到所述宿交换机,其独立于所述至少一个分组报头的进一步处理。
8.一种在单层网络中对分组或部分分组进行路由的方法,其特征在于,所述网络包括输入端口、输出端口,以及至少一个源交换机和至少一个宿交换机的架构,其中所述至少一个源交换机包括至少一个虚拟输出队列,以及,其中所述至少一个宿交换机包括至少一个调度机制,所述方法包括:
将队列状态信息从至少一个虚拟输出队列发送到至少一个调度机制;
响应于所述队列状态信息的接收,将至少一个信用值从所述至少一个调度机制发送到所述虚拟输出队列;
对在所述源交换机的至少两个分组或至少两个部分分组进行排序;
响应于所述信用值的接收,使用至少一个负载分配算法,通过多个输出,将排序的分组或部分分组的至少一个数据流量从所述至少一个源交换机发送到所述至少一个宿交换机,其中所述数据流量包含多个分组;及
对在所述宿交换机的所述分组或部分分组进行重新排序。
9.一种在单层网络中对分组或部分分组进行路由的方法,其特征在于,所述网络包括至少一个输入端口、至少一个输出端口,以及至少一个源交换机和至少一个宿交换机的架构,所述方法包括:
通过变换模块或通过所述至少一个源交换机,对每一个分组或处理的部分分组进行处理,所述处理产生至少一个处理的分组或处理的部分分组;
将至少一个源表存储在所述至少一个源交换机中,所述至少一个源表用于将所述至少一个宿交换机的所述至少一个输出映射到所述网络的所述至少一个输出端口,及
将至少一个数据流量从所述至少一个源交换机发送到所述网络的所述至少一个输出,其中,使用所述源表,对所述数据流量进行路由,其中所述数据流量包含多个分组或多个部分分组,以及,其中至少一个分组或部分分组包含至少一个报头。
10.一种在单层网络中对分组进行路由的方法,其特征在于,所述网络包括至少一个输入端口、至少一个输出端口,以及至少一个源交换机和至少一个宿交换机的架构,所述方法包括:
通过变换模块或通过所述至少一个源交换机,对每一个分组或部分分组进行处理,所述处理产生至少一个处理的分组或处理的部分分组;
将至少一个处理的分组从所述至少一个源交换机路由到所述至少一个宿交换机,其独立于所述至少一个分组报头的进一步处理。
CN201210057915.7A 2011-03-07 2012-03-07 单层网络、以及在单层交换网络中进行路由的方法 Expired - Fee Related CN102684990B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/041,507 2011-03-07
US13/041,507 US8705544B2 (en) 2011-03-07 2011-03-07 Method and apparatus for routing in a single tier switched network

Publications (2)

Publication Number Publication Date
CN102684990A true CN102684990A (zh) 2012-09-19
CN102684990B CN102684990B (zh) 2015-12-16

Family

ID=45655094

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210057915.7A Expired - Fee Related CN102684990B (zh) 2011-03-07 2012-03-07 单层网络、以及在单层交换网络中进行路由的方法

Country Status (6)

Country Link
US (2) US8705544B2 (zh)
EP (1) EP2498456B1 (zh)
KR (1) KR101409919B1 (zh)
CN (1) CN102684990B (zh)
HK (1) HK1169237A1 (zh)
TW (1) TWI617179B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016206516A1 (zh) * 2015-06-26 2016-12-29 深圳市中兴微电子技术有限公司 交换网络同步方法及交换装置、接入装置、存储介质
CN108173770A (zh) * 2016-10-21 2018-06-15 迪诺.亚当.维斯特加尔德.利瓦伊 平面式数据路由链

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112012005625B4 (de) * 2012-01-10 2018-08-02 Intel Corporation Datenflusssteuerung für einen Speicherserver
US8867559B2 (en) * 2012-09-27 2014-10-21 Intel Corporation Managing starvation and congestion in a two-dimensional network having flow control
FR3036239B1 (fr) * 2015-05-13 2018-07-06 Bull Sas Reseau d'equipements interconnectes par des commutateurs integrant des tables de routage
CN111901257B (zh) * 2020-08-10 2022-02-25 曙光信息产业(北京)有限公司 一种交换机、报文转发方法及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030021266A1 (en) * 2000-11-20 2003-01-30 Polytechnic University Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined hierarchical arbitration scheme
US20070253439A1 (en) * 2006-04-27 2007-11-01 Ofer Iny Method, device and system of scheduling data transport over a fabric

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519707A (en) * 1992-10-13 1996-05-21 Synoptics Communications, Inc. Multiplexing of communications services on a virtual service path in an ATM network or the like
DE4331618A1 (de) * 1993-09-17 1995-03-23 Philips Patentverwaltung Kommunikationselement für ein hierarchisches Verwaltungsnetz
US5528591A (en) * 1995-01-31 1996-06-18 Mitsubishi Electric Research Laboratories, Inc. End-to-end credit-based flow control system in a digital communication network
AU6549296A (en) 1995-07-19 1997-02-18 Ascom Nexion Inc. Method and apparatus for reducing information loss in a communications network
US6085238A (en) * 1996-04-23 2000-07-04 Matsushita Electric Works, Ltd. Virtual LAN system
FI103312B1 (fi) * 1996-11-06 1999-05-31 Nokia Telecommunications Oy Kytkentämatriisi
US6052375A (en) * 1997-11-26 2000-04-18 International Business Machines Corporation High speed internetworking traffic scaler and shaper
US5999531A (en) 1998-04-17 1999-12-07 Cabletron Systems, Inc. Method and system for identifying ports and forwarding packets in a multiport switch
US6640261B1 (en) * 1999-10-27 2003-10-28 Intel Corporation Method and apparatus for scheduler coupled to memory array wherein scheduler addresses array with at least a portion of an identification number
US7133399B1 (en) * 2000-10-31 2006-11-07 Chiaro Networks Ltd System and method for router central arbitration
US7095744B2 (en) 2000-11-22 2006-08-22 Dune Networks Method and system for switching variable sized packets
US6876657B1 (en) * 2000-12-14 2005-04-05 Chiaro Networks, Ltd. System and method for router packet control and ordering
US7027443B2 (en) * 2001-08-23 2006-04-11 Pmc-Sierra Ltd. Reassembly engines for multilink applications
US7596627B2 (en) * 2001-12-18 2009-09-29 Cisco Technology, Inc. Methods and apparatus for network congestion control
US7397794B1 (en) * 2002-11-21 2008-07-08 Juniper Networks, Inc. Systems and methods for implementing virtual switch planes in a physical switch fabric
US7026042B2 (en) 2003-03-26 2006-04-11 The United States Of America As Represented By The Secretary Of The Navy Highly conducting and transparent thin polymer films formed from double and multiple layers of poly(3,4-ethylenedioxythiopene) and its derivatives
US7792118B2 (en) * 2003-06-19 2010-09-07 Polytechnic University Switch module memory structure and per-destination queue flow control for use in a switch
US8594087B2 (en) * 2003-10-17 2013-11-26 Netlogic Microsystems, Inc. Encoding-based multicast packet duplication control suitable for VLAN systems
US7738473B2 (en) * 2006-04-20 2010-06-15 Forestay Research, Llc Multicast switching in a credit based unicast and multicast switching architecture
US7768995B2 (en) * 2006-08-01 2010-08-03 Cisco Technology, Inc. Techniques for one-way synchronization of routing information among intermediate nodes
WO2008070800A1 (en) * 2006-12-06 2008-06-12 Fusion Multisystems, Inc. Apparatus, system, and method for storage space recovery in solid-state storage
TWI332347B (en) * 2007-01-10 2010-10-21 Switchable transmission device of a vdsl co/cpe circuit
US7843908B2 (en) * 2007-06-08 2010-11-30 Roberto Rojas-Cessa Scalable two-stage Clos-networking switch and module-first matching
US8200798B2 (en) * 2007-12-29 2012-06-12 Cisco Technology, Inc. Address security in a routed access network
EP2134037B1 (en) 2008-06-12 2011-05-11 Alcatel Lucent Method and apparatus for scheduling data packet flows
US8565247B2 (en) * 2009-08-19 2013-10-22 Brocade Communications Systems, Inc. Techniques for efficiently updating routing information upon shortest path tree computation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030021266A1 (en) * 2000-11-20 2003-01-30 Polytechnic University Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined hierarchical arbitration scheme
US20070253439A1 (en) * 2006-04-27 2007-11-01 Ofer Iny Method, device and system of scheduling data transport over a fabric

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016206516A1 (zh) * 2015-06-26 2016-12-29 深圳市中兴微电子技术有限公司 交换网络同步方法及交换装置、接入装置、存储介质
US10461988B2 (en) 2015-06-26 2019-10-29 Sanechips Technology Co., Ltd. Switching network synchronization method, switching device, access device and storage medium
CN108173770A (zh) * 2016-10-21 2018-06-15 迪诺.亚当.维斯特加尔德.利瓦伊 平面式数据路由链

Also Published As

Publication number Publication date
US20120230342A1 (en) 2012-09-13
US9154425B2 (en) 2015-10-06
US20140140214A1 (en) 2014-05-22
KR101409919B1 (ko) 2014-06-19
US8705544B2 (en) 2014-04-22
TWI617179B (zh) 2018-03-01
HK1169237A1 (zh) 2013-01-18
CN102684990B (zh) 2015-12-16
EP2498456A1 (en) 2012-09-12
KR20120102026A (ko) 2012-09-17
EP2498456B1 (en) 2015-08-05
TW201246845A (en) 2012-11-16

Similar Documents

Publication Publication Date Title
US7298752B2 (en) Packet communication device
JP3455257B2 (ja) 非同期スイッチングノ−ドとそこで使用されるスイッチング素子用論理手段
US6539432B1 (en) Network manager, nodes and network management system
CA2444363C (en) Layered network node, network incorporating the same, node, and layered network
US6339488B1 (en) Large scale communications network having a fully meshed optical core transport network
EP1122971A2 (en) Data channel reservation in optical burst-switched networks
US7145867B2 (en) System and method for slot deflection routing
CN102684990B (zh) 单层网络、以及在单层交换网络中进行路由的方法
JP4966206B2 (ja) ネットワーク・ルーティングを改良するためのイーサネット系のシステムおよび方法
CN102714628A (zh) 通信系统、控制装置、处理规则设置方法、分组传输方法和程序
CN101159687B (zh) 一种多通道通信传输数据的系统和装置与方法
WO2010038775A1 (ja) ネットワークノードおよびその負荷分散方法
US20050111465A1 (en) Infiniband switch operating in a clos network
JP3449539B2 (ja) パケットルータ
JP2004531099A (ja) クウォリティ・オブ・サービス・ハンドリングを利用したスケーラブルインターコネクト構造
US8942232B1 (en) Multi-stage switching topology
US7016305B1 (en) Method and apparatus for distributing information within a packet switching system
US20050111433A1 (en) Method of operating a Clos network
JP2000092000A (ja) 完全な網目状光コア伝送ネットワ―クを有する大規模通信ネットワ―ク
JP3801943B2 (ja) マルチレイヤ光ネットワークおよびそのパス設定方法ならびに中継用光ルータ
US20030031174A1 (en) Methods and systems for intact datagram routing
KR20220023676A (ko) 데이터 센터
Tse et al. Architectural designs for a scalable reconfigurable IP router
JP2000184408A (ja) 光ネットワーク
JP2004153706A (ja) 通信装置および網インタフェース装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1169237

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1169237

Country of ref document: HK

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170317

Address after: Singapore Singapore

Patentee after: Avago Technologies Fiber IP Singapore Pte. Ltd.

Address before: 16215 Alton Park Road, Irvine, California, 92618-7013

Patentee before: Zyray Wireless Inc.

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: 20151216

Termination date: 20170307