CN107547452B - 一种分布式通信设备及其报文转发方法和装置 - Google Patents
一种分布式通信设备及其报文转发方法和装置 Download PDFInfo
- Publication number
- CN107547452B CN107547452B CN201710559793.4A CN201710559793A CN107547452B CN 107547452 B CN107547452 B CN 107547452B CN 201710559793 A CN201710559793 A CN 201710559793A CN 107547452 B CN107547452 B CN 107547452B
- Authority
- CN
- China
- Prior art keywords
- selected member
- member port
- list
- port
- port list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种分布式通信设备及其报文转发方法和装置,其中应用于分布式通信设备的单板的转发单元的报文转发方法包括,从单板的CPU接收由主控板CPU同步的第一及第二选中成员端口列表;第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;将第一及第二选中成员端口列表存储于本地;接收数据报文;查找到数据报文的目的地址匹配的转发表项的出端口为聚合端口;读取聚合端口的第一选中成员端口列表;若第一选中成员端口列表不为空,则选择一个选中成员端口发送数据报文;若第一选中成员端口列表为空,则从第二选中成员端口列表中选择一个聚合端口的选中成员端口发送待转发报文。
Description
技术领域
本申请涉及通信技术,特别涉及分布式通信系统,具体地讲是一种分布式通信设备及其报文转发方法和装置。
背景技术
通信设备的链路聚合组(Link Aggregation Group,LAG)是多条物理链路构成的一条逻辑链路。链路聚合组的所有物理链路的物理端口构成的逻辑端口是聚合端口。每条物理链路的物理端口是聚合端口一个成员端口。每个成员端口既可以被设置为选中(Selected)状态,通过所连接的链路接收和发送报文;也可以被设置为非选中(Unselected)状态而不能参与报文转发。通信设备通过链路聚合组用以增加报文转发链路的带宽,并且通过同一链路聚合组的物理链路之间的动态备份,提高报文转发链路的可靠性。
分布式通信设备中,每个链路聚合组的聚合端口的选中状态的成员端口可以位于不同单板。主控板的处理单元将每个聚合端口的选中成员端口列表同步到每个单板,这样所有的那般上选中成员端口列表都是相同的。单板查找到待转发报文的目的地址匹配转发表项的出端口是一个聚合端口时,查找该聚合端口的选中端口列表,根据待报文计算的散列值(hash值)在选中端口列表中选择匹配域散列值的成员端口作为链路聚合组的聚合端口发送待转发报文的物理端口。
但存在的问题是,如果单板从选中端口列表选择的物理端口位于其他单板,需要通过分布式通信设备内部板间链路将待转发报文发送到选中物理端口所在的单板。由于在分布式通信设备只以这一种方式设置每个聚合端口的选中成员端口列表,导致以不同聚合端口作为出端口的流量在分布式通信设备都会产生跨单板转发流量,而单板之间的板间链路带宽是优先,这样分布式通信设备内部存在大量的跨单板流量,容易造成板间链路拥堵导致的报文转发时延增长,甚至还会造成板间链路丢包而影响分布式通信设备的报文转发可靠性。
发明内容
本发明的目的在于提供一种分布式通信设备及其报文转发方法和装置,用于实现不同模式设置不同级别的选中成员端口列表,用以减少出端口是聚合端口的流量占用的分布式通信设备内部的板间链路的带宽。为实现上述发明目的,本发明提供了一种报文转发方法,应用于分布式通信设备,该方法包括:
主控板的CPU获取聚合端口的全部选中成员端口,基于多种转发模式中的一种,分别设置每个单板的第一选中成员端口列表以及第二选中成员端口列表;其中每个单板的第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;
主控板的CPU将每个单板的第一选中成员端口列表和第二选中成员端口列表分别同步至每个单板的CPU;
每个单板各自的CPU接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表并存储于各转发单元;
每个单板的各转发单元在本地存储的转发表项中查找到聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择一个选中成员端口发送待转发报文;若任一单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择一个选中成员端口发送待转发报文。
为实现上述目的,本发明还提供了一种分布式通信设备,分布式通信设备的主控板以及多个单板之间通过板间链路连接,其中,主控板的CPU通过调用和执行主控板的存储介质的机器可执行指令,用以获取聚合端口的全部选中成员端口;基于多种转发模式中的一种,分别设置每个单板的第一选中成员端口列表以及第二选中成员端口列表;其中每个单板的第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;将每个单板的第一选中成员端口列表和第二选中成员端口列表分别同步至每个单板的CPU;
每个单板各自的CPU通过调用和执行各自的存储介质的机器可执行指令,接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表并存储于各转发单元;
每个单板的各转发单元在本地存储的转发表项中查找到聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择一个选中成员端口发送待转发报文;若任一单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择一个选中成员端口发送待转发报文。
为实现上述目的,本发明还提供可以应用于分布式通信设备的单板的转发单元的报文转发方法,该方法包括,从单板的CPU接收由主控板CPU同步的第一选中成员端口列表以及第二选中成员端口列表;第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;将第一选中成员端口列表以及第二选中成员端口列表存储于本地;
接收数据报文;查找到数据报文的目的地址匹配的转发表项的出端口为聚合端口;
读取聚合端口的第一选中成员端口列表;若第一选中成员端口列表不为空,则从第一选中成员端口列表选择一个选中成员端口发送数据报文;若第一选中成员端口列表为空,则从第二选中成员端口列表中选择一个聚合端口的选中成员端口发送待转发报文。
为实现上述目的,本发明还提供一种可被应用于分布式通信设备的单板的转发单元的报文转发装置,该装置包括:
同步模块,用以从单板的CPU接收的同步的第一选中成员端口列表以及第二选中成员端口列表;第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;
存储模块,用以将第一选中成员端口列表以及第二选中成员端口列表存储于本地以及存储转发表项;
接收模块,用以接收数据报文;
发送模块,用以查找到数据报文的目的地址匹配的转发表项的出端口为聚合端口;读取聚合端口的第一选中成员端口列表;若第一选中成员端口列表不为空,则从第一选中成员端口列表选择一个选中成员端口发送数据报文;若第一选中成员端口列表为空,则从第二选中成员端口列表中选择一个聚合端口的选中成员端口发送数据报文。
基于以上方案,本发明的有益效果在于,分布式通信设备基于不同的方式为每个单板设置高优先级的聚合端口本地转发的选中成员端口列表以及较低优先级的聚合端口全局转发的选中成员端口列表,这样各单板优先通过聚合端口本地转发的选中成员端口发送以聚合端口作为出端口的流量,减少跨单板的流量;不具有聚合端口的选中成员端口的单板则通过聚合端口全局转发,将聚合端口为出端口的流量送往其他单板转发。因此,通过不同优先级的选中成员端口列表,减少了跨单板流量,减少板间链路拥堵,避免报文转发时延增长,避免板间链路丢包影响分布式通信设备的报文转发可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例提供的分布式通信设备转发报文的方法的流程;
图2示出了本发明实施例提供的分布式通信设备;
图3示出了本发明提供的分布式通信设备;
图4为本发明实施例提供的应用于分布式通信设备的单板的转发单元的报文转发装置的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
图1流程图示出了本发明实施例提供的分布式通信设备转发报文的流程:
步骤101,从单板的CPU接收由主控板CPU同步的第一选中成员端口列表以及第二选中成员端口列表;该第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表。
第一选中成员端口列表可包含位于单板的一个以上的选中成员端口;第二选中成员列表包含聚合端口的所有选中成员端口。或者,第一选中成员端口列表包含位于转发单元的一个以上的选中成员端口;第二选中成员列表包含聚合端口的所有选中成员端口。
步骤102,将第一选中成员端口列表以及第二选中成员端口列表存储于本地;
步骤103,接收数据报文;
步骤104,查找到数据报文的目的地址匹配的转发表项的出端口为聚合端口;
步骤105,读取聚合端口的第一选中成员端口列表;
步骤106,确定第一选中成员端口列表是否为空,若否,则执行步骤107;若是,则执行步骤108;
步骤107,从第一选中成员端口列表选择一个选中成员端口发送数据报文;
步骤108,从第二选中成员端口列表中选择一个选中成员端口发送待转发报文。
图1所示方法的有益效果在于,分布式通信设备的单板通过不同优先级的选中成员端口列表,优先通过聚合端口本地转发的选中成员端口发送以聚合端口作为出端口的流量,只有在单板的转发单元不具有聚合端口的选中成员端口时,再通过聚合端口全局转发,将聚合端口为出端口的流量送往其他单板转发。因此,减少了跨单板流量。
图2所示分布式通信设备中,主控板210和单板220、单板230以及单板240通过板间链路连接。单板220的转发单元222的端口224,单板230的转发单元232的端口234以及单板240的转发单元242的端口244是聚合端口的成员端口。但是端口244被设置为未选中成员端口。
主控板210的CPU 211获取聚合端口的选中成员端口224以及234,基于单板转发模式,将选中成员端口224设置在单板220的第一选中成员端口列表,将选中成员端口234设置在单板230的第一选中成员端口列表。单板240的第一选中成员端口列表未做设置,为空。主控板210的CPU 211将全部选中成员端口224和234设置于单板220、单板230以及单板240的第二选中成员列表。
主控板210的CPU 211将单板220的第一选中成员端口列表和第二选中成员端口列表同步至单板220的CPU 221;单板220的CPU 221接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,存储于转发单元222。
主控板210的CPU 211将单板230的第一选中成员端口列表和第二选中成员端口列表同步至单板230的CPU 231;单板230的CPU 231接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,存储于转发单元232。
主控板210的CPU 211将单板240的第一选中成员端口列表和第二选中成员端口列表同步至单板240的CPU 241;单板240的CPU 241接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,存储于转发单元242。
当单板220的转发单元通过端口223收到数据报文时,在存储的转发表项中查找到聚合端口是待转发的数据报文的出端口时,读取存储于本地的聚合端口的第一选中成员端口列表,选择位于选中成员端口224发送待转发的数据报文。
当单板240的转发单元242通过端口243收到数据报文时,在存储的转发表项中查找到聚合端口是待转发的数据报文的出端口时,读取存储于本地的聚合端口的第一选中成员端口列表,确定为空,则读取存储于本地的聚合端口的第二选中成员端口列表,在聚合端口的所有选中成员端口224和234中选择选中成员端口234发送待转发的数据报文。单板240的转发单元通过板间链路将带有板间报文头的数据报文发送到交换单元234,交换单元230根据板间通信头的中指示的出端口234发送剥除了板间报文头的数据报文。
图2中,CPU 211通过调用和执行存储器212存储的机器可执行指令实现上述处理。同样,CPU 221,CPU 231以及CPU 241调用和执行各自的存储器存储的机器可执行指令实现上述处理。图2中的转发单元可以是ASIC或FPGA实现的转发芯片。
图2所示的分布式系统中,单板220的转发单元222优先通过聚合端口本地转发的选中成员端口发送,单板240的转发单元224不具有聚合端口的选中成员端口时,通过聚合端口全局转发,将报文送往所选的选中成员端口所在的单板转发。相比现有方式,减少了跨单板流量。
图3所示分布式通信设备中,主控板310和单板320、单板330以及单板340通过板间链路连接。端口325、326、334以及344是聚合端口的成员端口。但是端口344被设置为未选中成员端口。
主控板310的CPU 311获取聚合端口的选中成员端口325、326以及334,基于单板转发模式,将选中成员端口325和326设置在单板320的第一选中成员端口列表,将选中成员端口334设置在单板330的第一选中成员端口列表。单板340的第一选中成员端口列表为空。主控板310的CPU 311将全部选中成员端口325、326以及334设置于单板320、330以及340的第二选中成员列表。
主控板310的CPU 311将单板320的第一选中成员端口列表和第二选中成员端口列表同步至单板320的CPU 321;CPU 321接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,分别存储于转发单元322和323。
CPU 311将单板330的第一选中成员端口列表和第二选中成员端口列表同步至CPU331;CPU 331接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,存储于转发单元332。
CPU 311将单板340的第一选中成员端口列表和第二选中成员端口列表同步至CPU341;CPU 341接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,存储于转发单元342。
当单板320的转发单元323通过端口327收到数据报文时,在存储的转发表项中查找到聚合端口是待转发的数据报文的出端口时,读取存储于本地的聚合端口的第一选中成员端口列表,选择成员端口325发送待转发的数据报文。转发单元323通过连接转发单元322的物理连接(图中未示)将数据报文以及指示出端口325的出端口信息发送到转发单元322。转发单元322通过选中成员端口325发送数据报文。
当单板340的转发单元342通过端口343收到数据报文,在存储的转发表项中查找到聚合端口是待转发的数据报文的出端口时,读取存储于本地的聚合端口的第一选中成员端口列表,确定为空,则读取存储于本地的聚合端口的第二选中成员端口列表,在聚合端口的所有选中成员端口325、326以及334中选择选中成员端口326发送待转发的数据报文。单板340的转发单元通过板间链路将带有板间报文头的数据报文发送到交换单元321,交换单元321根据板间通信头的中指示的出端口326发送剥除板间报文头的数据报文。
主控板310的CPU 311检测选中成员端口325切换为非选中成员端口,从单板320的第一选中成员端口列表删除非选中成员端口325;从单板320、330以及340的第二选中成员端口列表分别删除非选中成员端口325。
CPU 311将删除了非选中成员端口325的第一选中成员端口列表同步至单板320的CPU 321,将删除了非选中成员端口325的第二选中成员端口列表分别同步至相应的CPU321、CPU 331以及CPU 341。
CPU 321接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表,分别存储各转发单元322和323。CPU 331接收同步至本单板第二选中成员端口列表,存储于转发单元332。单板340的CPU 341接收同步至本单板的第二选中成员端口列表,存储于转发单元342。
在图3所示的实施例,主控板310的CPU 311还可基于芯片优先模式,将选中成员端口325设置在单板320的转发单元322的第一选中成员端口列表,将全部选中成员端口325、326以及334设置于单板320的转发单元322的第二选中成员列表;将选中成员端口326设置在单板320的转发单元323的第一选中成员端口列表,将全部选中成员端口325、326以及334设置于转发单元323的第二选中成员列表。
当单板320的转发单元323通过端口327收到数据报文时,在存储的转发表项中查找到聚合端口是待转发的数据报文的出端口时,读取存储于本地的聚合端口的第一选中成员端口列表,选择本地的选中成员端口326发送待转发的数据报文。
当主控板310的CPU 311检测到选中成员端口326被切换为非选中成员端口,将其从转发单元323的第一选中成员端口删除,然后同步至CPU 321。CPU 321接收同步的转发单元323的第一选中成员端口列表,存储在转发单元323。后续转发单元323通过端口327收到出端口是聚合端口的数据报文时,确定第一选中成员端口列表为空,则在第二选中成员端口列表中从选中成员端口325、334以及344中选择一个进行转发。
图3中,CPU 311通过调用和执行存储器312存储的机器可执行指令实现上述处理。同样,CPU 321,CPU 331以及CPU 341调用和执行各自的存储器中存储的机器可执行指令实现上述处理。图3中的转发单元可是由ASIC或FPGA实现的转发芯片。图3中,转发芯片322还具有端口324,转发芯片332还具有端口333。
图4所示为本发明实施例提供的应用于分布式通信设备的单板转发单元的报文转发装置的示意图。该报文转发装置400被应用于分布式通信设备的单板的转发单元。转发装置400包括:同步模块410、存储模块420,接收模块430以及发送模块440。
同步模块410,从单板的CPU接收的同步的第一选中成员端口列表以及第二选中成员端口列表;其中,第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表。
存储模块420,存储第一选中成员端口列表以及第二选中成员端口列表以及存储转发表项。
接收模块430,接收数据报文。
发送模块440,查找到数据报文的目的地址匹配的转发表项的出端口为聚合端口;读取聚合端口的第一选中成员端口列表;若第一选中成员端口列表不为空,则从第一选中成员端口列表选择一个选中成员端口发送数据报文;若第一选中成员端口列表为空,则从第二选中成员端口列表中选择一个聚合端口的选中成员端口发送数据报文。
存储模块420存储的第一选中成员端口列表包含位于单板的一个以上的选中成员端口,存储的第二选中成员列表包含聚合端口的所有选中成员端口。
或者,存储模块420存储的第一选中成员端口列表包含位于转发单元的一个以上的选中成员端口,存储的第二选中成员列表包含聚合端口的所有选中成员端口。
图4所示的报文转发装置400可应用单板的转发单元,单板的转发单元可以是FPGA或ASIC等芯片实现的转发芯片图4中所示的报文转发装置可使得分布式通信设备的单板通过不同优先级的选中成员端口列表,优先通过聚合端口本地转发的选中成员端口发送以聚合端口作为出端口的流量,只有在单板的转发单元不具有聚合端口的选中成员端口时,再通过聚合端口全局转发,将聚合端口为出端口的流量送往其他单板转发。因此,减少了跨单板流量。
Claims (12)
1.一种报文转发方法,应用于分布式通信设备,其特征在于,所述方法包括:
主控板的CPU获取聚合端口的全部选中成员端口,基于多种转发模式中的单板优先模式,将每个选中成员端口分别设置于所在单板的第一选中成员端口列表,将所述全部选中成员端口设置于每个所述单板的第二选中成员列表;或者,基于所述多种转发模式中的芯片优先模式,将每个选中成员端口分别设置于所在转发单元的第一选中成员端口列表,将所述全部选中成员端口设置于每个所述单板的各个转发单元的第二选中成员列表;其中每个所述单板的第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;
所述主控板的CPU将每个所述单板的第一选中成员端口列表和第二选中成员端口列表分别同步至每个所述单板的CPU,或者,将每个所述单板的各个转发单元的第一选中成员端口列表和第二选中成员端口列表分别同步至每个所述单板的CPU;
每个所述单板各自的CPU接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表并存储于各转发单元;
每个所述单板的各转发单元在本地存储的转发表项中查找到所述聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择一个选中成员端口发送所述待转发报文;若任一所述单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择一个选中成员端口发送所述待转发报文。
2.根据权利要求1所述的方法,其特征在于,每个所述单板的各转发单元在本地存储的转发表项中查找到所述聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择位于本单板的一个选中成员端口发送所述待转发报文;若任一所述单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择位于其他单板的一个选中成员端口发送所述待转发报文。
3.根据权利要求1所述的方法,其特征在于,
每个所述单板的CPU接收同步至本单板的各个转发单元的第一选中成员端口列表和第二选中成员端口列表,将各转发单元的第一选中成员端口列表和第二选中成员端口列表存储于相应的转发单元;
每个所述单板的各个转发单元在本地存储的转发表项中查找到所述聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择位于本转发单元的一个选中成员端口发送所述待转发报文;若任一所述单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择位于同一单板但不同转发单元的一个选中成员端口或选择位于其他单板的一个选中成员端口发送所述待转发报文。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述主控板的CPU检测所述聚合端口的任一选中成员端口被切换为非选中成员端口,从包含所述非选中成员端口的第一选中成员端口列表删除所述非选中成员端口,从每个第二选中成员端口列表删除所述非选中成员端口;
所述主控板的CPU将删除了所述非选中成员端口的第一选中成员端口列表同步至所述非选中成员端口所在单板的CPU,将每个删除了所述非选中成员端口的第二选中成员端口列表同步至每个相应的单板的CPU;
所述非选中成员端口所在的所述单板的CPU接收同步至本单板的删除了所述非选中成员端口的第一选中成员端口列表并存储于各转发单元;
每个所述单板的CPU接收同步至本单板的删除了所述非选中成员端口的第二选中成员端口列表并存储于各转发单元。
5.根据权利要求1所述的方法其特征在于,所述方法还包括:
所述主控板的CPU检测所述聚合端口的任一选中成员端口被切换为非选中成员端口,从包含所述非选中成员端口的第一选中成员端口列表删除所述非选中成员端口,从每个包含所述非选中成员端口的第二选中成员端口列表删除所述非选中成员端口;
所述主控板的CPU将删除了所述非选中成员端口的第一选中成员端口列表同步至所述非选中成员端口所在单板的CPU,将每个删除了所述非选中成员端口的第二选中成员端口列表同步至每个相应的所述单板的CPU;
所述非选中成员端口所在的所述单板的CPU接收同步至本单板的删除了所述非选中成员端口的第一选中成员端口列表并存储于所述非选中成员端口所在的转发单元;
每个所述单板的CPU接收同步至本单板的删除了所述非选中成员端口的第二选中成员端口列表并存储于各转发单元。
6.一种分布式通信设备,所述分布式通信设备的主控板以及多个单板之间通过板间链路连接,其特征在于,主控板的CPU通过调用和执行主控板的存储介质的机器可执行指令,用以获取聚合端口的全部选中成员端口;用以基于多种转发模式中的单板优先模式,将每个选中成员端口分别设置于所在单板的第一选中成员端口列表,将所述全部选中成员端口设置于每个所述单板的第二选中成员列表;或者,基于所述多种转发模式中的芯片优先模式,将每个选中成员端口分别设置于所在转发单元的第一选中成员端口列表,将所述全部选中成员端口设置于每个所述单板的各个转发单元的第二选中成员列表;以及用以将每个所述单板的第一选中成员端口列表和第二选中成员端口列表分别同步至每个所述单板的CPU,或者,将每个所述单板的各个转发单元的第一选中成员端口列表和第二选中成员端口列表分别同步至每个所述单板的CPU;其中每个所述单板的第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的第二选中成员端口列表;
每个所述单板各自的CPU通过调用和执行各自的存储介质的机器可执行指令,用以接收同步至本单板的第一选中成员端口列表和第二选中成员端口列表并存储于各转发单元;
每个所述单板的各转发单元用以在本地存储的转发表项中查找到所述聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择一个选中成员端口发送所述待转发报文;若任一所述单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择一个选中成员端口发送所述待转发报文。
7.根据权利要求6所述的设备,其特征在于,
每个所述单板的各转发单元具体用以在本地存储的转发表项中查找到所述聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择位于本单板的一个选中成员端口发送所述待转发报文;若任一所述单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择位于其他单板的一个选中成员端口发送所述待转发报文。
8.根据权利要求6所述的设备,其特征在于,
每个所述单板的CPU通过调用和执行主控板的存储介质的机器可执行指令,具体用以接收同步至本单板的各个转发单元的第一选中成员端口列表和第二选中成员端口列表,以及用以将各转发单元的第一选中成员端口列表和第二选中成员端口列表存储于相应的转发单元;
每个所述单板的各个转发单元具体用以在本地存储的转发表项中查找到所述聚合端口为待转发报文的出端口时,从存储于本地的第一选中成员端口列表选择位于本转发单元的一个选中成员端口发送所述待转发报文;若任一所述单板的一个转发单元确定存储于本地的第一选中成员端口列表为空,则在存储于本地的第二选中成员端口列表中选择位于同一单板但不同转发单元的一个选中成员端口或选择位于其他单板的一个选中成员端口发送所述待转发报文。
9.根据权利要求6所述的设备,其特征在于,
所述主控板的CPU通过调用和执行主控板的存储介质的机器可执行指令,还用以检测所述聚合端口的任一选中成员端口被切换的非选中成员端口;从包含所述非选中成员端口的第一选中成员端口列表删除所述非选中成员端口;从每个第二选中成员端口列表删除所述非选中成员端口;将删除了所述非选中成员端口的第一选中成员端口列表同步至所述非选中成员端口所在单板的CPU,将每个删除了所述非选中成员端口的第二选中成员端口列表同步至每个相应的单板的CPU;
非选中成员端口所在的所述单板的CPU通过调用和执行各自的存储介质的机器可执行指令,还用以接收同步至本单板的删除了所述非选中成员端口的第一选中成员端口列表并存储于各转发单元;
每个所述单板的CPU通过调用和执行各自的存储介质的机器可执行指令,还用以接收同步至本单板的删除了所述非选中成员端口的第二选中成员端口列表并存储于各转发单元。
10.根据权利要求6所述的设备,其特征在于,
所述主控板的CPU通过调用和执行主控板的存储介质的机器可执行指令,还用以检测所述聚合端口的任一选中成员端口被切换成非选中成员端口;从包含所述非选中成员端口的第一选中成员端口列表删除所述非选中成员端口;从每个包含所述非选中成员端口的第二选中成员端口列表删除所述非选中成员端口;将删除了所述非选中成员端口的第一选中成员端口列表同步至所述非选中成员端口所在单板的CPU,将每个删除了所述非选中成员端口的第二选中成员端口列表同步至每个相应的所述单板的CPU;
所述非选中成员端口所在的所述单板的CPU通过调用和执行各自的存储介质的机器可执行指令,还用以接收同步至本单板的删除了所述非选中成员端口的第一选中成员端口列表并存储于非选中成员端口所在的转发单元;
每个所述单板的CPU通过调用和执行各自的存储介质的机器可执行指令,还用以接收同步至本单板的删除了所述非选中成员端口的第二选中成员端口列表并存储于各转发单元。
11.一种报文转发方法,应用于分布式通信设备的单板的转发单元,其特征在于,所述方法包括:
从所述单板的CPU接收由主控板CPU同步的第一选中成员端口列表以及第二选中成员端口列表;所述第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的所述第二选中成员端口列表;所述第一选中成员端口列表包含位于所述单板的一个以上的选中成员端口,所述第二选中成员列表包含所述聚合端口的所有选中成员端口;或者,所述第一选中成员端口列表包含位于所述转发单元的一个以上的选中成员端口,所述第二选中成员列表包含所述聚合端口的所有选中成员端口;
将所述第一选中成员端口列表以及第二选中成员端口列表存储于本地;
接收数据报文;
查找到所述数据报文的目的地址匹配的转发表项的出端口为所述聚合端口;
读取所述聚合端口的第一选中成员端口列表;
若所述第一选中成员端口列表不为空,则从所述第一选中成员端口列表选择一个选中成员端口发送所述数据报文;
若所述第一选中成员端口列表为空,则从所述第二选中成员端口列表中选择一个所述聚合端口的选中成员端口发送所述数据报文。
12.一种报文转发装置,所述报文转发装置应用于分布式通信设备的单板的转发单元,其特征在于,所述装置包括:
同步模块,用以从所述单板的CPU接收的同步的第一选中成员端口列表以及第二选中成员端口列表;所述第一选中成员端口列表用于执行聚合端口本地转发且优先级高于用于执行聚合端口全局转发的所述第二选中成员端口列表;所述第一选中成员端口列表包含位于所述单板的一个以上的选中成员端口,所述第二选中成员列表包含所述聚合端口的所有选中成员端口;或者,所述第一选中成员端口列表包含位于所述转发单元的一个以上的选中成员端口,所述第二选中成员列表包含所述聚合端口的所有选中成员端口;
存储模块,用以存储所述第一选中成员端口列表以及第二选中成员端口列表以及存储转发表项;
接收模块,用以接收数据报文;
发送模块,用以查找到所述数据报文的目的地址匹配的转发表项的出端口为所述聚合端口;读取所述聚合端口的第一选中成员端口列表;若所述第一选中成员端口列表不为空,则从所述第一选中成员端口列表选择一个选中成员端口发送所述数据报文;若所述第一选中成员端口列表为空,则从所述第二选中成员端口列表中选择一个所述聚合端口的选中成员端口发送所述数据报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710559793.4A CN107547452B (zh) | 2017-07-11 | 2017-07-11 | 一种分布式通信设备及其报文转发方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710559793.4A CN107547452B (zh) | 2017-07-11 | 2017-07-11 | 一种分布式通信设备及其报文转发方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547452A CN107547452A (zh) | 2018-01-05 |
CN107547452B true CN107547452B (zh) | 2020-09-25 |
Family
ID=60970411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710559793.4A Active CN107547452B (zh) | 2017-07-11 | 2017-07-11 | 一种分布式通信设备及其报文转发方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107547452B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108600100B (zh) * | 2018-07-13 | 2021-09-07 | 新华三技术有限公司合肥分公司 | 成员端口选取方法和装置 |
CN109347734B (zh) * | 2018-08-29 | 2021-05-07 | 新华三技术有限公司 | 一种报文发送方法、装置、网络设备和计算机可读介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094157A (zh) * | 2007-08-20 | 2007-12-26 | 中兴通讯股份有限公司 | 利用链路聚合实现网络互连的方法 |
CN101420332A (zh) * | 2008-12-12 | 2009-04-29 | 杭州华三通信技术有限公司 | 一种成员端口配置情况的通知方法和网络设备 |
CN101505270A (zh) * | 2009-03-24 | 2009-08-12 | 神州数码网络(北京)有限公司 | 分布式交换机聚合链路快速收敛的方法 |
CN102137025A (zh) * | 2011-04-20 | 2011-07-27 | 福建星网锐捷网络有限公司 | 报文转发方法、装置及交换芯片 |
CN103166874A (zh) * | 2013-03-25 | 2013-06-19 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN103236975A (zh) * | 2013-05-09 | 2013-08-07 | 杭州华三通信技术有限公司 | 报文转发方法和装置 |
CN103501250A (zh) * | 2013-09-30 | 2014-01-08 | 杭州华三通信技术有限公司 | 分布式链路聚合网络中的数据流处理方法和装置 |
CN104038447A (zh) * | 2014-05-28 | 2014-09-10 | 杭州华三通信技术有限公司 | 一种报文传输方法和设备 |
CN105024837A (zh) * | 2014-04-16 | 2015-11-04 | 中兴通讯股份有限公司 | 一种实现跨板通道保护的方法及装置 |
WO2016206635A1 (zh) * | 2015-06-25 | 2016-12-29 | 中兴通讯股份有限公司 | 一种基于lacp的转发检测方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9390055B2 (en) * | 2012-07-17 | 2016-07-12 | Coho Data, Inc. | Systems, methods and devices for integrating end-host and network resources in distributed memory |
-
2017
- 2017-07-11 CN CN201710559793.4A patent/CN107547452B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094157A (zh) * | 2007-08-20 | 2007-12-26 | 中兴通讯股份有限公司 | 利用链路聚合实现网络互连的方法 |
CN101420332A (zh) * | 2008-12-12 | 2009-04-29 | 杭州华三通信技术有限公司 | 一种成员端口配置情况的通知方法和网络设备 |
CN101505270A (zh) * | 2009-03-24 | 2009-08-12 | 神州数码网络(北京)有限公司 | 分布式交换机聚合链路快速收敛的方法 |
CN102137025A (zh) * | 2011-04-20 | 2011-07-27 | 福建星网锐捷网络有限公司 | 报文转发方法、装置及交换芯片 |
CN103166874A (zh) * | 2013-03-25 | 2013-06-19 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN103236975A (zh) * | 2013-05-09 | 2013-08-07 | 杭州华三通信技术有限公司 | 报文转发方法和装置 |
CN103501250A (zh) * | 2013-09-30 | 2014-01-08 | 杭州华三通信技术有限公司 | 分布式链路聚合网络中的数据流处理方法和装置 |
CN105024837A (zh) * | 2014-04-16 | 2015-11-04 | 中兴通讯股份有限公司 | 一种实现跨板通道保护的方法及装置 |
CN104038447A (zh) * | 2014-05-28 | 2014-09-10 | 杭州华三通信技术有限公司 | 一种报文传输方法和设备 |
WO2016206635A1 (zh) * | 2015-06-25 | 2016-12-29 | 中兴通讯股份有限公司 | 一种基于lacp的转发检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107547452A (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111935315B (zh) | 区块同步方法及装置 | |
CN102006184B (zh) | 堆叠链路管理方法、装置及网络设备 | |
CN108173691B (zh) | 一种跨设备聚合的方法及装置 | |
CN102075437B (zh) | 一种通信方法、网关及网络 | |
EP3316555B1 (en) | Mac address synchronization method, device and system | |
US9380005B2 (en) | Reliable transportation of a stream of packets using packet replication | |
CN107547391B (zh) | 一种报文传输方法和装置 | |
US9319310B2 (en) | Distributed switchless interconnect | |
CN109495383B (zh) | 一种数据处理方法、装置、通信系统及网络设备 | |
CN102761479A (zh) | 链路选择方法和装置 | |
JP2016501475A (ja) | 受動相互接続及び分散型スイッチレススイッチングを行うルータ | |
CN113328916B (zh) | Bfd检测模式的切换方法、装置及设备 | |
CN107547452B (zh) | 一种分布式通信设备及其报文转发方法和装置 | |
CN105743816A (zh) | 一种链路聚合方法及装置 | |
CN110768917B (zh) | 一种报文传输方法及装置 | |
CN108259348B (zh) | 一种报文传输方法和装置 | |
CN105763375B (zh) | 一种数据包发送方法、接收方法及微波站 | |
CN105763463B (zh) | 一种链路探测报文的传输方法和装置 | |
CN113157465B (zh) | 基于指针链表的消息发送方法及装置 | |
CN107483628B (zh) | 基于dpdk的单向代理方法及系统 | |
CN106533771B (zh) | 一种网络设备以及控制信息传输方法 | |
US9277300B2 (en) | Passive connectivity optical module | |
US20110206058A1 (en) | Automatic Determination of Groupings of Communications Interfaces | |
US10367749B2 (en) | Automatically cycling among packet traffic flows subjecting them to varying drop probabilities in a packet network | |
CN102413038B (zh) | 一种路由下一跳不可达的处理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230612 Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd. Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466 Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |