CN103428101A - 负载分担的方法和装置 - Google Patents
负载分担的方法和装置 Download PDFInfo
- Publication number
- CN103428101A CN103428101A CN2013103326889A CN201310332688A CN103428101A CN 103428101 A CN103428101 A CN 103428101A CN 2013103326889 A CN2013103326889 A CN 2013103326889A CN 201310332688 A CN201310332688 A CN 201310332688A CN 103428101 A CN103428101 A CN 103428101A
- Authority
- CN
- China
- Prior art keywords
- message
- link
- primary link
- priority
- data message
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种负载分担的方法和装置。该方法包括:接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级;查询报文转发映射表,获取所述报文优先级对应的出端口;通过所述出端口对应的链路转发所述数据报文至对端设备。本发明实现了按报文优先级为报文选择相应的链路进行传输,从而控制不同报文优先级的报文转发路径。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种负载分担的方法和装置。
背景技术
在通信领域,存在多种路由技术,例如快速重路由(Fast Reroute,FRR)机制,等价多路径协议(Equal-Cost MultipathRouting Protocol,ECMP)技术,FRR机制通过链路检测协议,如以太网OAM(Operations,Administrationand Maintenance,操作、管理和维护)协议来检测链路的连通性,当链路发生物理状态异常时,可以快速将链路由主链路切换到备链路;ECMP技术主要用于两台网络设备之间各条链路的负载分担。
在现有技术下,网络设备在接收到数据报文后,将数据报文放入报文优先级缓存队列,数据报文在链路上的传输顺序是按照报文优先级来排序的,在链路发生异常,如链路故障、链路拥挤时,低优先级的用户数据报文更容易被丢弃,造成用户业务终端或业务质量降低,无法保护低优先级用户数据报文的传输。
发明内容
本发明实施例提供了一种负载分担的方法和装置,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。
第一方面,本发明实施例提供了一种负载分担的方法,所述方法包括:
接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级;
查询报文转发映射表,获取所述报文优先级对应的出端口;
通过所述出端口对应的链路转发所述数据报文至对端设备。
根据第一方面,在第一种可能的实现方式中,所述方法还包括:检测主链路的负载信息,所述主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常;根据所述负载信息,判断是否需要对所述主链路进行负载均衡;如果是,则根据所述负载信息更新所述报文转发映射表,并且根据更新后的报文转发映射表对所述主链路进行负载均衡。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述检测主链路的负载信息包括:检测所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常;所述根据所述主链路的负载信息,判断是否需要对所述主链路进行负载均衡,包括:如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述检测主链路的负载信息包括:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值;所述丢包信息是否超过预设门限值通过以下信息之一或者信息的组合进行衡量:丢包率、丢包数量;所述根据所述主链路的负载信息,判断是否需要对所述主链路进行负载均衡,包括:如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
结合第一方面的第一种可能的实现方式,在第四种可能的实现方式中,所述根据所述负载信息更新所述报文转发映射表具体为:将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口。
结合第一方面,在第五种可能的实现方式中,所述方法还包括:检测各个出端口对应的链路的负载信息,所述各个出端口对应的链路的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常;根据所检测的链路的负载信息,判断是否需要将在所述链路上传输的数据报文切换到其他链路进行传输;如果是,则更新所述报文转发映射表,并且根据更新后的报文转发映射表将在所述链路上传输的数据报文切换到其他链路进行传输。
第二方面,本发明实施例提供了一种负载分担的装置,所述装置包括:
解析单元,用于接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级,以及将所述报文优先级传输至查询单元;
查询单元,用于接收所述解析单元传输的所述报文优先级,查询报文转发映射表,获取所述报文优先级对应的出端口,将所述出端口传输至发送单元;
发送单元,用于接收所述查询单元传输的所述出端口,通过所述出端口对应的链路转发所述数据报文至对端设备。
结合第二方面,在第一种可能的实现方式中,所述装置还包括:
第一检测单元,用于检测主链路的负载信息,所述主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常,将所述负载信息传输至第一判断单元;
第一判断单元,用于接收所述第一检测单元传输的负载信息,根据所述负载信息,判断是否需要对所述主链路进行负载均衡,将判断结果传输至第一处理单元;
第一处理单元,用于接收所述第一判断单元传输的所述判断结果,如果所述判断结果为是,则根据所述负载信息更新所述报文转发映射表,并且根据更新后的报文转发映射表对所述主链路进行负载均衡。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述第一检测单元具体用于:所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常;所述第一判断单元具体用于:如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
结合第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述第一检测单元具体用于:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值;其中丢包信息是否超过预设门限值通过以下信息之一或者信息的组合来进行衡量:丢包率、丢包数量;所述第一判断单元具体用于:如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
结合第二方面的第一种可能的实现方式,在第四种可能的实现方式中,所述根据所述负载信息更新所述报文转发映射表,包括:将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口。
结合第二方面,在第五种可能的实现方式中,所述装置还包括:第二检测单元,用于检测各个出端口对应的链路的负载信息,所述各个出端口对应的链路的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常,将所述负载信息传输至第二判断单元;第二判断单元,用于接收所述第二检测单元传输的所述负载信息,根据所检测的链路的负载信息,判断是否需要将在所述链路上传输的数据报文切换到其他链路进行传输,将判断结果传输至第二处理单元;第二处理单元,用于接收所述第二判断传输的所述判断结果,如果所述判断结果为是,则更新所述报文转发映射表,并且根据更新后的报文转发映射表将在所述链路上传输的数据报文切换到其他链路进行传输。
本发明实施例提供的负载分担的方法和装置,通过将数据报文优先级不同的报文映射到对应的链路上,实现了按照报文优先级的链路负载分担,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,本发明提供的技术方案中,通过检测链路上某个报文优先级的数据报文的传输是否出现异常,如果传输出现异常则可以将相应报文优先级的数据报文切换到其他链路上进行转发,由此进一步地对低报文优先级的用户数据报文的传输做到保护。
附图说明
图1为本发明实施例提供的一种负载分担的方法的应用场景示意图;
图2为本发明实施例提供的另一负载分担的方法的应用场景示意图;
图3为本发明实施例提供的一种负载分担的方法流程示意图;
图4为IP报文的格式示意图;
图5为本发明实施例提供的一种负载分担的装置示意图;
图6为本发明实施例提供的另一负载分担的装置示意图;
图7为本发明实施例提供的又一负载分担的装置示意图;
图8为本发明实施例提供的一种网络设备示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明实施例提供的负载分担的方法在实际应用时,作为一种新的负载分担的方法可应用于两台物理设备之间通过链路转发数据报文的场景。图1为本发明实施例提供的一种负载分担的方法的应用场景示意图,如图1所示,网络设备1和网络设备5之间存在3条链路,其中通过网络设备2的是主链路,通过网络设备3的备链路1,通过网络设备4的是备链路2,网络设备1中设置有一个报文转发映射表,其中保存了报文优先级与链路的对应关系,当网络设备1接收到终端A发送的数据报文后,可以查询该报文转发映射表来确定将接收到的数据报文从哪条链路转发至网络设备5。网络设备1可以通过链路检测协议报文来检测主链路上数据报文的传输是否发生异常,在主链路上报文传输没有发生异常的情况下,所有报文优先级的数据报文都可以从主链路转发至网络设备5;在某个报文优先级的数据报文在主链路上发生异常的情况下,网络设备1可以将该报文优先级的数据报文以及低于该报文优先级的报文优先级的数据报文切换至备链路1或备链路2进行转发。由此本发明实施例提供的负载分担的方法实现了按照报文优先级进行分级的主备链路切换功能,可以减小在主链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。
本发明实施例还可以应用于负载分担链路的场景,图2为本发明实施例提供的另一负载分担的方法的应用场景示意图,如图2所示,网络设备1和网络设备5之间存在3条链路,分别为第一链路,第二链路和第三链路,这三条链路不分主备,是三条等价的负载分担链路,网络设备1中设置有一个报文转发映射表,其中保存了报文优先级与链路的对应关系,当网络设备1接收到终端A发送的数据报文后,可以查询该报文转发映射表来确定将接收到的数据报文从哪条链路转发至网络设备5。网络设备1可以通过链路检测协议报文检测各个链路上的数据报文的传输是否发生异常,在没有发生异常的情况下,各个报文优先级的数据报文从对应的链路转发至网络设备5,当某条链路上发生异常时,网络设备1可以将该条链路对应的报文优先级的数据报文切换至其他等价链路上进行转发。由此本发明实施例提供的负载分担的方法实现了按照报文优先级进行分级的负载分担功能,可以减小在某个链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。
图3为本发明实施例提供的一种负载分担的方法流程示意图,本实施例的执行主体是网络设备,其中详细描述了网络设备对接收到的数据报文按照报文优先级在相应的链路上进行转发的过程。如图3所示,该实施例包括以下步骤:
步骤310,接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级。
网络设备接收到终端发送的数据报文后,可以对所述数据报文进行解析,根据数据报文中的优先级字段可以识别数据报文的报文优先级,例如,对于虚拟局域网(Virtual Local AreaNetwork,VLAN)类型的数据报文,其报文优先级(Priority)字段封装在标签(Tag)字段中,其值为1-7中的任一值,值为1说明优先级最低,值为7说明优先级最高;对于多协议标签交换(Multi-Protocol Label Switching,MPLS)类型的数据报文,其报文优先级字段为业务级别(Class of Service,CoS)字段,该字段封装于二层头部MPLS头部,其值为1-7中的任一值,值为1说明优先级最低,值为7说明优先级最高;对于普通的IP报文,其报文优先级(Priority)字段封装在服务类型(Type of Service)字段中。图4为IP报文的格式示意图,其中明确显示了报文优先级字段在报文中的位置。
步骤320,查询报文转发映射表,获取所述报文优先级对应的出端口。
其中,报文转发映射表包括所述报文优先级和所述报文优先级对应的出端口。其中,该映射表中可以存储两条记录,一条记录用于存储报文优先级,如报文优先级1-7分别存储为自然数字1-7,一条记录用于存储报文优先级对应的出端口,如物理端口0-8。
优选地,报文转发映射表中的报文优先级和所述报文优先级对应的出端口也可以用一条记录来表示。例如,假设报文优先级是1,并且该数据报文通过出端口8发送至对端设备,则可以在报文转发映射表中添加一条记录00011111,其中这条记录的高4位表示报文优先级1,低4位表示报文的出端口8。网络设备查询报文转发映射表,判断报文优先级为1的数据报文通过出端口8对应的链路发送至对端设备。
需要说明的是,报文转发映射表中存储的报文优先级和所述报文优先级对应的出端口的形式只是一种具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
优选地,当网络设备检测到与对端设备之间的链路发生报文传输异常时,可以自动更新报文转发映射表,将报文异常链路上的数据报文切换到其他出端口对应的链路上进行发送。
可选地,网络设备可以设置在与对端设备之间的链路正常的情况下,每个报文优先级的数据报文从哪条链路发送至对端设备;并且可以设置在与对端设备之间的链路异常的情况下,将传输异常的报文优先级对应的数据报文切换至哪条链路进行发送。由此,网络设备可以根据报文优先级,将数据报文映射到对应的链路上,实现按照报文优先级的链路负载分担,对低报文优先级的数据报文的传输做到保护。
步骤330,通过所述出端口对应的链路转发所述数据报文至对端设备。
网络设备解析数据报文,获取报文优先级并且在报文转发映射表中查找到该数据报文对应的出端口后,即可将数据报文置于该出端口对应的链路的缓存队列中,通过对应的链路传输至对端设备。
本发明实施例提供的负载分担的方法,通过将数据报文优先级不同的报文映射到对应的链路上,实现了按照报文优先级的链路负载分担,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,本发明提供的技术方案中,通过检测链路上某个报文优先级的数据报文的传输是否出现异常,如果传输出现异常则可以将相应报文优先级的数据报文切换到其他链路上进行转发,由此进一步地对低报文优先级的用户数据报文的传输做到保护。上面的实施例简单描述了网络设备对接收到的报文按照报文转发映射表中设置的报文优先级与出端口的映射关系进行转发的方案。下面针对图1和图2所描述的场景简单描述报文转发映射表的配置与自动更新的方法。
优选地,在图1所示的应用场景下,网络设备可以预先设置在与对端设备之间的主链路正常的情况下,所有报文优先级对应的数据报文都在主链路上传输,如果主链路对应的端口为1,则在报文转发映射表中报文优先级1-7对应的出端口都为1,以实现所有数据报文都通过出端口1对应的主链路发送至对端设备。网络设备可以周期性检测主链路的负载信息,并根据检测结果判断是否要对主链路进行负载均衡处理,如果需要则根据负载信息更新报文转发映射表,并且根据更新后的报文转发映射表对主链路进行负载均衡,即将主链路上传输发生异常的低优先级报文切换到备链路上传输。其中,这里所描述的主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常,例如,报文优先级为1的报文在主链路上是否出现异常等。
优选地,在图1所述的应用场景下,网络设备可以预先设置在与对端设备之间的主链路发生拥挤或阻塞的情况下,每个报文优先级的数据报文在哪个链路上传输,例如,在主链路发生拥挤,导致报文优先级1-6的数据报文在主链路上的传输发生异常的情况下,当网络设备接收到数据报文后,可以通过查找预设的报文转发映射表,将报文优先级为1和2的数据报文调度到备链路1上传输,报文优先级为3和4的数据报文调度到备链路2上传输,这样可以减小在主链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,网络设备还可以周期性检测主链路、备链路1、备链路2的负载信息,并根据检查结果判断是否需要对主链路、或者备链路1、或者备链路2进行负载均衡处理,例如上述举例中,如果报文优先级为5的数据报文在主链路上的传输发生异常,则可以将报文优先级为5的报文切换到备链路上传输,或者如果报文优先级为1的数据报文在备链路1上的传输发生异常,则可以设置将报文优先级为1的数据报文切换到备链路2上传输,由此本发明实施例提供的技术方案中可以将发生异常的低报文优先级的数据报文切换到其他链路上传输,进一步地对低报文优先级的用户数据报文的传输做到保护。其中,举例来说,检测主链路的负载信息包括:检测所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常;如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
又举例来说,检测主链路的负载信息可以包括:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值。其中,丢包信息是否超过预设门限值可以通过以下信息之一或者信息的组合来衡量:丢包率、丢包数量。如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
可选地,还可以通过检测缓存队列中报文优先级的数据报文的发送时延来检测主链路的负载信息,如果时延过长,则可以判断需要对主链路进行负载均衡。
举例来说,在判断出某个报文优先级的数据报文在主链路上传输异常时,可以更新报文转发映射表,即将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口,并根据更新后的报文转发映射表进行负载均衡。可选地,在将传输异常的数据报文优先级报文切换至备链路后,可以继续周期性检测主链路以及传输数据报文的备链路的负载信息,当判断主链路上该报文优先级的数据报文可以被正常地传输时,可以将该报文优先级的数据报文重新切换到主链路上进行传输。
由此,在图1所示的应用场景下,网络设备实现了按照报文优先级的链路负载分担,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,本发明提供的技术方案中,通过检测链路上某个报文优先级的数据报文的传输是否出现异常,如果传输出现异常则可以将相应报文优先级的数据报文切换到其他链路上进行转发,由此进一步地对低报文优先级的用户数据报文的传输做到保护。
优选地,在图2所示的应用场景下,网络设备可以预先设置在与对端设备之间的链路正常的情况下,对每个报文优先级设置对应的链路,例如将报文优先级为1-2的数据报文设置在第一链路上传输,将报文优先级为3-5的数据报文设置在第二链路上传输,将报文优先级为6-7的数据报文设置在第三链路上传输。这样,网络设备在接收到数据报文后,根据数据报文的报文优先级,可以将数据报文映射到预先设置的链路上,实现了按照报文优先级的链路负载分担。网络设备可以周期性检测各个出端口对应的链路的负载信息,并且根据检测结果,判断是否需要将所检测链路上传输的数据报文切换到其他链路,如果需要,则更新报文转发映射表,并且根据更新后的报文转发映射表将所检测链路上传输的数据报文切换到其他链路进行传输。
可选地,在将所检测的异常链路上传输的报文切换至其他链路后,可以继续周期性检测各个链路的负载信息,如果在预设时间内检测到各个链路的负载信息发生变化时,则可根据负载信息继续更新报文转发映射表。
其中,每个链路对应的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常。检测各个出端口对应的链路的负载信息的方法可以为:检测在预设时间内各个链路上是否接收到对应报文优先级的链路检测协议报文;或者,检测各个链路的报文优先级缓存队列中是否有被丢弃的数据报文。
由此,在图2所示的应用场景下,网络设备实现了按照报文优先级的链路负载分担,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,本发明提供的技术方案中,通过检测链路上某个报文优先级的数据报文的传输是否出现异常,如果传输出现异常则可以将相应报文优先级的数据报文切换到其他链路上进行转发,由此进一步地对低报文优先级的用户数据报文的传输做到保护。
相应地,本发明实施例还提供了一种负载分担的装置,图5为本发明实施例提供的一种负载分担的装置示意图,如图5所示,该装置包括:
解析单元510,用于接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级,以及将所述报文优先级传输至查询单元。
查询单元520,用于接收所述解析单元传输的所述报文优先级,查询报文转发映射表,获取所述报文优先级对应的出端口,将所述出端口传输至发送单元。
其中,报文转发映射表包括所述报文优先级和所述报文优先级对应的出端口。其中,该映射表中可以存储两条记录,一条记录用于存储报文优先级,如报文优先级1-7分别存储为自然数字1-7,一条记录用于存储报文优先级对应的出端口,如物理端口0-8。
优选地,报文转发映射表中的报文优先级和所述报文优先级对应的出端口也可以用一条记录来表示。例如,假设报文优先级是1,并且该数据报文通过出端口8发送至对端设备,则可以在报文转发映射表中添加一条记录00011111,其中这条记录的高4位表示报文优先级1,低4位表示报文的出端口8。网络设备查询报文转发映射表,判断报文优先级为1的报文通过出端口8对应的链路发送至对端设备。
优选地,网络设备可以设置在与对端设备之间的链路正常的情况下,每个报文优先级的数据报文从哪条链路发送至对端设备;并且可以设置在与对端设备之间的链路异常的情况下,将传输异常的报文优先级对应的数据报文切换至哪条链路进行发送,因此,查询单元520通过查询报文转发映射表获取数据报文的出端口。
发送单元530,用于接收所述查询单元传输的所述出端口,通过所述出端口对应的链路转发所述数据报文至对端设备。
优选地,如图6所示,对于应用于图1所示的场景的负载分担装置,还包括:第一检测单元540,用于检测主链路的负载信息,所述主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常,将所述负载信息传输至第一判断单元;第一判断单元550,用于接收所述第一检测单元传输的负载信息,根据所述负载信息,判断是否需要对所述主链路进行负载均衡,将判断结果传输至第一处理单元;第一处理单元560,用于接收所述第一判断单元传输的所述判断结果,如果所述判断结果为是,则根据所述负载信息更新所述报文转发映射表,并且根据更新后的报文转发映射表对所述主链路进行负载均衡。
可选地,第一检测单元540具体用于:检测所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常;第一判断单元550具体用于如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
可选地,第一检测单元540具体用于:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值;其中丢包信息是否超过预设门限值通过以下信息之一或者信息的组合来进行衡量:丢包率、丢包数量;第一判断单元550具体用于:如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
可选地,其中,第一处理单元560更新转发映射表的方法包括:将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口。
在判断出某个报文优先级的数据报文在主链路上传输异常时,可以更新报文转发映射表,并根据更新后的报文转发映射表将该报文优先级的数据报文以及低于该报文优先级的数据报文切换到备链路1或者备链路2。
由此,该负载分担装置实现了按照报文优先级的链路负载分担,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,本发明提供的技术方案中,通过检测链路上某个报文优先级的数据报文的传输是否出现异常,如果传输出现异常则可以将相应报文优先级的数据报文切换到其他链路上进行转发,由此进一步地对低报文优先级的用户数据报文的传输做到保护。
优选地,如图7所示,对于应用于图2所示的场景的负载分担装置,还包括:第二检测单元570,用于检测各个出端口对应的链路的负载信息,所述各个出端口对应的链路的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常,将所述负载信息传输至第二判断单元;第二判断单元580,用于接收所述第二检测单元传输的所述负载信息,根据所检测的链路的负载信息,判断是否需要将在所述链路上传输的数据报文切换到其他链路进行传输,将判断结果传输至第二处理单元;第二处理单元590,用于接收所述第二判断传输的所述判断结果,如果所述判断结果为是,则更新所述报文转发映射表,并且根据更新后的报文转发映射表将在所述链路上传输的数据报文切换到其他链路进行传输。由此,该装置可以周期性检测各个链路的负载信息,并自动根据检测结果更新报文转发映射表以及对各个链路进行负载均衡,进而实现按照报文优先级进行负载均衡功能,进而实现了对低优先级报文的传输进行保护。
由此,本发明实施例通过报文转发映射表中存储的报文优先级与链路的映射关系,可以实现网络设备按照报文优先级为接收到的数据报文选择相应的链路进行传输,从而控制不同报文优先级的数据报文转发路径,避免了在链路发生异常时低报文优先级的数据报文首先被丢弃,对低报文优先级的用户数据报文的传输做到保护,稳定网络流量。
相应地,本发明实施例还提供了一种网络设备,图8为本发明实施例提供的一种网络设备示意图,如图所示,本实施例包括网络接口810、处理器820和存储器830。系统总线840用于连接网络接口810、处理器820和存储器830。
网络接口810用于与终端、对端设备进行通信。该网络接口810包括与对端设备进行通信的出端口,以及与终端相连接的入端口。
存储器830可以是永久存储器,例如硬盘驱动器和闪存,存储器830中具有软件模块和设备驱动程序。软件模块能够执行本发明上述方法的各种功能模块;设备驱动程序可以是网络和接口驱动程序。
在启动时,这些软件模块被加载到存储器830中,然后被处理器820访问并执行如下指令:
接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级;
查询报文转发映射表,获取所述报文优先级对应的出端口;
通过所述出端口对应的链路转发所述数据报文至对端设备。
其中,报文转发映射表包括所述报文优先级和所述报文优先级对应的出端口。其中,该映射表中可以存储两条记录,一条记录用于存储报文优先级,如报文优先级1-7分别存储为自然数字1-7,一条记录用于存储报文优先级对应的出端口,如物理端口0-8。
优选地,报文转发映射表中的报文优先级和所述报文优先级对应的出端口也可以用一条记录来表示。例如,假设报文优先级是1,该数据报文通过出端口8发送至对端设备,则可以在报文转发映射表中添加一条记录00011111,其中这条记录的高4位表示报文优先级1,低4位表示报文的出端口8。
进一步的,对于图1所示的应用场景,处理器820访问存储器830中的软件模块后,执行以下过程的指令:
检测主链路的负载信息,所述主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常;
根据所述负载信息,判断是否需要对所述主链路进行负载均衡;
如果是,则根据所述负载信息更新所述报文转发映射表,并且根据更新后的报文转发映射表对所述主链路进行负载均衡。
可选地,处理器820执行检测主链路的负载信息指令的过程为:检测所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常。在这种情况下,处理器820执行根据所述主链路的负载信息,判断是否需要对所述主链路进行负载均衡指令的过程为:如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
可选地,处理器820执行检测主链路的负载信息指令的过程为:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值。其中,丢包信息是否超过预设门限值通过以下信息之一或者信息的组合进行衡量:丢包率、丢包数量;在这种情况下,处理器820执行根据所述主链路的负载信息,判断是否需要对所述主链路进行负载均衡指令的过程为:如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
可选地,处理器820执行根据所述负载信息更新所述报文转发映射表指令的过程为:将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口。
进一步的,对于图2所示的应用场景,处理器820访问存储器830中的软件模块后,执行以下过程的指令:
检测各个出端口对应的链路的负载信息,所述各个出端口对应的链路的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常;
根据所检测的链路的负载信息,判断是否需要将在所述链路上传输的数据报文切换到其他链路进行传输;
如果是,则更新所述报文转发映射表,并且根据更新后的报文转发映射表将在所述链路上传输的数据报文切换到其他链路进行传输。
由此,本发明实施例实现了按照报文优先级的链路负载分担,可以减小在链路故障或拥挤时,低优先级用户数据报文被丢弃的可能性。进一步地,本发明提供的技术方案中,通过检测链路上某个报文优先级的数据报文的传输是否出现异常,如果传输出现异常则可以将相应报文优先级的数据报文切换到其他链路上进行转发,由此进一步地对低报文优先级的用户数据报文的传输做到保护。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种负载分担的方法,其特征在于,所述方法包括:
接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级;
查询报文转发映射表,获取所述报文优先级对应的出端口;
通过所述出端口对应的链路转发所述数据报文至对端设备。
2.根据权利要求1所述的负载分担的方法,其特征在于,所述方法还包括:
检测主链路的负载信息,所述主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常;
根据所述负载信息,判断是否需要对所述主链路进行负载均衡;
如果是,则根据所述负载信息更新所述报文转发映射表,并且根据更新后的报文转发映射表对所述主链路进行负载均衡。
3.根据权利要求2所述的负载分担的方法,其特征在于,
所述检测主链路的负载信息包括:检测所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常;
所述根据所述主链路的负载信息,判断是否需要对所述主链路进行负载均衡,包括:如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
4.根据权利要求2所述的负载分担的方法,其特征在于,
所述检测主链路的负载信息包括:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值;
所述丢包信息是否超过预设门限值通过以下信息之一或者信息的组合进行衡量:丢包率、丢包数量;
所述根据所述主链路的负载信息,判断是否需要对所述主链路进行负载均衡,包括:如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
5.根据权利要求2所述的负载分担的方法,其特征在于,所述根据所述负载信息更新所述报文转发映射表具体为:
将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口。
6.根据权利要求1所述的负载分担的方法,其特征在于,所述方法还包括:
检测各个出端口对应的链路的负载信息,所述各个出端口对应的链路的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常;
根据所检测的链路的负载信息,判断是否需要将在所述链路上传输的数据报文切换到其他链路进行传输;
如果是,则更新所述报文转发映射表,并且根据更新后的报文转发映射表将在所述链路上传输的数据报文切换到其他链路进行传输。
7.一种负载分担的装置,其特征在于,所述装置包括:
解析单元,用于接收数据报文,解析所述数据报文,获取所述数据报文对应的报文优先级,以及将所述报文优先级传输至查询单元;
查询单元,用于接收所述解析单元传输的所述报文优先级,查询报文转发映射表,获取所述报文优先级对应的出端口,将所述出端口传输至发送单元;
发送单元,用于接收所述查询单元传输的所述出端口,通过所述出端口对应的链路转发所述数据报文至对端设备。
8.根据权利要求7所述的负载分担的装置,其特征在于,所述装置还包括:
第一检测单元,用于检测主链路的负载信息,所述主链路的负载信息标识所述报文优先级的数据报文在所述主链路上的传输是否正常,将所述负载信息传输至第一判断单元;
第一判断单元,用于接收所述第一检测单元传输的负载信息,根据所述负载信息,判断是否需要对所述主链路进行负载均衡,将判断结果传输至第一处理单元;
第一处理单元,用于接收所述第一判断单元传输的所述判断结果,如果所述判断结果为是,则根据所述负载信息更新所述报文转发映射表,并且根据更新后的报文转发映射表对所述主链路进行负载均衡。
9.根据权利要求8所述的负载分担的装置,其特征在于,
所述第一检测单元具体用于:检测所述报文优先级的链路检测协议报文在所述主链路上的传输是否正常;
所述第一判断单元具体用于:如果所述主链路的负载信息标识所述报文优先级的链路检测协议报文传输异常,则判断需要对所述主链路进行负载均衡。
10.根据权利要求8所述的负载分担的装置,其特征在于,
所述第一检测单元具体用于:检测所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息是否超过预设门限值;其中丢包信息是否超过预设门限值通过以下信息之一或者信息的组合来进行衡量:丢包率、丢包数量;
所述第一判断单元具体用于:如果所述主链路的负载信息标识所述主链路对应的缓存队列中所述报文优先级的数据报文的丢包信息超过所述预设门限值,则判断需要对所述主链路进行负载均衡。
11.根据权利要求8所述的负载分担的装置,其特征在于,所述根据所述负载信息更新所述报文转发映射表,包括:
将所述报文转发映射表中所述等于和/或低于所述报文优先级所对应的端口调整为备份链路所对应的端口。
12.根据权利要求7所述的负载分担的装置,其特征在于,所述装置还包括:
第二检测单元,用于检测各个出端口对应的链路的负载信息,所述各个出端口对应的链路的负载信息标识所述报文优先级的数据报文在所述各个出端口对应的链路上的传输是否正常,将所述负载信息传输至第二判断单元;
第二判断单元,用于接收所述第二检测单元传输的所述负载信息,根据所检测的链路的负载信息,判断是否需要将在所述链路上传输的数据报文切换到其他链路进行传输,将判断结果传输至第二处理单元;
第二处理单元,用于接收所述第二判断传输的所述判断结果,如果所述判断结果为是,则更新所述报文转发映射表,并且根据更新后的报文转发映射表将在所述链路上传输的数据报文切换到其他链路进行传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103326889A CN103428101A (zh) | 2013-08-01 | 2013-08-01 | 负载分担的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103326889A CN103428101A (zh) | 2013-08-01 | 2013-08-01 | 负载分担的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103428101A true CN103428101A (zh) | 2013-12-04 |
Family
ID=49652289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103326889A Pending CN103428101A (zh) | 2013-08-01 | 2013-08-01 | 负载分担的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103428101A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927135A (zh) * | 2014-04-15 | 2014-07-16 | 华为技术有限公司 | 一种数据存储方法及装置 |
CN104363138A (zh) * | 2014-11-14 | 2015-02-18 | 迈普通信技术股份有限公司 | 一种接口备份方法及设备 |
WO2016000513A1 (zh) * | 2014-07-03 | 2016-01-07 | 华为技术有限公司 | 更新业务流报文的处理方式的方法及装置 |
CN106130925A (zh) * | 2016-08-26 | 2016-11-16 | 广州西麦科技股份有限公司 | 一种sdn网络的链路调度方法、设备及系统 |
WO2016183970A1 (zh) * | 2015-05-15 | 2016-11-24 | 中兴通讯股份有限公司 | 传输处理方法及装置 |
CN106302215A (zh) * | 2016-08-30 | 2017-01-04 | 华为技术有限公司 | 一种转发报文的方法及装置 |
CN108984404A (zh) * | 2018-07-11 | 2018-12-11 | 江苏满运软件科技有限公司 | 一种异常信息处理方法及系统,一种计算机产品 |
CN109190004A (zh) * | 2018-08-30 | 2019-01-11 | 焦点科技股份有限公司 | 一种基于特定策略降低搜索复杂度以应对超负荷搜索请求的方法 |
CN109728956A (zh) * | 2019-01-29 | 2019-05-07 | 网联清算有限公司 | 链路切换方法、装置、计算机设备和存储介质 |
CN109873776A (zh) * | 2019-01-30 | 2019-06-11 | 新华三技术有限公司 | 一种组播报文负载分担的均衡方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1540936A (zh) * | 2003-04-26 | 2004-10-27 | 华为技术有限公司 | 基于虚拟局域网的报文转发优先级控制方法 |
CN1561051A (zh) * | 2004-02-09 | 2005-01-05 | 中兴通讯股份有限公司 | 一种3g分组域边界网关的流控处理方法 |
CN101547155A (zh) * | 2009-04-30 | 2009-09-30 | 杭州华三通信技术有限公司 | 主备隧道负载分担方法和流量转发设备 |
CN102055720A (zh) * | 2009-10-28 | 2011-05-11 | 中兴通讯股份有限公司 | 基于QinQ的报文传输方法和装置 |
-
2013
- 2013-08-01 CN CN2013103326889A patent/CN103428101A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1540936A (zh) * | 2003-04-26 | 2004-10-27 | 华为技术有限公司 | 基于虚拟局域网的报文转发优先级控制方法 |
CN1561051A (zh) * | 2004-02-09 | 2005-01-05 | 中兴通讯股份有限公司 | 一种3g分组域边界网关的流控处理方法 |
CN101547155A (zh) * | 2009-04-30 | 2009-09-30 | 杭州华三通信技术有限公司 | 主备隧道负载分担方法和流量转发设备 |
CN102055720A (zh) * | 2009-10-28 | 2011-05-11 | 中兴通讯股份有限公司 | 基于QinQ的报文传输方法和装置 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927135A (zh) * | 2014-04-15 | 2014-07-16 | 华为技术有限公司 | 一种数据存储方法及装置 |
US10205656B2 (en) | 2014-07-03 | 2019-02-12 | Huawei Technologies Co., Ltd. | Method and apparatus for updating manner of processing packet of service flow |
WO2016000513A1 (zh) * | 2014-07-03 | 2016-01-07 | 华为技术有限公司 | 更新业务流报文的处理方式的方法及装置 |
CN104363138A (zh) * | 2014-11-14 | 2015-02-18 | 迈普通信技术股份有限公司 | 一种接口备份方法及设备 |
WO2016183970A1 (zh) * | 2015-05-15 | 2016-11-24 | 中兴通讯股份有限公司 | 传输处理方法及装置 |
CN106302204A (zh) * | 2015-05-15 | 2017-01-04 | 中兴通讯股份有限公司 | 传输处理方法及装置 |
CN106130925A (zh) * | 2016-08-26 | 2016-11-16 | 广州西麦科技股份有限公司 | 一种sdn网络的链路调度方法、设备及系统 |
CN106302215A (zh) * | 2016-08-30 | 2017-01-04 | 华为技术有限公司 | 一种转发报文的方法及装置 |
CN108984404A (zh) * | 2018-07-11 | 2018-12-11 | 江苏满运软件科技有限公司 | 一种异常信息处理方法及系统,一种计算机产品 |
CN109190004A (zh) * | 2018-08-30 | 2019-01-11 | 焦点科技股份有限公司 | 一种基于特定策略降低搜索复杂度以应对超负荷搜索请求的方法 |
CN109190004B (zh) * | 2018-08-30 | 2020-07-07 | 焦点科技股份有限公司 | 一种基于特定策略降低搜索复杂度的方法 |
CN109728956A (zh) * | 2019-01-29 | 2019-05-07 | 网联清算有限公司 | 链路切换方法、装置、计算机设备和存储介质 |
CN109873776A (zh) * | 2019-01-30 | 2019-06-11 | 新华三技术有限公司 | 一种组播报文负载分担的均衡方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103428101A (zh) | 负载分担的方法和装置 | |
US20200322261A1 (en) | Method and Node for Packet Transmission in Network | |
CN102571426B (zh) | 一种双归保护方法和装置 | |
US8867363B2 (en) | Resilient forwarding of packets with a per-customer edge (per-CE) label | |
US9461912B2 (en) | Load distribution architecture for processing tunnelled internet protocol traffic | |
US8472444B2 (en) | Method and apparatus for handling traffic in a data communication network | |
EP1261178A2 (en) | System and method for enhancing the availability of routing systems through equal cost multipath | |
CN100561977C (zh) | 一种多个端口共享传输链路时的快速重路由方法 | |
US10182015B2 (en) | Redundant transmission of data frames in communication networks having a ring topology | |
US9942138B2 (en) | Method and device for policy based routing | |
EP3029883B1 (en) | Network protection method and apparatus, next-ring node, and system | |
US9479402B2 (en) | External service plane | |
CN101425942A (zh) | 一种实现双向转发检测的方法、装置及系统 | |
CN113328916B (zh) | Bfd检测模式的切换方法、装置及设备 | |
CN102984014A (zh) | 数据发送方法及网络系统 | |
CN111447095B (zh) | 双向转发检测切换方法、双向转发检测模块及边缘设备 | |
CN103152251A (zh) | 一种报文处理方法及装置 | |
EP3255838B1 (en) | Method, switching device and network controller for protecting links in software-defined network (sdn) | |
CN105763467A (zh) | 流量切换方法及装置 | |
CN102739462A (zh) | 一种测试报文的发送方法以及装置 | |
CN112543128B (zh) | 用于指示维护模式操作的双向转发检测控制分组 | |
CN102045259B (zh) | 分组交换设备以及管理用户业务的方法 | |
US20140022922A1 (en) | Communication device | |
US9729432B2 (en) | Different forwarding of packets based on whether received from a core or customer network | |
CN112235202A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131204 |
|
RJ01 | Rejection of invention patent application after publication |