CN103825839A - 一种基于聚合链路的报文传输方法和设备 - Google Patents
一种基于聚合链路的报文传输方法和设备 Download PDFInfo
- Publication number
- CN103825839A CN103825839A CN201410098591.0A CN201410098591A CN103825839A CN 103825839 A CN103825839 A CN 103825839A CN 201410098591 A CN201410098591 A CN 201410098591A CN 103825839 A CN103825839 A CN 103825839A
- Authority
- CN
- China
- Prior art keywords
- transmit port
- network equipment
- current
- local terminal
- terminal network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于聚合链路的报文传输方法和设备,该方法包括:本端网络设备在需要通过聚合链路向对端网络设备发送流量时,确定所述聚合链路对应的可用发送端口列表;从当前可用发送端口中选择当前发送端口之外的其它发送端口,通过所述其它发送端口更新所述可用发送端口列表中维护的当前发送端口,并通过更新后的当前发送端口向所述对端网络设备发送所述流量的第N+1个报文;其中,所述本端网络设备之前已经通过更新前的当前发送端口向所述对端网络设备发送所述流量的第N个报文。本发明实施例中,避免一条流量(或一个会话的流量)的多个报文出现连续性丢包。
Description
技术领域
本发明涉及通信技术领域,尤其是涉及一种基于聚合链路的报文传输方法和设备。
背景技术
通过将多条物理链路捆绑在一起形成一条聚合链路,以增加链路的带宽,并在多条物理链路之间进行动态备份,有效地提高物理链路的可靠性。如图1所示,为聚合链路的组网示意图,网络设备A与网络设备B之间通过三条物理链路相连,将这三条物理链路捆绑在一起形成一条聚合链路1,这条聚合链路1的带宽最大可等于三条物理链路的带宽总和,且这三条物理链路相互备份,当其中某条物理链路故障时,还可以通过其它两条物理链路转发报文。
如图1所示,在聚合链路的组网场景下,不同的物理链路将对应网络设备上的不同发送端口。当网络设备需要从聚合链路发送报文时,需要从报文中提取相关报文特征(如IP地址和端口号等报文特征),并采用特定的hash算法对报文特征进行hash处理,以得到一个实际的发送端口,并通过该发送端口发送该报文,即通过该发送端口对应的物理链路发送该报文。对于每一条流量(一个会话)的多个报文,由于报文的报文特征相同,因此采用特定的hash算法对报文特征进行hash处理时,得到的实际的发送端口相同,即网络设备会采用相同的发送端口发送一条流量的多个报文。例如,网络设备通过发送端口Port1发送流量1的所有报文,并通过发送端口Port3发送流量2的所有报文。
综上所述,现有技术中,当一个物理链路发生故障时,通过该物理链路对应的发送端口发送的所有报文均发生丢失,一直到网络设备感知到物理链路发生故障,并从聚合链路中删除该物理链路。例如,当发送端口Port1对应的物理链路发生故障时,通过发送端口Port1发送的所有报文均发生丢失,从而导致流量1会出现一段时间的连续性丢包,继而出现网络拓扑震荡等问题。
发明内容
本发明实施例提供一种基于聚合链路的报文传输方法和设备,以避免一条流量(或一个会话的流量)的多个报文出现一段时间的连续性丢包。
为达到上述目的,本发明实施例提供一种基于聚合链路的报文传输方法,应用于包括本端网络设备和对端网络设备的网络中,所述本端网络设备与所述对端网络设备之间存在多条物理链路,不同的物理链路对应本端网络设备上不同的发送端口,且所述多条物理链路形成一条聚合链路,所述方法包括:
所述本端网络设备在需要通过所述聚合链路向所述对端网络设备发送流量时,确定所述聚合链路对应的可用发送端口列表;其中,所述可用发送端口列表中至少维护有当前发送端口以及当前可用发送端口;
所述本端网络设备从当前可用发送端口中选择当前发送端口之外的其它发送端口,通过所述其它发送端口更新所述可用发送端口列表中维护的当前发送端口,并通过更新后的当前发送端口向所述对端网络设备发送所述流量的第N+1个报文;其中,所述本端网络设备之前已经通过更新前的当前发送端口向所述对端网络设备发送所述流量的第N个报文。
所述方法还包括:本端网络设备确定所述聚合链路对应的各物理链路在本端网络设备上的发送端口,在可用发送端口列表中记录所述聚合链路的链路索引,并在所述可用发送端口列表中记录各物理链路在本端网络设备上的发送端口为当前可用发送端口,且在所述可用发送端口列表中记录所述本端网络设备当前向所述对端网络设备发送报文的发送端口为当前发送端口。
所述方法进一步包括:如果有新的物理链路加入到所述聚合链路,则所述本端网络设备在所述聚合链路对应的可用发送端口列表中记录所述新的物理链路在所述本端网络设备上的发送端口为当前可用发送端口;和/或,
如果所述聚合链路对应的各物理链路中有物理链路发生故障,则所述本端网络设备从所述聚合链路对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在所述本端网络设备上的发送端口。
所述本端网络设备从当前可用发送端口中选择当前发送端口之外的其它发送端口,具体包括:本端网络设备按照各当前可用发送端口的端口标识对所述各当前可用发送端口进行排序;基于排序结果,如果所述当前发送端口位于所述各当前可用发送端口的最后一个,则本端网络设备选择第一个当前可用发送端口;如果所述当前发送端口不位于所述各当前可用发送端口的最后一个,则本端网络设备选择所述当前发送端口的下一个当前可用发送端口。
所述可用发送端口列表中还维护有协议实体对应的实例编号,在所述本端网络设备确定所述聚合链路对应的可用发送端口列表的过程中,所述方法进一步包括:所述本端网络设备确定发送所述流量的协议实体,并利用所述协议实体对应的实例编号确定所述聚合链路对应的可用发送端口列表。
本发明实施例提供一种本端网络设备,应用于包括所述本端网络设备和对端网络设备的网络中,所述本端网络设备与所述对端网络设备之间存在多条物理链路,不同的物理链路对应本端网络设备上不同的发送端口,且所述多条物理链路形成一条聚合链路,所述本端网络设备具体包括:
确定模块,用于在需要通过所述聚合链路向所述对端网络设备发送流量时,确定所述聚合链路对应的可用发送端口列表;其中,所述可用发送端口列表中至少维护有当前发送端口以及当前可用发送端口;
维护模块,用于从当前可用发送端口中选择当前发送端口之外的其它发送端口,通过其它发送端口更新可用发送端口列表中维护的当前发送端口;
发送模块,用于通过更新后的当前发送端口向所述对端网络设备发送所述流量的第N+1个报文;其中,所述本端网络设备之前已经通过更新前的当前发送端口向所述对端网络设备发送所述流量的第N个报文。
所述维护模块,还用于确定所述聚合链路对应的各物理链路在所述本端网络设备上的发送端口,在可用发送端口列表中记录所述聚合链路的链路索引,并在所述可用发送端口列表中记录各物理链路在所述本端网络设备上的发送端口为当前可用发送端口,且在所述可用发送端口列表中记录所述本端网络设备当前向所述对端网络设备发送报文的发送端口为当前发送端口。
所述维护模块,进一步用于如果有新的物理链路加入到所述聚合链路,则在所述聚合链路对应的可用发送端口列表中记录所述新的物理链路在所述本端网络设备上的发送端口为当前可用发送端口;和/或,如果所述聚合链路对应的各物理链路中有物理链路发生故障,则从所述聚合链路对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在所述本端网络设备上的发送端口。
所述维护模块,进一步用于按照各当前可用发送端口的端口标识对所述各当前可用发送端口进行排序;基于排序结果,如果所述当前发送端口位于所述各当前可用发送端口的最后一个,则选择第一个当前可用发送端口;如果所述当前发送端口不位于所述各当前可用发送端口的最后一个,则选择所述当前发送端口的下一个当前可用发送端口。
所述可用发送端口列表中还维护有协议实体对应的实例编号;
所述确定模块,具体用于在确定所述聚合链路对应的可用发送端口列表的过程中,确定发送所述流量的协议实体,并利用所述协议实体对应的实例编号确定所述聚合链路对应的可用发送端口列表。
与现有技术相比,本发明实施例至少具有以下优点:本发明实施例中,通过使用上次发送报文的发送端口之外的其它发送端口发送报文,在聚合链路的某物理链路发生故障时,避免一条流量(或一个会话的流量)的多个报文出现连续性丢包,继而解决多个报文出现连续性丢包所导致的问题。
附图说明
图1是现有技术中的聚合链路的组网应用示意图;
图2是本发明实施例提供的一种基于聚合链路的报文传输方法流程图;
图3是本发明实施例提供的一种本端网络设备的结构示意图。
具体实施方式
针对现有技术中存在的问题,本发明实施例提供一种基于聚合链路的报文传输方法,该方法应用于包括本端网络设备和对端网络设备的网络中。其中,本端网络设备与对端网络设备之间存在多条物理链路,不同的物理链路将对应本端网络设备上不同的发送端口,且这多条物理链路之间形成一条聚合链路。以图1为本发明实施例的应用场景示意图,本端网络设备可以为网络设备A,对端网络设备可以为网络设备B,网络设备A与网络设备B之间存在三条物理链路,且这三条物理链路形成一条聚合链路1,此外,这三条物理链路分别对应网络设备A上的发送端口Port1、发送端口Port2和发送端口Port3。
在本发明实施例中,本端网络设备上需要维护可用发送端口列表,且该可用发送端口列表中至少需要维护有当前发送端口以及当前可用发送端口。在一种具体的可用发送端口列表的维护过程中,本端网络设备确定聚合链路对应的各物理链路在本端网络设备上的发送端口,在可用发送端口列表中记录聚合链路的链路索引,并在可用发送端口列表中记录各物理链路在本端网络设备上的发送端口为当前可用发送端口,且在可用发送端口列表中记录本端网络设备当前向对端网络设备发送报文的发送端口为当前发送端口。
如表1所示,为一种可用发送端口列表的示例,该可用发送端口列表中包括当前发送端口、当前可用发送端口和聚合链路的链路索引。在图1所示的应用场景下,网络设备A确定聚合链路1对应的各物理链路在网络设备A上的发送端口分别为发送端口Port1、发送端口Port2和发送端口Port3,如表2所示的可用发送端口列表的示例,在可用发送端口列表中记录聚合链路的链路索引(聚合链路1),并在可用发送端口列表中记录Port1、Port2和Port3为当前可用发送端口,假设网络设备A当前向网络设备B发送报文的发送端口为发送端口Port1,则在可用发送端口列表中记录Port1为当前发送端口。
表1
聚合链路的链路索引 | |
当前可用发送端口 | |
当前发送端口 |
表2
聚合链路的链路索引 | 聚合链路1 |
当前可用发送端口 | Port1、Port2、Port3 |
当前发送端口 | Port1 |
本发明实施例中,如果有新的物理链路加入到聚合链路,则本端网络设备在聚合链路对应的可用发送端口列表中记录新的物理链路在本端网络设备上的发送端口为当前可用发送端口;例如,有新的物理链路加入到聚合链路1,则本端网络设备在聚合链路1对应的可用发送端口列表中记录新的物理链路在本端网络设备上的发送端口Port4为当前可用发送端口,如表3所示的可用发送端口列表的示例。和/或,如果聚合链路对应的各物理链路中有物理链路发生故障,则本端网络设备从聚合链路对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在本端网络设备上的发送端口;例如,聚合链路1中有物理链路发生故障,则本端网络设备从聚合链路1对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在本端网络设备上的发送端口Port3,如表4所示的可用发送端口列表的示例。
表3
聚合链路的链路索引 | 聚合链路1 |
当前可用发送端口 | Port1、Port2、Port3、Port4 |
当前发送端口 | Port1 |
表4
聚合链路的链路索引 | 聚合链路1 |
当前可用发送端口 | Port1、Port2 |
当前发送端口 | Port1 |
基于可用发送端口列表,如图2所示,该报文传输方法包括以下步骤:
步骤201,本端网络设备(网络设备A)在需要通过聚合链路向对端网络设备(网络设备B)发送流量时,确定聚合链路对应的可用发送端口列表;其中,该可用发送端口列表中至少维护有当前发送端口和当前可用发送端口。
例如,网络设备A在需要通过聚合链路1向网络设备B发送流量时,由于可用发送端口列表中可以记录聚合链路的链路索引,因此网络设备A可以直接通过聚合链路的链路索引查询到聚合链路1对应的可用发送端口列表,如表2所示。基于表2所示的可用发送端口列表,网络设备A可以确定出当前发送端口为Port1,并确定出当前可用发送端口为Port1、Port2、Port3。
其中,本端网络设备需要通过聚合链路向对端网络设备发送的流量是指包含有多个报文的一条流量,或者,包含有多个报文的一个会话的流量。
步骤202,本端网络设备从当前可用发送端口中选择当前发送端口之外的其它发送端口,并通过该其它发送端口更新可用发送端口列表中维护的当前发送端口,并通过更新后的当前发送端口向对端网络设备发送流量的第N+1个报文(即当前需要发送的报文);其中,本端网络设备之前已经通过更新前的当前发送端口向对端网络设备发送过流量的第N个报文。
例如,网络设备A在确定当前发送端口为Port1,并确定当前可用发送端口为Port1、Port2、Port3之后,网络设备A从当前可用发送端口(Port1、Port2、Port3)中选择当前发送端口Port1之外的其它发送端口Port2(或Port3),并通过发送端口Port2更新可用发送端口列表中维护的当前发送端口,如表5所示的可用发送端口列表的示例,并通过发送端口Port2向网络设备B发送当前需要发送的报文。
表5
聚合链路的链路索引 | 聚合链路1 |
当前可用发送端口 | Port1、Port2、Port3 |
当前发送端口 | Port2 |
本发明实施例中,本端网络设备在从当前可用发送端口中选择当前发送端口之外的其它发送端口的过程中,如果可用发送端口列表中的当前发送端口为空(当前发送端口的初始值会为空),则本端网络设备可以选择任意当前可用发送端口中的发送端口,并通过该发送端口更新可用发送端口列表中维护的当前发送端口,以及通过该发送端口向对端网络设备发送当前需要发送的报文。
在本发明实施例的一种具体实现方式中,本端网络设备从当前可用发送端口中选择当前发送端口之外的其它发送端口的过程,可以具体包括但不限于如下方式:本端网络设备按照各当前可用发送端口的端口标识对各当前可用发送端口进行排序(例如,本端网络设备按照端口标识从大到小的顺序对各当前可用发送端口进行排序;或者,本端网络设备按照端口标识从小到大的顺序对各当前可用发送端口进行排序);基于排序结果,如果当前发送端口位于各当前可用发送端口的最后一个,则本端网络设备需要选择第一个当前可用发送端口;如果当前发送端口不位于各当前可用发送端口的最后一个,则本端网络设备需要选择当前发送端口的下一个当前可用发送端口。
例如,网络设备A按照端口标识从小到大的顺序对各当前可用发送端口的排序结果为Port1、Port2、Port3。针对一条流量(或者一个会话的流量)的多个报文,在网络设备A需要发送流量的第一个报文时,可用发送端口列表中的当前发送端口为空,网络设备A可以选择Port1,通过Port1更新可用发送端口列表中维护的当前发送端口,并通过Port1向网络设备B发送流量的第一个报文。在网络设备A需要发送流量的第二个报文(即N+1=2)时,可用发送端口列表中的当前发送端口为Port1(即更新前的当前发送端口,其已经向对端网络设备发送流量的第一个报文),由于Port1不位于Port1、Port2、Port3的最后一个,因此网络设备A选择Port1的下一个当前可用发送端口Port2,通过Port2更新可用发送端口列表中维护的当前发送端口,并通过Port2(即更新后的当前发送端口)向网络设备B发送流量的第二个报文。在网络设备A需要发送流量的第三个报文(即N+1=3)时,可用发送端口列表中的当前发送端口为Port2(即更新前的当前发送端口,其已经向对端网络设备发送流量的第二个报文),由于Port2不位于Port1、Port2、Port3的最后一个,因此网络设备A选择Port2的下一个当前可用发送端口Port3,通过Port3更新可用发送端口列表中维护的当前发送端口,并通过Port3(即更新后的当前发送端口)向网络设备B发送流量的第三个报文。在网络设备A需要发送流量的第四个报文(即N+1=4)时,可用发送端口列表中的当前发送端口为Port3(即更新前的当前发送端口,其已经向对端网络设备发送流量的第三个报文),由于Port3位于Port1、Port2、Port3的最后一个,因此网络设备A选择第一个当前可用发送端口Port1,通过Port1更新可用发送端口列表中维护的当前发送端口,并通过Port1(即更新后的当前发送端口)向网络设备B发送流量的第四个报文。以此类推,流量的后续报文的发送处理过程不再详加赘述。
本发明实施例中,在聚合链路的某物理链路发生故障时,可以避免RRPP(Rapid Ring Protection Protocol,快速环网保护协议)和/或CFM(ConnectivityFault Management,连接错误管理)等的一条流量(或一个会话的流量)的多个报文出现连续性丢包,继而解决多个报文出现连续性丢包所导致的问题。
具体的,针对RRPP和/或CFM等协议,协议实体(即在协议报文的交互过程中,用于连续发送协议报文的功能实体)会在聚合链路上定时发送hello报文来检测链路故障。例如,发送端设备每隔10ms发送一次hello报文,接收端设备如果在30ms内未收到来自发送端设备的hello报文,则认为链路发生故障。在现有技术中,假设发送端设备通过Port1向接收端设备发送hello报文,则在Port1对应的物理链路发生故障时,接收端设备在30ms内未收到来自发送端设备的hello报文时,则认为链路发生故障,即认为聚合链路发生故障,显然此时只是聚合链路中的某物理链路发生故障,而聚合链路可以继续使用,因此上述处理会导致错误的故障检测结论。而本发明实施例中,发送端设备在一个10ms通过Port1向接收端设备发送hello报文,在第二个10ms通过Port2向接收端设备发送hello报文,在第三个10ms通过Port3向接收端设备发送hello报文,因此即使Port1对应的物理链路发生故障,接收端设备在30ms内也能够收到来自发送端设备的hello报文,即接收端设备不会认为链路发生故障,即不会认为聚合链路发生故障,因此可以避免出现错误的故障检测结论,继而有效保证网络拓扑检测的稳定性,防止转发路径切换震荡。
考虑到如下一种情况:聚合链路对应的可用发送端口列表中只有两个当前可用发送端口用于发送hello报文,协议实体P1和协议实体P2在发送hello报文时交替连续发送,且共用一个可用发送端口列表。则:协议实体P1通过发送端口Port1发送hello报文,之后协议实体P2通过发送端口Port2发送hello报文,之后协议实体P1通过发送端口Port1发送hello报文,之后协议实体P2通过发送端口Port2发送hello报文,以此类推。在此情况下,如果发送端口Port1对应的物理链路发生故障,则针对协议实体P1发送的hello报文,同样会导致接收端设备得到错误的故障检测结论。
基于此,本发明实施例中,可用发送端口列表中还维护有协议实体对应的实例编号,且每个协议实体对应有唯一的实例编号。进一步的,在本端网络设备确定聚合链路对应的可用发送端口列表的过程中,本端网络设备确定发送流量的协议实体,并利用该协议实体对应的实例编号确定聚合链路对应的可用发送端口列表。如表6所示的可用发送端口列表的示例,网络设备A的协议实体1在需要通过聚合链路1向网络设备B发送流量时,基于聚合链路的链路索引以及协议实体的实例编号,由于可用发送端口列表中可以记录聚合链路的链路索引以及协议实体的实例编号,因此,网络设备A可以直接通过聚合链路的链路索引以及协议实体的实例编号查询到对应的可用发送端口列表,即聚合链路1和协议实体1对应的可用发送端口列表,该可用发送端口列表如表6所示。基于表6所示的可用发送端口列表,网络设备A确定出当前发送端口为Port1,并确定出当前可用发送端口为Port1、Port2、Port3。
表6
聚合链路的链路索引 | 聚合链路1 |
协议实体的实例编号 | 协议实体1 |
当前可用发送端口 | Port1、Port2、Port3 |
当前发送端口 | Port1 |
在采用本发明实施例的上述技术方案后,针对上述情况:聚合链路对应的可用发送端口列表中只有两个当前可用发送端口用于发送hello报文,协议实体P1和协议实体P2在发送hello报文时交替连续发送,但协议实体P1和协议实体P2对应不同的可用发送端口列表。则:协议实体P1通过发送端口Port1发送hello报文,之后协议实体P2通过发送端口Port1发送hello报文,之后协议实体P1通过发送端口Port2发送hello报文,之后协议实体P2通过发送端口Port2发送hello报文,以此类推。在此情况下,如果发送端口Port1对应的物理链路发生故障,则针对协议实体P1发送的hello报文以及协议实体P2发送的hello报文,均不会导致接收端设备得到错误的故障检测结论。
基于与上述方法同样的发明构思,本发明实施例中还提供了一种本端网络设备,应用于包括本端网络设备和对端网络设备的网络中,本端网络设备与对端网络设备之间存在多条物理链路,不同的物理链路对应本端网络设备上不同的发送端口,且所述多条物理链路形成一条聚合链路,如图3所示,所述本端网络设备具体包括:确定模块11,用于在需要通过所述聚合链路向所述对端网络设备发送流量时,确定所述聚合链路对应的可用发送端口列表;其中,所述可用发送端口列表中至少维护有当前发送端口和当前可用发送端口;维护模块12,用于从当前可用发送端口中选择当前发送端口之外的其它发送端口,通过其它发送端口更新可用发送端口列表中维护的当前发送端口;发送模块13,用于通过更新后的当前发送端口向所述对端网络设备发送所述流量的第N+1个报文;其中,所述本端网络设备之前已经通过更新前的当前发送端口向所述对端网络设备发送所述流量的第N个报文。
所述维护模块12,还用于确定所述聚合链路对应的各物理链路在所述本端网络设备上的发送端口,在可用发送端口列表中记录所述聚合链路的链路索引,并在所述可用发送端口列表中记录各物理链路在所述本端网络设备上的发送端口为当前可用发送端口,且在所述可用发送端口列表中记录所述本端网络设备当前向所述对端网络设备发送报文的发送端口为当前发送端口。
本发明实施例中,所述维护模块12,进一步用于如果有新的物理链路加入到所述聚合链路,则在所述聚合链路对应的可用发送端口列表中记录所述新的物理链路在所述本端网络设备上的发送端口为当前可用发送端口;和/或,如果所述聚合链路对应的各物理链路中有物理链路发生故障,则从所述聚合链路对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在所述本端网络设备上的发送端口。
本发明实施例中,所述维护模块12,进一步用于按照各当前可用发送端口的端口标识对所述各当前可用发送端口进行排序;基于排序结果,如果所述当前发送端口位于所述各当前可用发送端口的最后一个,则选择第一个当前可用发送端口;如果所述当前发送端口不位于所述各当前可用发送端口的最后一个,则选择所述当前发送端口的下一个当前可用发送端口。
本发明实施例中,所述可用发送端口列表中还维护有协议实体对应的实例编号;所述确定模块11,具体用于在确定所述聚合链路对应的可用发送端口列表的过程中,确定发送所述流量的协议实体,并利用所述协议实体对应的实例编号确定所述聚合链路对应的可用发送端口列表。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种基于聚合链路的报文传输方法,应用于包括本端网络设备和对端网络设备的网络中,所述本端网络设备与所述对端网络设备之间存在多条物理链路,不同的物理链路对应本端网络设备上不同的发送端口,且所述多条物理链路形成一条聚合链路,其特征在于,所述方法包括以下步骤:
所述本端网络设备在需要通过所述聚合链路向所述对端网络设备发送流量时,确定所述聚合链路对应的可用发送端口列表;其中,所述可用发送端口列表中至少维护有当前发送端口以及当前可用发送端口;
所述本端网络设备从当前可用发送端口中选择当前发送端口之外的其它发送端口,通过所述其它发送端口更新所述可用发送端口列表中维护的当前发送端口,并通过更新后的当前发送端口向所述对端网络设备发送所述流量的第N+1个报文;其中,所述本端网络设备之前已经通过更新前的当前发送端口向所述对端网络设备发送所述流量的第N个报文。
2.如权利要求1所述的方法,其特征在于,所述方法进一步包括:
所述本端网络设备确定所述聚合链路对应的各物理链路在所述本端网络设备上的发送端口,在可用发送端口列表中记录所述聚合链路的链路索引,并在所述可用发送端口列表中记录各物理链路在所述本端网络设备上的发送端口为当前可用发送端口,且在所述可用发送端口列表中记录所述本端网络设备当前向所述对端网络设备发送报文的发送端口为当前发送端口。
3.如权利要求2所述的方法,其特征在于,所述方法进一步包括:
如果有新的物理链路加入到所述聚合链路,则所述本端网络设备在所述聚合链路对应的可用发送端口列表中记录所述新的物理链路在所述本端网络设备上的发送端口为当前可用发送端口;和/或,
如果所述聚合链路对应的各物理链路中有物理链路发生故障,则所述本端网络设备从所述聚合链路对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在所述本端网络设备上的发送端口。
4.如权利要求1所述的方法,其特征在于,所述本端网络设备从当前可用发送端口中选择当前发送端口之外的其它发送端口的过程,具体包括:
所述本端网络设备按照各当前可用发送端口的端口标识对所述各当前可用发送端口进行排序;基于排序结果,如果所述当前发送端口位于所述各当前可用发送端口的最后一个,则所述本端网络设备选择第一个当前可用发送端口;如果所述当前发送端口不位于所述各当前可用发送端口的最后一个,则所述本端网络设备选择所述当前发送端口的下一个当前可用发送端口。
5.如权利要求1所述的方法,其特征在于,所述可用发送端口列表中还维护有协议实体对应的实例编号,在所述本端网络设备确定所述聚合链路对应的可用发送端口列表的过程中,所述方法进一步包括:
所述本端网络设备确定发送所述流量的协议实体,并利用所述协议实体对应的实例编号确定所述聚合链路对应的可用发送端口列表。
6.一种本端网络设备,应用于包括所述本端网络设备和对端网络设备的网络中,所述本端网络设备与所述对端网络设备之间存在多条物理链路,不同的物理链路对应本端网络设备上不同的发送端口,且所述多条物理链路形成一条聚合链路,其特征在于,所述本端网络设备具体包括:
确定模块,用于在需要通过所述聚合链路向所述对端网络设备发送流量时,确定所述聚合链路对应的可用发送端口列表;其中,所述可用发送端口列表中至少维护有当前发送端口以及当前可用发送端口;
维护模块,用于从当前可用发送端口中选择当前发送端口之外的其它发送端口,通过其它发送端口更新可用发送端口列表中维护的当前发送端口;
发送模块,用于通过更新后的当前发送端口向所述对端网络设备发送所述流量的第N+1个报文;其中,所述本端网络设备之前已经通过更新前的当前发送端口向所述对端网络设备发送所述流量的第N个报文。
7.如权利要求6所述的本端网络设备,其特征在于,
所述维护模块,还用于确定所述聚合链路对应的各物理链路在所述本端网络设备上的发送端口,在可用发送端口列表中记录所述聚合链路的链路索引,并在所述可用发送端口列表中记录各物理链路在所述本端网络设备上的发送端口为当前可用发送端口,且在所述可用发送端口列表中记录所述本端网络设备当前向所述对端网络设备发送报文的发送端口为当前发送端口。
8.如权利要求7所述的本端网络设备,其特征在于,所述维护模块,进一步用于如果有新的物理链路加入到所述聚合链路,则在所述聚合链路对应的可用发送端口列表中记录所述新的物理链路在所述本端网络设备上的发送端口为当前可用发送端口;和/或,如果所述聚合链路对应的各物理链路中有物理链路发生故障,则从所述聚合链路对应的可用发送端口列表的当前可用发送端口中删除发生故障的物理链路在所述本端网络设备上的发送端口。
9.如权利要求6所述的本端网络设备,其特征在于,
所述维护模块,进一步用于按照各当前可用发送端口的端口标识对所述各当前可用发送端口进行排序;基于排序结果,如果所述当前发送端口位于所述各当前可用发送端口的最后一个,则选择第一个当前可用发送端口;如果所述当前发送端口不位于所述各当前可用发送端口的最后一个,则选择所述当前发送端口的下一个当前可用发送端口。
10.如权利要求6所述的本端网络设备,其特征在于,所述可用发送端口列表中还维护有协议实体对应的实例编号;
所述确定模块,具体用于在确定所述聚合链路对应的可用发送端口列表的过程中,确定发送所述流量的协议实体,并利用所述协议实体对应的实例编号确定所述聚合链路对应的可用发送端口列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410098591.0A CN103825839B (zh) | 2014-03-17 | 2014-03-17 | 一种基于聚合链路的报文传输方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410098591.0A CN103825839B (zh) | 2014-03-17 | 2014-03-17 | 一种基于聚合链路的报文传输方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103825839A true CN103825839A (zh) | 2014-05-28 |
CN103825839B CN103825839B (zh) | 2017-12-29 |
Family
ID=50760676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410098591.0A Active CN103825839B (zh) | 2014-03-17 | 2014-03-17 | 一种基于聚合链路的报文传输方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103825839B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017128945A1 (zh) * | 2016-01-26 | 2017-08-03 | 华为技术有限公司 | 一种业务流量的分配方法及装置 |
CN108632099A (zh) * | 2018-05-18 | 2018-10-09 | 新华三技术有限公司 | 一种链路聚合的故障检测方法及装置 |
CN108886727A (zh) * | 2016-06-08 | 2018-11-23 | 华为技术有限公司 | 多链接配置方法、基站及用户设备 |
CN109640379A (zh) * | 2019-01-11 | 2019-04-16 | Oppo广东移动通信有限公司 | 链路聚合实现方法及相关产品 |
CN113630178A (zh) * | 2021-08-18 | 2021-11-09 | 新华三信息安全技术有限公司 | 一种报文传输方法及装置 |
WO2022057514A1 (zh) * | 2020-09-18 | 2022-03-24 | 中兴通讯股份有限公司 | 链路故障检测方法、装置及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101056257A (zh) * | 2006-04-14 | 2007-10-17 | 中兴通讯股份有限公司 | 实现链路聚合和保护倒换的方法及系统 |
CN101989953A (zh) * | 2010-11-09 | 2011-03-23 | 中兴通讯股份有限公司 | 双向转发检测报文的发送方法及设备 |
CN103501250A (zh) * | 2013-09-30 | 2014-01-08 | 杭州华三通信技术有限公司 | 分布式链路聚合网络中的数据流处理方法和装置 |
CN103595567A (zh) * | 2013-11-13 | 2014-02-19 | 杭州华三通信技术有限公司 | 一种聚合链路中的端口映射方法及装置 |
-
2014
- 2014-03-17 CN CN201410098591.0A patent/CN103825839B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101056257A (zh) * | 2006-04-14 | 2007-10-17 | 中兴通讯股份有限公司 | 实现链路聚合和保护倒换的方法及系统 |
CN101989953A (zh) * | 2010-11-09 | 2011-03-23 | 中兴通讯股份有限公司 | 双向转发检测报文的发送方法及设备 |
CN103501250A (zh) * | 2013-09-30 | 2014-01-08 | 杭州华三通信技术有限公司 | 分布式链路聚合网络中的数据流处理方法和装置 |
CN103595567A (zh) * | 2013-11-13 | 2014-02-19 | 杭州华三通信技术有限公司 | 一种聚合链路中的端口映射方法及装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017128945A1 (zh) * | 2016-01-26 | 2017-08-03 | 华为技术有限公司 | 一种业务流量的分配方法及装置 |
US10735323B2 (en) | 2016-01-26 | 2020-08-04 | Huawei Technologies Co., Ltd. | Service traffic allocation method and apparatus |
CN108886727A (zh) * | 2016-06-08 | 2018-11-23 | 华为技术有限公司 | 多链接配置方法、基站及用户设备 |
CN108632099A (zh) * | 2018-05-18 | 2018-10-09 | 新华三技术有限公司 | 一种链路聚合的故障检测方法及装置 |
CN108632099B (zh) * | 2018-05-18 | 2021-09-21 | 新华三技术有限公司 | 一种链路聚合的故障检测方法及装置 |
CN109640379A (zh) * | 2019-01-11 | 2019-04-16 | Oppo广东移动通信有限公司 | 链路聚合实现方法及相关产品 |
CN109640379B (zh) * | 2019-01-11 | 2020-09-18 | Oppo广东移动通信有限公司 | 链路聚合实现方法及相关产品 |
US11973684B2 (en) | 2019-01-11 | 2024-04-30 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Link aggregation implementation method and related product |
WO2022057514A1 (zh) * | 2020-09-18 | 2022-03-24 | 中兴通讯股份有限公司 | 链路故障检测方法、装置及计算机可读存储介质 |
CN114285765A (zh) * | 2020-09-18 | 2022-04-05 | 中兴通讯股份有限公司 | 链路故障检测方法、装置及计算机可读存储介质 |
CN113630178A (zh) * | 2021-08-18 | 2021-11-09 | 新华三信息安全技术有限公司 | 一种报文传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103825839B (zh) | 2017-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103825839A (zh) | 一种基于聚合链路的报文传输方法和设备 | |
CN104038447A (zh) | 一种报文传输方法和设备 | |
CN103944828A (zh) | 一种协议报文的传输方法和设备 | |
CN102882704A (zh) | 一种issu的软重启升级过程中的链路保护方法和设备 | |
CN104468231A (zh) | Sdn交换机和控制器动态注册方法 | |
CN104363181A (zh) | 流量传输控制方法及装置 | |
CN105577536A (zh) | 一种报文处理方法以及网络设备 | |
CN106936683A (zh) | 一种实现隧道配置的方法及装置 | |
CN107222403A (zh) | 一种数据传输方法、系统和电子设备 | |
CN108667640B (zh) | 通信方法及设备、网络接入系统 | |
CN108683561B (zh) | 一种站点状态检测方法及装置 | |
US20160173472A1 (en) | Method for exchanging numerical data frames and associated communication system | |
CN102857436B (zh) | 一种基于irf网络的流量传输方法和设备 | |
CN101695046B (zh) | 一种设置rrpp阻塞点的方法及设备 | |
CN108599984B (zh) | 共享端口状态的方法、接入设备及支持双归属保护的系统 | |
CN108337162B (zh) | 一种支持双归属保护的系统及方法 | |
CN104869016B (zh) | 一种数据报文的传输方法和设备 | |
CN104168169A (zh) | 一种mac表项删除方法和设备 | |
CN106937350B (zh) | 基于移动终端的路由方法及系统 | |
EP2953299A1 (en) | Protection switching method, system and node | |
CN105281944A (zh) | 网络协议地址的设定方法及服务管理系统 | |
CN104954249A (zh) | 一种报文转发方法、系统及装置 | |
CN103957079A (zh) | 一种hdlc网络中的协商方法和设备 | |
US9647893B2 (en) | Method for identifying logical loops in ethernet networks | |
CN107222299A (zh) | 一种数据传输方法、系统和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |