一种负荷分担中链路的管理方法和装置的制造方法

文档序号:10626727阅读:399来源:国知局
一种负荷分担中链路的管理方法和装置的制造方法
【专利摘要】本发明提供一种负荷分担中链路的管理方法和装置;所述方法,包括:当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,所述网络设备将流量切换到第i+1条负荷分担链路,并使用第i+1条负荷分担链路将所述流量转发到目的网络,其中i为正整数。
【专利说明】
一种负荷分担中链路的管理方法和装置
技术领域
[0001]本发明涉及通信领域,尤其涉及一种负荷分担中链路的管理方法和装置。
【背景技术】
[0002]数据通讯领域,尤其是数据承载网,负荷分担是一种在网络节点设备上,在多条链路上进行负载均衡的策略和方法,而今这种策略方法在网络数据设备使用越来越频繁。而随之使用的频繁,越来越多的问题暴露出来,需要数据开发人员用合理的方法去解决。
[0003]其中负荷分担中链路的异常中断,如负荷分担中一条链路被人为误操作shutdown,或者链路中的光纤光模块损坏,链路的快速收敛的需求越来越强烈。而目前国内外主流的实现负荷分担收敛的方法有两种:1、一种是由协议发现链路异常,重新形成链路负荷分担。例如,通过路由形成的IP路由负荷分担,当发现有链路中断后,更新平台与转发面路由形成路由负荷分担;链路聚合通过LACP(Link Aggregat1n ControlProtocol,链路汇聚控制协议)来发现和形成与更新链路聚合中的转发路径。2、通过检测机制,如:BFD(Bidirect1nal Forwarding Detect1n,双向侦测协议)、0AM(Operat1nAdministrat1n and Maintenance,操作管理与维护)等链路检测方法检测链路的连通性,发现链路异常进行快速的切换。
[0004]上述2种方式负荷分担收敛都需要依赖于协议感知,然后,通知转发模块重新选择有效路径来进行转发,通过该负荷分担收敛技术,无论是在集中式设备还是分布式设备上,做到50ms内收敛都是很困难的。
[0005]图1为现有技术中的网络的组网示意图。如图1所示,网络a的IP:100.1.1.2与网络b的IP:200.1.1.2通信,中间经过网络设备a查路由表发现有η条路由到网络b。按照目前转发面实现流程所示,当网络设备a上通往网络b有链路出现异常的时候,平台的路由模块会发生路径切换,路径切换发生后,并不会立刻将路由更新过来,从而导致在路由重新收敛更新的这段时间内,由于路由更新未完成,造成大量的转发报文丢弃。

【发明内容】

[0006]本发明提供一种负荷分担中链路的管理方法和装置,要解决的技术问题是如何减少在链路切换时丢包的数量。
[0007]为解决上述技术问题,本发明提供了如下技术方案:
[0008]一种负荷分担中链路的管理方法,包括:当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,所述网络设备将流量切换到第i+ι条负荷分担链路,并使用第i+1条负荷分担链路将所述流量转发到目的网络,其中i为正整数。
[0009]其中,所述网络设备将流量切换到第i+Ι条负荷分担链路之前,所述方法还包括:所述网络设备检测所述第i+ι条负荷分担链路工作是否正常;如果所述第i+ι条负荷分担链路工作正常,则所述网络设备触发将流量切换到第i+ι条负荷分担链路的操作。
[0010]其中,所述网络设备检测所述第i+ι条负荷分担链路工作是否正常包括:所述网络设备获取第i条负荷分担链路在预先存储的选路策略中对应的第一随机值,将所述第一随机数的数值增加一,得到第二随机值,利用所述第二随机值与负荷分担链路数进行模运算,得到所述第二随机值在预先存储的负荷分担表对应的键值,在所述负荷分担表中获取所述键值对应的出接口的状态;如果所述出接口的状态为开启,则确定所述第i+Ι条负荷分担链路工作正常,否则,确定所述第i+Ι条负荷分担链路工作不正常。
[0011]其中,所述方法还包括:如果所述第i+ι条负荷分担链路工作不正常,则所述网络设备检测所述第i+2条负荷分担链路工作是否正常。
[0012]其中,所述负荷分担链路包括:路由负荷分担链路、隧道负荷分担链路和链路聚合负荷分担链路中的至少一个。
[0013]一种负荷分担中链路的管理装置,包括:切换模块,用于当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,将流量切换到第i+ι条负荷分担链路;传输模块,用于使用第i+ι条负荷分担链路将所述流量转发到目的网络,其中i为正整数。
[0014]其中,所述装置还包括:检测模块,用于检测所述第i+Ι条负荷分担链路工作是否正常;触发模块,用于如果所述第i+ι条负荷分担链路工作正常,则触发将流量切换到第i+1条负荷分担链路的操作。
[0015]其中,所述检测模块包括:获取单元,用于获取第i条负荷分担链路在预先存储的选路策略中对应的第一随机值;第一计算单元,用于将所述第一随机数的数值增加一,得到第二随机值;第二计算单元,用于利用所述第二随机值与负荷分担链路数进行模运算,得到所述第二随机值在预先存储的负荷分担表对应的键值,在所述负荷分担表中获取所述键值对应的出接口的状态;确定单元,用于如果所述出接口的状态为开启,则确定所述第i+ι条负荷分担链路工作正常,否则,确定所述第i+ι条负荷分担链路工作不正常。
[0016]其中,所述检测模块,还用于如果所述第i+Ι条负荷分担链路工作不正常,则所述网络设备检测所述第i+2条负荷分担链路工作是否正常。
[0017]其中,所述负荷分担链路包括:路由负荷分担链路、隧道负荷分担链路和链路聚合负荷分担链路中的至少一个。
[0018]本发明提供实施例,网络设备的出接口无论哪条链路出现异常,流量会自动的换到下一条链路上去继续转发到目的网络,从而实现在不影响协议或者检测机制重新发现链路的情况下,进行链路切换的目的,达到负荷分担、链路聚合负荷分担的快速收敛的目的,解决了数据设备中普遍存在的链路异常时候链路收敛慢,丢包严重的问题。
【附图说明】
[0019]图1为现有技术中的网络的组网示意图;
[0020]图2为本发明提供的负荷分担中链路的管理方法的流程示意图;
[0021]图3为本发明应用实例提供的负荷分担中链路的管理方法的流程示意图;
[0022]图4为本发明提供的网络的组网示意图;
[0023]图5为本发明提供的负荷分担中链路的管理装置的结构示意图。
【具体实施方式】
[0024]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步的详细描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0025]图2为本发明提供的负荷分担中链路的管理方法的流程示意图。图1所示方法,包括:
[0026]步骤201、当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,所述网络设备将流量切换到第i+Ι条负荷分担链路;
[0027]步骤202、所述网络设备使用第i+Ι条负荷分担链路将所述流量转发到目的网络,其中i为正整数。
[0028]本发明提供的方法实施例,网络设备的出接口无论哪条链路出现异常,流量会自动的换到下一条链路上去继续转发到目的网络,从而实现在不影响协议或者检测机制重新发现链路的情况下,进行链路切换的目的,达到负荷分担、链路聚合负荷分担的快速收敛的目的,解决了数据设备中普遍存在的链路异常时候链路收敛慢,丢包严重的问题。
[0029]下面对本发明提供的方法实施例作进一步说明:
[0030]其中,所述网络设备将流量切换到第i + Ι条负荷分担链路之前,所述方法还包括:所述网络设备检测所述第i+ι条负荷分担链路工作是否正常;如果所述第i+ι条负荷分担链路工作正常,则所述网络设备触发将流量切换到第i+ι条负荷分担链路的操作。
[0031]在切换前检测链路是否正常,保证流量切换到第i+Ι条链路后能够传输出去,提高切换的有效性。
[0032]其中,所述网络设备检测所述第i + Ι条负荷分担链路工作是否正常包括:
[0033]所述网络设备获取第i条负荷分担链路在预先存储的选路策略中对应的第一随机值,将所述第一随机数的数值增加一,得到第二随机值,利用所述第二随机值与负荷分担链路数进行模运算,得到所述第二随机值在预先存储的负荷分担表对应的键值,在所述负荷分担表中获取所述键值对应的出接口的状态;
[0034]如果所述出接口的状态为开启,则确定所述第i + Ι条负荷分担链路工作正常,否贝IJ,确定所述第i+Ι条负荷分担链路工作不正常。
[0035]需要说明的是,通过将出现故障的链路对应的第一随机值加一的方式来确定第i+1条链路,符合现有技术中管理协议的规定,无需修改现有技术中的管理流程,即可使用本发明提供的方法,兼容性强。
[0036]另外,如果所述第i + Ι条负荷分担链路工作不正常,则所述网络设备检测所述第i+2条负荷分担链路工作是否正常。
[0037]具体来说,如果出接口为关闭down,在原来获取的随机值基础上加1,目的是指向下一个负荷分担条目。从负荷分担策略表中获取的链路数进行加一,并将组建好新的负荷分担表键值去查负荷分担表,依次循环下去,直到查到出接口状态为up的;如果所有接口为down的话,最多循环链路数η次。
[0038]其中,所述负荷分担链路包括:路由负荷分担链路、隧道负荷分担链路和链路聚合负荷分担链路中的至少一个。
[0039]上述负荷分担链路仅作举例说明,现有技术中其他类型的负荷分担链路同样适用于本发明,此处不再赘述。
[0040]下面以具体应用实例对本发明提供的方法做进一步说明:
[0041]图3为本发明应用实例提供的负荷分担中链路的管理方法的流程示意图。图3所示方法包括:
[0042]301:从网络a过来的数据报文在网络设备a的转发模块,根据报文中的destinat1n ip查找路由,获取路由表中的出接口、下一跳IP、负荷分担标志位以及负荷分担索引。判断到目的IP路由是否形成负荷分担,如果不是负荷分担就封装报文中的下一跳destinat1n ip从路由表中给出的出接口发出去;
[0043]302:如果是走负荷分担,那么根据路由表中给出的负荷分担索引去查负荷分担选路策略表,从负荷分担选路策略表中获取通往目的IP的链路数以及基于包基于流的选路策略;
[0044]303:根据策略表选路策略的随机值与链路数进行模运算,算出负荷分担表的键值来查负荷分担表,获取负荷分担表中的出接口和下一跳IP ;
[0045]上述步骤是负荷分担处理的基本流程,当负荷分担链路发生异常的时候,正常的处理流程处于等待状态,等待平台形成新的路由负荷分担,但是在这个过程中,走出现异常链路的报文会被链路down丢弃。本发明在原有的基础上加以改进,在链路出现异常的时候由转发面做接口查询,发现接口 down后就不会走该链路,添加的异常处理如下:
[0046]304:根据负荷分担获取的出接口信息查询出口方向端口属性表中接口状态。数据开发技术人员都会知道,链路异常一般情况下有两种,分别为:1、人为的将接口 shutdown ;
2、链路中物理元器件忽然的损坏,包括光纤断裂、光模块异常等情况。对于第一种情况,主动去关闭(shutdown)接口,平台会将该信息从平台向转发面传递,而物理元器件忽然异常是由转发面发现而上报到主控平台。对于第二种情况,路由负荷分担收敛会花更多的时间。但是对于本发明,不管是第一种还是第二种情况,都会做到极小的甚至不丢包收敛。转发面从负荷分担表中获取出接口信息,然后使用出接口信息查出接口属性表,从出接口属性表中获取出接口状态开启/关闭(UP/D0WN)。判断如果出接口为up,那么就获取当前负荷分担表中的出接口和下一跳IP转发出去,如果出接口为down,在原来获取的随机值基础上加1,目的是指向下一个负荷分担条目。从负荷分担策略表中获取的链路数减一,并将组建好新的负荷分担表键值去查负荷分担表,依次循环下去,直到查到出接口状态为up的;如果所有接口为down的话,最多循环链路数η次。
[0047]本发明的处理主要在链路发生异常,并且新的负荷分担还没有形成的情况下处理,参见图3所示流程中304的处理流程,当新的稳态形成后又恢复了正常负荷分担处理,而恰恰在链路未达到稳态的情况下,走接口为down的报文都将会被丢弃。丢弃报文的多寡完全是由负荷分担的收敛来决定的。
[0048]举例说明
[0049]适合本发明的实例1:如图1所示,网络a到网络b在经过网络设备a上有N条路由负荷分担链路。运用本发明,当网络设备a出接口无论哪条链路出现异常,流量会自动的换到下一条链路上去继续转发到目的网络。使用本发明可以极大的提高对于类似与组网I的网络路由稳定与安全。
[0050]适合本发明的实例2:如图1所示,网络a到网络b在经过网络设备a上有N条隧道负荷分担链路。运用本发明,仅仅将从路由表中获取出接口信息换成从标签表中获取出接口信息。当网络设备a出接口无论哪条链路出现异常,流量会自动的换到下一条链路上去继续转发到目的网络。使用本发明可以极大的提高对于类似与组网I的网络隧道稳定与安全。
[0051]适合本发明的实例3:图4为本发明提供的网络的组网示意图。如图4所示,网络a到网络b在经过网络设备a到达网络设备b是一条由N条链路聚合的smartgroup (链路聚合)链路,N条物理链路形成smartgroup负荷分担。运用本发明,从路由表中获取出接口为smartgroup接口,然后转发面查smartgroup选路策略表以及负荷分担表信息获取出接口信息。当链路异常的时候,同样可以进行本发明进行接口轮询检查。
[0052]图5为本发明提供的负荷分担中链路的管理装置的结构示意图。结合图2和图3所示方法,图5所示装置,包括:
[0053]切换模块501,用于当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,将流量切换到第i+Ι条负荷分担链路;
[0054]传输模块502,用于使用第i+Ι条负荷分担链路将所述流量转发到目的网络,其中i为正整数。
[0055]其中,所述装置还包括:
[0056]检测模块,用于检测所述第i+Ι条负荷分担链路工作是否正常;
[0057]触发模块,用于如果所述第i+Ι条负荷分担链路工作正常,则触发将流量切换到第i+Ι条负荷分担链路的操作。
[0058]其中,所述检测模块包括:
[0059]获取单元,用于获取第i条负荷分担链路在预先存储的选路策略中对应的第一随机值;
[0060]第一计算单元,用于将所述第一随机数的数值增加一,得到第二随机值;
[0061]第二计算单元,用于利用所述第二随机值与负荷分担链路数进行模运算,得到所述第二随机值在预先存储的负荷分担表对应的键值,在所述负荷分担表中获取所述键值对应的出接口的状态;
[0062]确定单元,用于如果所述出接口的状态为开启,则确定所述第i + Ι条负荷分担链路工作正常,否则,确定所述第i+Ι条负荷分担链路工作不正常。
[0063]其中,所述检测模块,还用于如果所述第i+Ι条负荷分担链路工作不正常,则所述网络设备检测所述第i+2条负荷分担链路工作是否正常。
[0064]其中,所述负荷分担链路包括:路由负荷分担链路、隧道负荷分担链路和链路聚合负荷分担链路中的至少一个。
[0065]本发明提供的装置实施例,网络设备的出接口无论哪条链路出现异常,流量会自动的换到下一条链路上去继续转发到目的网络,从而实现在不影响协议或者检测机制重新发现链路的情况下,进行链路切换的目的,达到负荷分担、链路聚合负荷分担的快速收敛的目的,解决了数据设备中普遍存在的链路异常时候链路收敛慢,丢包严重的问题。
[0066]本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
[0067]可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0068]上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
[0069]上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。
[0070]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
【主权项】
1.一种负荷分担中链路的管理方法,其特征在于,包括: 当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,所述网络设备将流量切换到第i+Ι条负荷分担链路,并使用第i+Ι条负荷分担链路将所述流量转发到目的网络,其中i为正整数。2.根据权利要求1所述的方法,其特征在于,所述网络设备将流量切换到第i+Ι条负荷分担链路之前,所述方法还包括: 所述网络设备检测所述第i+Ι条负荷分担链路工作是否正常; 如果所述第i+Ι条负荷分担链路工作正常,则所述网络设备触发将流量切换到第i+1条负荷分担链路的操作。3.根据权利要求2所述的方法,其特征在于,所述网络设备检测所述第i+Ι条负荷分担链路工作是否正常包括: 所述网络设备获取第i条负荷分担链路在预先存储的选路策略中对应的第一随机值,将所述第一随机数的数值增加一,得到第二随机值,利用所述第二随机值与负荷分担链路数进行模运算,得到所述第二随机值在预先存储的负荷分担表对应的键值,在所述负荷分担表中获取所述键值对应的出接口的状态; 如果所述出接口的状态为开启,则确定所述第i+Ι条负荷分担链路工作正常,否则,确定所述第i+Ι条负荷分担链路工作不正常。4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括: 如果所述第i+Ι条负荷分担链路工作不正常,则所述网络设备检测所述第i+2条负荷分担链路工作是否正常。5.根据权利要求1所述的方法,其特征在于,所述负荷分担链路包括:路由负荷分担链路、隧道负荷分担链路和链路聚合负荷分担链路中的至少一个。6.一种负荷分担中链路的管理装置,其特征在于,包括: 切换模块,用于当网络设备的出接口当前使用的第i条负荷分担链路出现异常时,将流量切换到第i+Ι条负荷分担链路; 传输模块,用于使用第i+Ι条负荷分担链路将所述流量转发到目的网络,其中i为正整数。7.根据权利要求6所述的装置,其特征在于,所述装置还包括: 检测模块,用于检测所述第i+Ι条负荷分担链路工作是否正常; 触发模块,用于如果所述第i+ι条负荷分担链路工作正常,则触发将流量切换到第i+1条负荷分担链路的操作。8.根据权利要求7所述的装置,其特征在于,所述检测模块包括: 获取单元,用于获取第i条负荷分担链路在预先存储的选路策略中对应的第一随机值; 第一计算单元,用于将所述第一随机数的数值增加一,得到第二随机值; 第二计算单元,用于利用所述第二随机值与负荷分担链路数进行模运算,得到所述第二随机值在预先存储的负荷分担表对应的键值,在所述负荷分担表中获取所述键值对应的出接口的状态; 确定单元,用于如果所述出接口的状态为开启,则确定所述第i+Ι条负荷分担链路工作正常,否则,确定所述第i+ι条负荷分担链路工作不正常。9.根据权利要求7或8所述的装置,其特征在于: 所述检测模块,还用于如果所述第i+Ι条负荷分担链路工作不正常,则所述网络设备检测所述第i+2条负荷分担链路工作是否正常。10.根据权利要求6所述的装置,其特征在于,所述负荷分担链路包括:路由负荷分担链路、隧道负荷分担链路和链路聚合负荷分担链路中的至少一个。
【文档编号】H04L12/803GK105991426SQ201510096102
【公开日】2016年10月5日
【申请日】2015年3月4日
【发明人】张树冲, 叶正鑫, 钟炜
【申请人】中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1