CN102474467B - 在通信网络中对分组进行选路的方法和设备 - Google Patents

在通信网络中对分组进行选路的方法和设备 Download PDF

Info

Publication number
CN102474467B
CN102474467B CN201080037013.6A CN201080037013A CN102474467B CN 102474467 B CN102474467 B CN 102474467B CN 201080037013 A CN201080037013 A CN 201080037013A CN 102474467 B CN102474467 B CN 102474467B
Authority
CN
China
Prior art keywords
clag
address
grouping
downstream node
node
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.)
Expired - Fee Related
Application number
CN201080037013.6A
Other languages
English (en)
Other versions
CN102474467A (zh
Inventor
J·克塔尔沃
V·海米格
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.)
Origin Asset Group Co ltd
Original Assignee
Alcatel Lucent SAS
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 Alcatel Lucent SAS filed Critical Alcatel Lucent SAS
Publication of CN102474467A publication Critical patent/CN102474467A/zh
Application granted granted Critical
Publication of CN102474467B publication Critical patent/CN102474467B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint 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/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种方法和相关的网络节点,所述方法包括以下中的一个或更多:在网络节点处建立第一子链路聚合组(CLAG),其中,所述第一CLAG包括去往第一下游节点的至少一个链路;在网络节点处建立第二CLAG,其中,第二CLAG包括去往第二下游节点的至少一个链路;在网络节点处建立父链路聚合组(PLAG),其中,PLAG包括第一CLAG和第二CLAG;在网络节点处接收分组,其中,所述分组包括该分组的目的地址;确定所述分组的目的地关联于PLAG;以及,在第一CLAG和第二CLAG两者上都发送该分组。

Description

在通信网络中对分组进行选路的方法和设备
技术领域
此处公开的各种示例性实施例一般涉及通信网络中的分组选路和服务器负载均衡。
背景技术
在例如IP电视(IPTV)的许多客户端-服务器应用中,请求特定服务的客户端的数量可以相当多。因为任何计算机具有有限的处理能力,所以服务器在服务质量降级到不可接受水平之前可以仅向有限数量的客户端提供服务。随着活跃客户端数量的增多,简单地提供更快的服务器组件这一最显而易见的解决方案可以变得过分昂贵和技术上不可能达到。相应地,许多客户端-服务器应用提供多个冗余服务器以便容纳所有客户端请求。各种形式的负载均衡因而被用于确保没有任何单一服务器变得过分陷于向客户端请求提供服务的困境。
在一种基本形式的负载均衡中,可以提供多个服务器,以及客户端可以简单地选择一个服务器来处理请求。这在例如文件镜像的应用中可以见到,其中,在所述文件镜像中,提供所请求的文件的多个计算机的列表被呈现给用户,该用户然后简单地选取一个服务器来从其下载。可以提供例如所述服务器的当前状态或地理位置的其它信息,但处理该信息并做出根据情报的服务器选择是用户的责任。如果已选的服务器不提供所述客户端所期望的服务质量,则可以选择不同的服务器。
在另一种形式的服务器负载均衡中,客户端可以向多个服务器发送多个请求,以及简单地接受第一个到达的响应,丢弃掉任何后来到达的响应。再次地,由于所述请求必须被复制并发送到多个地址,这需要客户端方面的更多工作。组播协议可以被用于将单一请求发送到多个目的地,但再次地,该方法将负担施加到客户端、服务器和网络上。所述一个或多个服务器将需要知道其为之提供服务的每个客户端,并且加入由该客户端作为主人的组播组中。这是不切实际的。
在更高级形式的负载均衡中,中央服务器可以仲裁客户端将从哪个服务器接收服务。根据该方法,客户端可以将其请求发送到中央服务器,该中央服务器将然后确定向该客户端提供服务的合适的活动服务器。所述中央服务器可以然后要么以所指派活动服务器的地址响应于所述客户端,要么将初始请求传递给所述活动服务器。由此,该方法可以要求所述客户端实施不必要的会话建立,以及使所述客户端接触到服务器系统的内部运转的至少一部分。该方法可以还带有使服务器系统更易受到例如拒绝服务攻击等攻击的侵害的额外缺点。
另外,中央服务器将具有与任何其它计算系统一样的极限,以及同样可以接收到太多建立请求而不能高效处理。由此,在特别高客户端容量的应用中,可以要求多个中央服务器,以及所述问题变成递归的。因而必须实现另一种形式的负载均衡,以便确保没有任何中央服务器接收到多于其可以高效处理的更求。
相应地,存在对这样一种方法的需求,该方法在不会不必要地使客户端设备在请求服务时实施的方法复杂化的情况下,在多个服务器之间均衡服务器负载。另外,存在对这样一种方法的需求,该方法以对客户端设备基本不可见的方式均衡服务器负载。
任何网络系统的另一个可能的故障点在于连接网络节点的链路。此处通过引用而被并入的IEEE802.1AX提供链路聚合组(LAGs)来对抗该可能性。LAG由同一组两节点之间的多个链路组成。当在LAG上发送分组时,发送节点简单地选择组成该LAG的链路中的一个,以及在该所选择的链路上发送该分组。给予LAG标识符,所述标识符例如是其成员链路中的一个的MAC地址。这样,分组可以被在去往其目的地的多个链路中的一个上发送,其中,所述发送是以对除所述LAG的任意端点的两个设备之外的所有设备几乎不可见的方式。如果一个链路出故障,则分组仍然可以被在所述LAG中的剩余链路上发送。
尽管在对抗链路故障和提高传输速度时有效,但LAG无益于许多其它问题。LAG的运转非常简单,以及不是高度可定制的。由此,当设计修复网络问题和提高性能的新的和创造性方法时,LAG不是特别有帮助。相应地,存在另外的对这样的LAG实现的需求,所述LAG实现允许更高程度的功能性和可定制性。
本发明的前述目的和优点是可以通过各种示例性实施例达到的那些目的和优点的示例,并且不旨在是穷举性的或限制可以被实现的可能的优点。由此,各种示例性实施例的这些以及其它目的和优点将是从此处的描述中显而易见的,或者可以从实践如此处所收录的或鉴于对本领域的技术人员显而易见的任意变型而修改的各种示例性实施例来得知。相应地,本发明存在于此处所示和在各种示例性实施例中所描述的新颖方法、排列、组合和改进。
发明内容
鉴于当前对于一种以对客户端设备几乎不可见的方式在多个冗余服务器之间均衡服务器负载的方法的需求,各种示例性实施例的简短概括被呈现。在以下概括中可以做出一些简化和省略,其中,所述简化和省略旨在突出和引入所述各种示例性实施例的一些方面,而不旨在限制本发明的范围。在稍后部分中将跟随足以使本领域的技术人员可以形成和使用所述专利概念的对优选示例性实施例的详细描述。
各种示例性实施例涉及一种方法以及相关的网络节点,所述方法包括以下中的一个或更多:在所述网络节点处建立第一子链路聚合组(CLAG),其中,所述第一CLAG包括去往第一下游节点的至少一条链路;在网络节点处建立第二CLAG,其中,所述第二CLAG包括去往第二下游节点的至少一条链路;在所述网络节点处建立父链路聚合组(PLAG),其中,所述PLAG包括所述第一CLAG和所述第二CLAG;在所述网络节点处接收分组,其中,所述分组包括该分组的目的地址;确定所述分组的目的地关联于所述PLAG;以及,在所述第一CLAG和所述第二CLAG两者上都发送所述分组。
这样应该显而易见,各种示例性实施例使得能够将任意分组选路到一组服务器中的每一个,以及使得能够确定哪个服务器应当处理和/或对已接收分组做出响应。特别地,通过在包含于PLAG中的每个CLAG上发送分组,连接到所述CLAG的每个服务器将接收到所述分组的副本。由此,各种示例性实施例使得能够以对所述客户端设备几乎不可见的方式将分组传送到多个服务器。
附图说明
为更好地理解各种示例性实施例,做出对附图的引用,其中:
图1是用于将单播或组播分组选路到多个服务器的示例性网络的示意图;
图2是用于将单播或组播分组选路到多个服务器的示例性选路节点的示意图;
图3是用于存储与IP地址解析相关的数据的示例性数据排列的示意图;
图4是用于存储子链路聚合组配置的示例性数据排列的示意图;
图5是用于存储父链路聚合组配置的示例性数据排列的示意图;
图6是用于在多个服务器之间实施负载均衡的示例性网络的示意图;
图7是用于存储当前活跃服务器的已索引列表的示例性数据排列的示意图;
图8是用于将单播或组播分组选路到多个服务器的示例性方法的流程图;以及
图9是用于在多个服务器之间实施负载均衡的示例性方法的流程图。
具体实施方式
现在参考在其中相似数字指代相似部件或步骤的附图,公开了各种示例性实施例的宽泛方面。应当指出,尽管各种示例使用字母来表示各种网络地址,但这些字母起占位符作用,以及在实际运转中,根据合适的标准形成的有效网络地址将很可能出现。另外,尽管各种实施例此处特别地被描述为对IP分组进行选路,但本公开说明决不限于该协议。
图1是用于将单播或组播分组选路到多个服务器的示例性网络100的示意图。示例性网络100可以包括发送节点110、通信网络120、选路节点130以及许多接收节点140a、140b、140c。
发送节点110可以是与接收节点140a、140b、140c进行通信的设备。发送节点110可以例如充当客户端设备,以及为用户提供对可以由接收节点140a、140b、140c提供的服务的访问。更具体地,在各种示例性实施例中,发送节点110是个人或膝上电脑、无线电子邮件设备、手机、机顶盒或能够将分组发送到另一网络设备的任何其它设备。发送节点110可以关联于例如“D”的IP地址。发送节点110可以还关联于MAC地址。
通信网络120可以是用于在发送节点110与选路节点130之间提供数据通信的任何网络。通信网络120可以是分组交换或电路交换的。进一步地,通信网络120可以向与通信网络120进行通信的各种用户设备提供例如电话或互联网服务。
选路节点130可以是这样的设备,所述设备接收分组并根据其目的地址重传分组。更具体地,在各种示例性实施例中,选路节点130是分组路由器、网络交换机、多层交换机、服务器或能够读取地址并在关联于该地址的端口上转发分组的任何其它设备。选路节点130可以关联于至少一个MAC地址“T”。尽管很可能选路节点130关联于多个MAC地址,但为简单起见,此处T将被用于指代关联于选路节点130的MAC地址中的任意一个合适的MAC地址。
接收节点A-C140a、140b、140c可以是与发送节点110进行通信的网络设备。接收节点A-C140a、140b、140c可以是向用户节点110提供例如IP电话或文件存取的服务的服务器设备。更具体地,在各种示例性实施例中,接收节点A-C140a、140b、140c的每个可以是服务器、个人或膝上电脑、无线电子邮件设备、手机、机顶盒或能够从另一网络设备接收分组的任何其它设备。
接收节点A140a可以关联于IP地址A和例如U和V的许多MAC地址。接收节点B140b可以关联于IP地址B和例如W、X和Y的许多MAC地址。接收节点C140c可以关联于IP地址C和例如Z的许多MAC地址。应当显而易见,接收节点A-C140a、140b、140c的每个可以具有任意数量的网络接口以及因此任意数量的MAC地址,包括如示例性接收节点C140c的情况的单一MAC地址。接收节点A-C140a、140b、140c可以包括未耦合到选路节点130的额外网络接口,但为了此处描述的示例,MAC地址U、V、W、X、Y和Z每个都关联于连接到选路节点130的网络接口。
在已描述了网络100的部件的情况下,将提供网络100的运转的简短概括。应当显而易见,以下描述旨在提供网络100的运转的概述,以及因此是在一些方面的简化。下面将结合图2-5和8进一步详细描述网络100的详细运转。
根据各种示例性实施例,发送节点可以在通信网络120上发送分组。所述分组可以被寻址到IP地址A(即关联于接收节点A140a的IP地址),以及可以被在帧150a内传送到通信网络120中的下一个设备。选路节点130可以然后接收被寻址到MAC地址T的帧150b内的该分组。在确定该分组应当在哪个端口上被转发时,选路节点130可以读取该分组的IP地址,并且查阅其配置以确定怎样处理该分组。在该实例中,选路节点130可以确定其已被配置为,将被寻址到IP地址A的分组发送到全部三个接收节点140a、140b、140c。选路节点130可以然后选择将分组发送到接收节点A140a基于的链路、将分组发送到接收节点B140b基于的链路和将分组发送到接收节点C140c基于的链路。最终,选路节点130可以将帧150c发送到具有MAC地址U的接口、帧150d发送到具有MAC地址Y的接口、以及帧150e发送到具有MAC地址Z的接口。
由此,在发送节点110方面没有任何特别动作的情况下,由发送节点110发送到IP地址A的分组已在每个接收节点140a、140b、140c处被接收。接收节点140a、140b、140c现在自由确定接收节点140a、140b、140c的哪个(如果有的话)应当对分组做出响应。此处参考图6-7和9描述了用于确定哪个节点应当对所述分组做出响应的示例性方法。该过程可以是对于不特别依赖于IP的各种实施例类似的。在这些实施例中,由选路节点130接收的帧的净荷不管其是什么都可以被发送到接收节点140a、140b、140c的每个。
图2是用于将单播或组播分组选路到多个服务器的示例性选路节点200的示意图。示例性选路节点200可以对应于选路节点130,以及可以包括第一接口210、地址解析模块220、地址解析存储器230、链路聚合模块240、链路聚合控制存储器250以及多个接口260u-z。
接口210可以是这样的接口,所述接口包括硬件和/或被编码在机器可读存储介质中的可执行指令,其中,所述硬件和/或可执行指令被配置为在通信网络120上发送和接收数据。接口210可以耦合到通信网络120内的另一网络设备。
地址解析模块220可以包括硬件和/或机器可读存储介质中的可执行指令,其中,所述硬件和/或可执行指令被配置为确定如何根据分组的目的地址来对分组进行选路。例如,地址解析模块220可以从接口210接收分组并读取其目的地址。地址解析模块220可以然后查阅地址解析存储器230以确定关联于目的地址的下一跳地址。地址解析模块220可以最终将分组传递给链路聚合模块240从而其可以根据所述确定的下一跳地址来转发分组。
地址解析存储器230可以是能够存储目的地址与用于对分组进行选路的标识符之间的关联的任何机器可读介质。例如,地址解析存储器230可以是根据地址解析协议而实现的表,并且由此提供IP地址与MAC地址之间的关联。下面参考图3详细描述存储于地址解析存储器230中的数据的示例性实施例。
链路聚合模块240可以包括硬件和/或机器可读存储介质中的可执行指令,其中,所述硬件和/或可执行指令被配置为在合适的接口260u-z上发送分组。链路聚合模块240可以实现至少一个父链路聚合组(PLAG)和成员子链路聚合组(CLAG)。
CLAG可以被配置为包括去往另一网络节点的一个或更多链路。每个CLAG可以关联于CLAG标识符。该CLAG标识符可以是唯一标识符,或者其可以是关联于所包含链路中的一个的、例如其MAC地址的标识符。在运转时,当在CLAG上转发分组时,链路聚合模块240可以选择包含在CLAG中的链路中的一个,并且在仅该所选链路上发送分组。这样,建立了链路冗余,以及,如果CLAG中的一个链路出现故障,剩余链路可以被用于与所连接的网络节点通信。
PLAG可以被配置为包括多个CLAG。每个CLAG可以连接到不同的网络节点或相同的网络节点。PLAG可以关联于PLAG标识符,该PLAG标识符可以是唯一标识符,或者与CLAG标识符一样可以是所包含的CLAG中的一个。在运转时,当在PLAG上转发分组时,链路聚合模块240可以在每个成员CLAG上转发该分组。分组可以然后被根据如以上所描述的成员CLAG的正常运转来转发。由此,在PLAG上转发的分组将在来自每个成员CLAG的一个链路上被发送。当每个CLAG连接到不同网络节点时,每个网络节点将接收到分组的一个副本,以及可以然后相应地处理该副本。
根据图2中的示例性实施例,选路节点200被配置了一个PLAG和三个CLAG。第一CLAG使用MAC地址U作为标识符,以及包括接口260u、260v。第二CLAG使用MAC地址W作为标识符,以及包括接口260w、260x、260y。第三CLAG使用MAC地址Z作为标识符,以及包括接口260z。PLAG使用MAC地址U作为标识符,以及包括CLAG U、CLAG W和CLAG Z。
链路聚合控制存储器250可以是能够存储各种链路聚合组的配置的任何机器可读介质。链路聚合控制存储器250例如可以包含选路节点200上所配置的所有PLAG和CLAG的定义。下面参考图4-5进一步详细描述由链路聚合控制存储器250存储的数据的示例性实施例。
接口260u-z可以每个是这样的接口,所述接口包括硬件和/或被编码在机器可读存储介质中的可执行指令,其中,所述硬件和/或可执行指令被配置为发送和接收数据。每个接口260u-z可以耦合到多个网络节点中的一个。例如,接口260u、260v可以耦合到接收节点A140a;接口260w、260x、260y可以耦合到接收节点B140b;以及,接口260z可以耦合到接收节点C140c。
图3是用于存储与IP地址解析相关的数据的示例性数据排列300的示意图。数据排列300可以是例如存储于地址解析存储器230中的数据库中的表。可替换地,数据排列300可以是一系列链接的列表、数组或类似数据结构。由此应当显而易见,数据排列300是底层数据的抽象;可以使用适于存储该数据的任何数据结构。
数据排列300可以包括IP地址字段310、对应MAC地址字段320以及生存期(TTL)字段330。IP地址字段310可以被用于指示特定记录所对应于的IP地址。MAC地址字段320可以指示应当被用于将分组选路到对应IP地址的MAC地址。TTL字段330可以指示何时特定记录应当被从数据排列300删除。
作为示例,记录340指示,指定给IP地址A的分组应当在关联于MAC地址U的接口上被转发,以及,该映射应当生存到21:12:00为止,在该点时,记录340可以被删除。同样地,记录350指示,IP地址B也映射到MAC地址U,以及该映射应当生存到09:01:25为止。记录360指示,IP地址C也映射到MAC地址U,以及该映射应当生存到00:51:50为止。数据排列300可以包含大量另外的记录370.
图4是用于存储CLAG配置的示例性数据排列400的示意图。数据排列400可以例如是存储于链路聚合控制存储器250中的数据库中的表。可替换地,数据排列400可以是一系列链接的列表、数组或类似数据结构。由此应当显而易见,数据排列400是底层数据的抽象;可以使用适于存储该数据的任何数据结构。
数据排列400可以包括CLAG地址字段410和链路地址字段420。CLAG地址字段410可以指示CLAG记录所对应于的CLAG标识符。链路地址字段420可以指示关联于特定CLAG地址的MAC地址。
作为示例,CLAG记录430指示,CLAG被配置为使用MAC地址U作为标识符,以及包括关联于MAC地址U和V的接口。同样地,CLAG记录440指示,CLAG被配置为使用MAC地址W作为标识符,以及包括关联于MAC地址W、X和Y的接口。进一步地,CLAG记录450指示,CLAG被配置为使用MAC地址Z作为标识符,以及包括关联于MAC地址Z的接口。数据排列400可以包含大量另外的CLAG记录460。
图5是用于存储PLAG配置的示例性数据排列500的示意图。数据排列500可以例如是存储于链路聚合控制存储器250中的数据库中的表。可替换地,数据排列500可以是一系列链接的列表、数组或类似数据结构。由此应当显而易见,数据排列500是底层数据的抽象;可以使用适于存储该数据的任何数据结构。
数据排列500可以包括PLAG地址字段510和CLAG地址字段520。PLAG地址字段510可以指示PLAG记录所对应于的PLAG标识符。CLAG地址字段520可以指示关联于特定PLAG地址的CLAG标识符。
作为示例,PLAG记录530指示,PLAG被配置为使用MAC地址U作为标识符,以及包括由MAC地址U、W和Z标识的CLAG。数据排列500可以包含大量另外的PLAG记录540。
图6是用于在多个服务器140a、140b、140c之间实施负载均衡的示例性网络500的示意图。示例性网络600可以包括选路节点130、接收节点A-C140A、140B、140C和控制节点610.
控制节点610可以是这样的网络设备,所述网络设备能够保持接收节点140a、140b、140c关于哪些接收节点140a、140b、140c是活跃的信息是最新的。更具体地,在各种示例性实施例中,控制节点610可以是服务器、个人或膝上电脑、无线电子邮件设备、手机、电视机顶盒或能够与每个接收节点140a、140b、140c通信的任何其它设备。控制节点610可以维护活跃接收节点140a、140b、140c的列表,以及周期性地将该列表发送到接收节点140a、140b、140c。可替换地,控制节点610可以仅当接收节点140a、140b、140c变得活跃或不活跃时向接收节点140a、140b、140c发送消息,以及,接收节点140a、140b、140c可以然后相应地更新本地存储的活跃服务器列表。进一步可替换地,控制节点610可以根本不出现,以及接收节点140a、140b、140c可以通过相互之间的定期通信来维护本地活跃服务器列表。
接收节点140a、140b、140c可以全都实现这样的算法,所述算法使用当前活跃接收节点140a、140b、140c的列表来确定是否处理接收到的分组以及相应地做出响应。由此,假设每个接收节点140a、140b、140c在其当前活跃服务器列表中包含对全部三个接收节点140a、140b、140c的引用,当接收节点A140a接收到帧150c时,其可以使用公共算法来确定接收节点C140c应当对该分组做出响应。相应地,接收节点A140a可以忽略该分组。同样地,当接收节点B140b接收到帧150d时,其可以确定接收节点C140c应当对该分组做出响应,并且也忽略该分组。当接收节点C140c接收到帧150e时,其可以确定,根据算法其应当处理该分组并相应地做出响应。接收节点C140c可以因此发送寻址到IP地址D(即发送节点110的IP地址)的响应分组,并且将其封装在寻址到MAC地址T的帧620中。
图7是用于存储当前活跃服务器的已索引列表的示例性数据排列700的示意图。数据排列700可以例如是存储在接收节点140a、140b、140c的一个中的数据库中的表。可替换地,数据排列700可以是一系列链接的列表、数组或类似数据结构。由此应当显而易见,数据排列700是底层数据的抽象;可以使用适于存储该数据的任何数据结构。
数据排列700可以包括索引字段710和服务器ID字段720。索引字段710可以简单地包括对应于特定记录的号码。记录可以通过指定所期望记录的索引而被访问。服务器ID字段720可以包括针对接收节点140a、140b、140c中的一个的标识符。所述标识符可以例如是关联于所引用的接收节点140a、140b、140c的IP地址。
作为示例,服务器记录730可以通过号码0被索引到,并且将IP地址A处的节点(即接收节点A140a)识别为活跃服务器。同样地,服务器记录740可以通过号码1被索引到,并且将IP地址B处的节点(即接收节点B140b)识别为活跃服务器。服务器记录750可以通过号码2被索引到,并且将IP地址C处的节点(即接收节点C140c)识别为活跃服务器。数据排列700可以包含大量另外的记录760。
图8是用于将单播或组播分组选路到多个服务器的示例性方法800的流程图。方法800可以被选路节点130实施,以将分组转发到接收节点140a、140b、140c的每个。
方法800开始于步骤805以及继续进行到步骤810,其中,在步骤810处,选路节点130接收到分组。选路节点130可以然后分别在步骤815和820中确定分组的目的IP地址和将该目的IP地址解析为转发分组所基于的合适MAC地址。例如,选路节点130可以查阅地址解析存储器230以确定关联于目的IP地址的MAC地址。在确定用于转发分组的合适MAC地址之后,选路节点130可以在步骤825中确定该MAC地址是否关联于PLAG。
如果MAC地址标识了PLAG,则方法800可以继续进行到步骤830,其中,在步骤830处,选路节点130可以例如通过访问链路聚合控制存储器250中的关联于PLAG地址的PLAG记录来检索关联于该PLAG的CLAG的列表。选路节点130可以然后在步骤835处例如通过访问来自链路聚合控制存储器250的关联于第一个成员CLAG的CLAG记录来检索关联于所述CLAG列表中的第一个CLAG的链路的列表。选路节点130可以然后分别在步骤840和845中从该CLAG的链路列表中选择一个链路和将分组发送到该所选链路。方法800可以然后继续进行到步骤850,其中,在步骤850处,选路节点130可以确定其是否已到达CLAG地址列表的末尾。如果其还未到达,则方法800可以返回到步骤835,其中,在步骤835处选路节点130可以对于列表中的下一个CLAG重复步骤835-850.如果已到达列表的末尾,则方法800可以在步骤880中结束。这样,所接收分组的一个副本可以被在每个CLAG上发送。
如果在步骤825处确定MAC地址不标识PLAG,方法800可以移动到步骤855,其中,在步骤855处,选路节点130可以作为替代确定MAC地址是否关联于CLAG。如果是这样,则选路节点130可以分别在步骤860、865和870中检索关联于该CLAG的链路的列表、从该列表中选择一个链路以及将分组发送到所选链路。方法800可以然后在步骤880中结束。这样,选路节点130可以实现除PLAG功能之外的标准链路聚合功能。
如果选路节点130在步骤855处确定MAC地址不关联于CLAG,则选路节点130可以假设分组可以根据标准操作来进行选路。方法800可以继续进行到步骤875,其中,在步骤875处,选路节点130可以将分组发送到关联于目的IP地址的MAC地址,以及然后在步骤880中结束。
图9是用于在多个服务器之间实施负载均衡的示例性方法900的流程图。方法900可以被接收节点140a、140b、140c中的每个的部件独立地实施,以便确定是否处理所接收的分组并且相应地做出响应。
方法900可以在步骤905中开始,以及继续进程到步骤910,其中,在步骤910处,接收节点140a、140b、140c可以接收已被发送到全部接收节点140a、140b、140c的分组。接收节点140a、140b、140c可以然后在步骤915处从分组中提取一些字段和其它信息。被提取的信息可以例如包括源IP地址或业务请求的类型。方法900可以然后继续进行到步骤920,其中,在步骤920处,接收节点140a、140b、140c可以使用本领域的技术人员已知的任何方法根据已提取字段计算哈希值。在步骤925中,接收节点140a、140b、140c可以然后例如通过查阅本地存储的活跃服务器列表来确定总共多少个接收节点140a、140b、140c当前是活跃的。
接收节点140a、140b、140c可以然后在步骤930处使用哈希值和服务器总数来计算索引值。例如,接收节点140a、140b、140c可以使用活跃服务器总数对哈希函数实施取模运算。应当显而易见,这样获得了具有0和活跃服务器总数减1之间(包含0和活跃服务器总数减1)的值的索引值。接收节点140a、140b、140c可以然后在步骤935中访问活跃服务器列表中关联于所计算出的索引的条目。
在步骤940中,接收节点140a、140b、140c将确定已访问的条目标识其自己还是另一个接收节点140a、140b、140c。如果接收节点140a、140b、140c确定已访问的条目标识其自己,则方法900可以继续进行到步骤945,其中,在步骤945处,接收节点140a、140b、140c可以处理所接收的分组并且相应地做出响应。例如,如果所接收分组是IPTV系统中对于频道改变的请求,则接收节点140a、140b、140c可以通过向发送节点110发送新的频道来做出响应。方法900可以然后在步骤955处结束。另一方面,如果接收节点140a、140b、140c在步骤940中确定所访问条目标识不同的接收节点140a、140b、140c,则其可以在步骤950中简单地忽略该分组,以及方法900可以然后在步骤955中结束。应当显而易见,通过此处描述的方式,接收节点140a、140b、140c中的仅一个将处理并对每个已接收分组做出响应。
已描述了用于示例性网络100、600的运转的示例性部件和方法,现在将参考图1-9提供示例性网络100、600的运转的示例。
选路节点130的地址解析存储器230可以由数据排列300指示。选路节点130的链路聚合控制存储器250可以由数据排列400、500指示。控制节点610可以当前正在监视接收节点140a、140b、140c的状态,以及向接收节点140a、140b、140c的每个发送将全部接收节点140a、140b、140c指示为当前活跃的列表。相应地,每个接收节点140a、140b、140c可以当前包含由数据排列700指示的活跃服务器列表。
过程可以开始于发送节点110在帧150a内基于通信网络120发送具有目的IP地址A的分组。选路节点130可以接收帧150b内的分组。选路节点130的地址解析模块220可以然后确定分组的目的IP地址是A。通过访问地址解析存储器中的记录340,地址解析模块220可以确定IP地址A关联于MAC地址U。分组可以然后被传送到链路聚合模块240,其中,链路聚合模块240可以确定MAC地址U关联于PLAG。通过访问包含在链路聚合控制存储器250中的PLAG记录530,链路聚合模块240可以确定PLAG U包含CLAG U、CLAG W和CLAG Z。
链路聚合模块240可以然后访问CLAG记录430,以及确定接口地址U和V被包含在CLAG U中。链路聚合模块240可以然后选择接口地址U,以及经由接口260u在帧150c中将分组发送到接收节点A140a。移动到CLAG W,链路聚合模块可以访问CLAG记录440,以及从关联于CLAGW的三个接口地址结果列表中选择接口地址Y。链路聚合模块240可以然后经由接口260y在帧150d中将分组发送到接收节点B140b。最后,链路聚合模块可以访问记录450,从关联于CLAG Z的接口地址列表中选择接口地址Z,以及经由接口260z在帧150e中将分组发送到接收节点C140c。
在接收到分组后,每个接收节点140a、140b、140c可以通过首先从分组提取源IP地址和请求类型来确定是否对分组做出响应。例如,源IP地址可以是D,以及请求类型可以是对特定文件的请求。通过使用该信息,每个接收节点140a、140b、140c可以根据已提取的值计算出例如“0x4F31”的哈希值。每个接收节点140a、140b、140c可以然后例如通过计算数据排列700中的记录数来确定多少个服务器当前活跃。在本实例中,活跃服务器总数为3。每个接收服务器可以然后通过使用活跃服务器总数3对所述哈希值实施取模运算来获得计算出的索引2.
每个接收节点可以然后检索出服务器记录750,即具有索引2的服务器记录。接收节点A和B140a、140b可以两个都确定该服务器记录不标识其自己,以及由此可以简单地丢弃该分组。另一方面,接收节点C140c可以识别该服务器记录标识其自己,并且创建被寻址到IP地址D的响应分组。接收节点C140c可以然后在帧220内将该响应分组发送到发送节点110。
根据前述内容,各种示例性实施例提供以对客户端几乎不可见的方式在多个服务器之间均衡服务器负载。特别地,通过实现包括多个子链路聚合组的父链路聚合组,任何分组能够被在2层转发到位于每个CLAG末端的多个服务器。进一步地,通过实现跨全部服务器的选择算法,服务器能够快速和高效地确定应该处理分组的一个服务器。
从前面描述中应当显而易见,本发明的各种示例性实施例可以在硬件和/或固件中被实现。此外,各种示例性实施例可以作为存储于机器可读存储介质中的指令被实现,其中,所述指令可以被至少一个处理器读取和执行以实施此处详细描述的运转。机器可读存储介质可以包括用于以可被机器读的形式存储信息的任何装置,其中,所述机器例如是网络节点(例如路由器或交换机)。由此,机器可读存储介质可以包括只读存储器(ROM)、随机访问存储器(RAM)、磁盘存储介质、光学存储介质、闪存设备和类似存储介质。
尽管已特别参考其特定示例性方面详细描述了各种示例性实施例,但应当理解,本发明能够有其它实施例,以及其细节能够在各种显而易见的方面做出修改。如对本领域的技术人员显而易见的那样,只要仍然在本发明的精神和范围内,可以实现变型和修改。相应地,前述公开、描述和图是仅示例用途的,并且不以任何方式限制本发明,其中,本发明仅由权力要求定义。

Claims (10)

1.一种由网络节点在通信网络中对分组进行选路的方法,所述方法包括:
在所述网络节点处建立第一子链路聚合组CLAG,其中,第一CLAG包括去往第一下游节点的至少一个链路;
在所述网络节点处建立第二CLAG,其中,第二CLAG包括去往第二下游节点的至少一个链路;
在所述网络节点处建立父链路聚合组PLAG,其中,所述PLAG包括所述第一CLAG和所述第二CLAG;
在所述网络节点处接收分组,所述分组包括该分组的目的地址;
确定所述分组的所述目的地关联于所述PLAG;以及
在所述第一CLAG和所述第二CLAG上分别向第一下游节点和第二下游节点两者发送所述分组。
2.根据权利要求1的方法,其中,所述分组是单播分组。
3.根据权利要求1的方法,进一步包括:
将2层地址关联于所述PLAG;
将所述第一下游节点的地址关联于所述2层地址;以及
将所述第二下游节点的地址关联于所述2层地址,
其中,确定所述分组的目的地关联于所述PLAG的步骤包括确定所述分组的目的地址关联于所述2层地址,其中,将所述第一下游节点的地址和将所述第二下游节点的地址关联于所述2层地址的步骤两者都包括修改地址解析协议ARP表;以及其中,确定所述分组的目的地址关联于所述2层地址的步骤包括读取所述ARP表的条目,所述条目关联于所述分组的目的地址。
4.根据权利要求1的方法,其中,在所述第一CLAG和所述第二CLAG两者上都发送所述分组的步骤包括:
选择包含在所述第一CLAG中的至少一个链路的第一选择链路;
选择包含在所述第二CLAG中的至少一个链路的第二选择链路;
构造包括所述分组和关联于所述第一选择链路的地址的第一帧;
构造包括所述分组和关联于所述第二选择链路的地址的第二帧;
在所述第一选择链路上将所述第一帧发送到所述第一下游节点;以及
在所述第二选择链路上将所述第二帧发送到所述第二下游节点。
5.根据权利要求1的方法,进一步包括,在所述第一下游节点处:
接收经由所述PLAG接收帧的全部下游节点的列表,
根据所述列表确定下游节点的总数,
从所述网络节点接收第一帧,
从所述第一帧导出一块信息,
使用所述下游节点总数对所述一块信息实施数学运算,以获取结果索引,
确定所述结果索引是否对应于所述第一下游节点,
当所述结果索引对应于所述第一下游节点时,对所述第一帧做出响应,以及
当所述结果索引不对应于所述第一下游节点时,丢弃所述第一帧。
6.根据权利要求5的方法,进一步包括:
在所述第一下游节点处,按关联于每个下游节点的节点标识符的递增顺序将所有下游节点列表排列到数组中,
其中,确定所述结果索引是否对应于所述第一下游节点的步骤包括:从所述数组读取单元,其中,所述单元的索引等于所述结果索引,以及,确定所述单元是否包含所述第一下游节点的标识。
7.根据权利要求5的方法,其中,所述数学运算是取模运算。
8.根据权利要求5的方法,其中,从所述第一帧中导出一块信息的步骤包括根据所述第一帧的至少一个字段计算哈希值,以及其中,所述第一帧的所述至少一个字段包括源IP地址。
9.一种用于在通信网络中对分组进行选路的网络节点,其中,所述网络节点连接到第一下游节点和第二下游节点,所述网络节点包括:
接收分组的接口,所述分组包括目的地址;
多个接口,所述多个接口包括连接到所述第一下游节点的至少一个接口和连接到所述第二下游节点的至少一个接口;
链路聚合控制存储器,其存储:
第一子链路聚合组CLAG记录,包括第一CLAG标识符,以及所述多个接口中连接到所述第一下游节点的所述至少一个接口的标识,
第二CLAG记录,包括第二CLAG标识符,以及所述多个接口中连接到所述第二下游节点的所述至少一个接口的标识,以及
父链路聚合组PLAG记录,包括PLAG标识符、所述第一CLAG标识符以及所述第二CLAG标识符;
地址解析模块,其确定所述分组的目的地址关联于所述PLAG标识符;以及
链路聚合模块,其:
通过从所述链路聚合控制存储器检索所述PLAG记录而确定所述PLAG标识符关联于所述第一CLAG标识符和所述第二CLAG标识符,
从所述第一CLAG记录的接口的所述至少一个标识中选择第一选择接口,
从所述第二CLAG记录的接口的所述至少一个标识中选择第二选择接口,
在所述第一选择接口和所述第二选择接口两者上都转发所述分组。
10.根据权利要求9的网络节点,进一步包括:
地址解析存储器,其存储:
由所述第一下游节点的地址标识并且包括所述PLAG标识符的第一地址解析记录,以及
由所述第二下游节点的地址标识并且包括所述PLAG标识符的第二地址解析记录;以及
在确定所述分组的所述目的地址关联于所述PLAG标识符时,所述地址解析模块检索由所述分组的目的地址标识的地址解析记录。
CN201080037013.6A 2009-08-21 2010-08-18 在通信网络中对分组进行选路的方法和设备 Expired - Fee Related CN102474467B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/545,680 US8369332B2 (en) 2009-08-21 2009-08-21 Server-side load balancing using parent-child link aggregation groups
US12/545,680 2009-08-21
PCT/US2010/045881 WO2011022475A1 (en) 2009-08-21 2010-08-18 Server-side load balancing using parent-child link aggregation groups

Publications (2)

Publication Number Publication Date
CN102474467A CN102474467A (zh) 2012-05-23
CN102474467B true CN102474467B (zh) 2015-02-25

Family

ID=42731253

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080037013.6A Expired - Fee Related CN102474467B (zh) 2009-08-21 2010-08-18 在通信网络中对分组进行选路的方法和设备

Country Status (6)

Country Link
US (2) US8369332B2 (zh)
EP (1) EP2467977A1 (zh)
JP (1) JP2013502840A (zh)
KR (1) KR101337039B1 (zh)
CN (1) CN102474467B (zh)
WO (1) WO2011022475A1 (zh)

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8665886B2 (en) * 2009-03-26 2014-03-04 Brocade Communications Systems, Inc. Redundant host connection in a routed network
US9124513B2 (en) 2009-09-30 2015-09-01 At&T Intellectual Property I, L.P. Load balancing multicast network traffic using virtual channels
US8493846B2 (en) * 2009-09-30 2013-07-23 At&T Intellectual Property I, L.P. Robust multicast broadcasting
US8780911B2 (en) * 2009-10-08 2014-07-15 Force10 Networks, Inc. Link aggregation based on port and protocol combination
US8369335B2 (en) 2010-03-24 2013-02-05 Brocade Communications Systems, Inc. Method and system for extending routing domain to non-routing end stations
US9001824B2 (en) 2010-05-18 2015-04-07 Brocade Communication Systems, Inc. Fabric formation for virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US8625616B2 (en) 2010-05-11 2014-01-07 Brocade Communications Systems, Inc. Converged network extension
US9231890B2 (en) 2010-06-08 2016-01-05 Brocade Communications Systems, Inc. Traffic management for virtual cluster switching
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US8989186B2 (en) 2010-06-08 2015-03-24 Brocade Communication Systems, Inc. Virtual port grouping for virtual cluster switching
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9461840B2 (en) 2010-06-02 2016-10-04 Brocade Communications Systems, Inc. Port profile management for virtual cluster switching
US8966027B1 (en) * 2010-05-24 2015-02-24 Amazon Technologies, Inc. Managing replication of computing nodes for provided computer networks
US8634308B2 (en) 2010-06-02 2014-01-21 Brocade Communications Systems, Inc. Path detection in trill networks
US8885488B2 (en) 2010-06-02 2014-11-11 Brocade Communication Systems, Inc. Reachability detection in trill networks
US8446914B2 (en) * 2010-06-08 2013-05-21 Brocade Communications Systems, Inc. Method and system for link aggregation across multiple switches
US9628293B2 (en) 2010-06-08 2017-04-18 Brocade Communications Systems, Inc. Network layer multicasting in trill networks
US9806906B2 (en) 2010-06-08 2017-10-31 Brocade Communications Systems, Inc. Flooding packets on a per-virtual-network basis
US9608833B2 (en) 2010-06-08 2017-03-28 Brocade Communications Systems, Inc. Supporting multiple multicast trees in trill networks
US9246703B2 (en) 2010-06-08 2016-01-26 Brocade Communications Systems, Inc. Remote port mirroring
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
US8615587B2 (en) * 2011-01-11 2013-12-24 International Business Machines Corporation Power management in link aggregation for data transmission
US9270572B2 (en) 2011-05-02 2016-02-23 Brocade Communications Systems Inc. Layer-3 support in TRILL networks
US8948056B2 (en) 2011-06-28 2015-02-03 Brocade Communication Systems, Inc. Spanning-tree based loop detection for an ethernet fabric switch
US9407533B2 (en) 2011-06-28 2016-08-02 Brocade Communications Systems, Inc. Multicast in a trill network
US8879549B2 (en) 2011-06-28 2014-11-04 Brocade Communications Systems, Inc. Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch
US9401861B2 (en) 2011-06-28 2016-07-26 Brocade Communications Systems, Inc. Scalable MAC address distribution in an Ethernet fabric switch
US9007958B2 (en) 2011-06-29 2015-04-14 Brocade Communication Systems, Inc. External loop detection for an ethernet fabric switch
US8885641B2 (en) 2011-06-30 2014-11-11 Brocade Communication Systems, Inc. Efficient trill forwarding
US8787388B1 (en) * 2011-08-29 2014-07-22 Big Switch Networks, Inc. System and methods for forwarding packets through a network
US9736085B2 (en) 2011-08-29 2017-08-15 Brocade Communications Systems, Inc. End-to end lossless Ethernet in Ethernet fabric
US9699117B2 (en) 2011-11-08 2017-07-04 Brocade Communications Systems, Inc. Integrated fibre channel support in an ethernet fabric switch
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
US8995272B2 (en) 2012-01-26 2015-03-31 Brocade Communication Systems, Inc. Link aggregation in software-defined networks
US9742693B2 (en) 2012-02-27 2017-08-22 Brocade Communications Systems, Inc. Dynamic service insertion in a fabric switch
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
IN2014DN08942A (zh) 2012-05-15 2015-05-22 Ericsson Telefon Ab L M
US9374301B2 (en) 2012-05-18 2016-06-21 Brocade Communications Systems, Inc. Network feedback in software-defined networks
US10277464B2 (en) 2012-05-22 2019-04-30 Arris Enterprises Llc Client auto-configuration in a multi-switch link aggregation
CN104272668B (zh) 2012-05-23 2018-05-22 博科通讯系统有限公司 层3覆盖网关
US9602430B2 (en) 2012-08-21 2017-03-21 Brocade Communications Systems, Inc. Global VLANs for fabric switches
US9401872B2 (en) 2012-11-16 2016-07-26 Brocade Communications Systems, Inc. Virtual link aggregations across multiple fabric switches
US9350680B2 (en) 2013-01-11 2016-05-24 Brocade Communications Systems, Inc. Protection switching over a virtual link aggregation
US9548926B2 (en) 2013-01-11 2017-01-17 Brocade Communications Systems, Inc. Multicast traffic load balancing over virtual link aggregation
US9413691B2 (en) 2013-01-11 2016-08-09 Brocade Communications Systems, Inc. MAC address synchronization in a fabric switch
US9565113B2 (en) 2013-01-15 2017-02-07 Brocade Communications Systems, Inc. Adaptive link aggregation and virtual link aggregation
US9014011B2 (en) * 2013-02-04 2015-04-21 Dell Products L.P. Systems and methods for layer-2 traffic polarization during failures in a virtual link trunking domain
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
WO2014145750A1 (en) 2013-03-15 2014-09-18 Brocade Communications Systems, Inc. Scalable gateways for a fabric switch
CN104079486A (zh) 2013-03-28 2014-10-01 国际商业机器公司 一种网关及其传送数据的方法
US9565028B2 (en) 2013-06-10 2017-02-07 Brocade Communications Systems, Inc. Ingress switch multicast distribution in a fabric switch
US9699001B2 (en) 2013-06-10 2017-07-04 Brocade Communications Systems, Inc. Scalable and segregated network virtualization
US20150063330A1 (en) * 2013-08-30 2015-03-05 Qualcomm Incorporated Aggregation of data packets for multiple stations
US9806949B2 (en) 2013-09-06 2017-10-31 Brocade Communications Systems, Inc. Transparent interconnection of Ethernet fabric switches
US9912612B2 (en) 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
US9866470B2 (en) 2014-01-24 2018-01-09 Red Hat, Inc. Multiple active link aggregators
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US9288139B2 (en) 2014-04-02 2016-03-15 Qualcomm Incorporated Methods for selection of link aggregation capable access points
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9544219B2 (en) 2014-07-31 2017-01-10 Brocade Communications Systems, Inc. Global VLAN services
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US9524173B2 (en) 2014-10-09 2016-12-20 Brocade Communications Systems, Inc. Fast reboot for a switch
US9699029B2 (en) 2014-10-10 2017-07-04 Brocade Communications Systems, Inc. Distributed configuration management in a switch group
CN105721234B (zh) * 2014-12-05 2019-04-05 杭州迪普科技股份有限公司 端口聚合方法及装置
US9628407B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Multiple software versions in a switch group
US9626255B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Online restoration of a switch snapshot
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
US9807005B2 (en) 2015-03-17 2017-10-31 Brocade Communications Systems, Inc. Multi-fabric manager
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US9930149B2 (en) * 2015-03-24 2018-03-27 Cisco Technology, Inc. Multicast traffic distribution in a multi-pod network environment
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
US11115389B2 (en) 2019-05-17 2021-09-07 Juniper Networks, Inc. Media access control security (MACsec) enabled links of a link aggregation group (LAG)
US11063882B2 (en) * 2019-08-07 2021-07-13 International Business Machines Corporation Resource allocation for data integration

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553029B1 (en) * 1999-07-09 2003-04-22 Pmc-Sierra, Inc. Link aggregation in ethernet frame switches
CN101399737A (zh) * 2008-10-21 2009-04-01 中兴通讯股份有限公司 用于以太环网的链路聚合组的保护方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3063721B2 (ja) * 1997-04-30 2000-07-12 日本電気株式会社 トポロジー情報交換装置及びプログラムを記録した機械読み取り可能な記録媒体
JPWO2004102902A1 (ja) * 2003-05-14 2006-07-20 富士通株式会社 ノード冗長制御方法およびノード冗長制御装置
JP4394988B2 (ja) 2004-03-19 2010-01-06 富士通株式会社 パケット読出し制御方法及び装置
JP2005347943A (ja) * 2004-06-01 2005-12-15 Hitachi Ltd ネットワーク中継装置及びその制御方法
US7660296B2 (en) * 2005-12-30 2010-02-09 Akamai Technologies, Inc. Reliable, high-throughput, high-performance transport and routing mechanism for arbitrary data flows
US7593400B2 (en) * 2006-05-19 2009-09-22 Corrigent Systems Ltd. MAC address learning in a distributed bridge
US7697525B2 (en) * 2006-12-21 2010-04-13 Corrigent Systems Ltd. Forwarding multicast traffic over link aggregation ports
US7940661B2 (en) * 2007-06-01 2011-05-10 Cisco Technology, Inc. Dynamic link aggregation
US8068416B2 (en) * 2007-09-20 2011-11-29 At&T Intellectual Property I, L.P. System and method of communicating a media stream
US8270290B2 (en) * 2008-12-19 2012-09-18 Rockstar Bidco, LP Resilient attachment to provider link state bridging (PLSB) networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6553029B1 (en) * 1999-07-09 2003-04-22 Pmc-Sierra, Inc. Link aggregation in ethernet frame switches
CN101399737A (zh) * 2008-10-21 2009-04-01 中兴通讯股份有限公司 用于以太环网的链路聚合组的保护方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《network high availability for Ethernet services using IP/MPLS networks》;Matthew Bocci等;《IEEE communications magazine》;20080305;第46卷(第3期);第90-96页、附图1-6 *

Also Published As

Publication number Publication date
KR20120043007A (ko) 2012-05-03
EP2467977A1 (en) 2012-06-27
KR101337039B1 (ko) 2013-12-26
WO2011022475A1 (en) 2011-02-24
US20110044339A1 (en) 2011-02-24
CN102474467A (zh) 2012-05-23
JP2013502840A (ja) 2013-01-24
US20130107885A1 (en) 2013-05-02
US8369332B2 (en) 2013-02-05
US9705799B2 (en) 2017-07-11

Similar Documents

Publication Publication Date Title
CN102474467B (zh) 在通信网络中对分组进行选路的方法和设备
US7684352B2 (en) Distributed storage of routing information in a link state protocol controlled network
US8295203B2 (en) Methods and systems to store state used to forward multicast traffic
US7263099B1 (en) Multicast packet replication
Jokela et al. LIPSIN: Line speed publish/subscribe inter-networking
WO2011150830A1 (zh) 获取内容的方法、节点及内容网络
EP3817286B1 (en) Method and apparatus for generating network topology
Yu et al. Space shuffle: A scalable, flexible, and high-performance data center network
KR20090098692A (ko) P2p 모드에서 저장된 콘텐츠를 액세스하기 위한 피어 식별자들을 얻기 위한 요구들을 관리하기 위한 방법, 연관된 관리 디바이스, 및 네트워크 장비
EP2475134B1 (en) Applying a table-lookup approach to load balancing in forwarding data in a network
Nguyen et al. Adaptive caching for beneficial content distribution in information-centric networking
US6771651B1 (en) Providing access to a high-capacity packet network
CN101394339A (zh) 一种在对等网络中实现路由的方法、系统及装置
Jin et al. Content routing and lookup schemes using global bloom filter for content-delivery-as-a-service
Qian et al. A scalable and resilient layer-2 network with ethernet compatibility
CN113329048B (zh) 基于交换机的云负载均衡方法、装置及存储介质
CN102647424B (zh) 一种数据传输方法及其装置
Rojas et al. Torii: multipath distributed Ethernet fabric protocol for data centres with zero‐loss path repair
KR100975018B1 (ko) 인터넷 그룹 관리 프로토콜 프락시 장치
Pitkänen Data availability in challenging networking environments in presence of failures

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
TR01 Transfer of patent right

Effective date of registration: 20190531

Address after: American New York

Patentee after: Origin Asset Group Co.,Ltd.

Address before: Paris France

Patentee before: ALCATEL LUCENT

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150225

CF01 Termination of patent right due to non-payment of annual fee