一种路由选择方法及报文转发设备技术

技术编号:17618030 阅读:27 留言:0更新日期:2018-04-04 08:39
本发明专利技术实施例公开了一种路由选择方法和报文转发设备,报文转发设备在获取需要转发的报文后,获取等价路由中各个路由的出接口的报文重传率,选择出接口的报文重传率最低的路由作为优选路由来转发报文。从上述过程可以看出,报文转发设备在选路时可以不依赖于外部设备,完全在设备自身实现,减小报文被丢弃的概率,提升业务传输质量;而且不需要占用业务带宽,因此不需要增加出接口的带宽。

A route selection method and message forwarding device

The embodiment of the invention discloses a method of routing and packet forwarding device, packet forwarding device in access to forwarding message, obtain each routing routing in equivalent interface packet retransmission rate, select interface packet retransmission rate minimum routing as the preferred routing to forward the message. From the above it can be seen, the forwarding device can not rely on external devices in route selection, fully realized in the device itself, reduce the probability of packet is discarded, improve service transmission quality; and does not need to occupy the bandwidth, so there is no need to increase the bandwidth of the interface.

【技术实现步骤摘要】
一种路由选择方法及报文转发设备
本专利技术涉及网络
,更具体地说,涉及一种路由选择方法及报文转发设备。
技术介绍
等价路由(EqualCostMultipathRouting,ECMP)技术是指报文转发设备将报文发送到同一个目的地时存在多条等价的路径。这些等价的路径也叫等价路由。设备在转发去往该目的地的报文时,会在该多条等价的路径中选择至少一条路径来转发报文,以在各条路径间实现负载分担。如果其中一条路径的链路中断,该链路上的流量会在剩余的可用等价路径间重新进行一次计算分配,实现新的负载均衡,从而减小链路中断造成的影响。下面以网关路由器为例说明目前较常用的一种路由选择方法:网关路由器转发报文之前对报文进行复制,将复制的报文分别使用不同的路由进行转发。根据收到响应报文的时间确定不同路由的延时情况,从而选择延时最小的路由作为最优的转发路由,后续将报文使用该最优路由进行转发。然而,将报文复制后进行发送会占用业务流量的带宽。与此同时被复制多份的相同的报文被发送到对端时,可能会被对端识别为攻击报文而被丢弃,从而降低业务传输质量。
技术实现思路
本专利技术的目的是提供一种路由选择方法及报文转发设备,以提高业务传输质量。本申请的第一方面提供了一种路由选择方法,通过所述报文转发设备的入接口接收报文;根据所述报文的目的地址,确定到达所述目的地址的等价路由,所述等价路由包括至少两个不同的路由;确定所述至少两个不同的路由中每个路由分别对应的所述报文转发设备的出接口;获取每个所述出接口的预置的报文重传率;基于每个所述出接口的预置的报文重传率,确定优选路由,所述优选路由用于发送所述报文。从上述过程可以看出,报文转发设备在选路时不依赖于外部设备,完全在设备自身实现,减小报文被丢弃的概率,提升业务传输质量;而且不需要占用业务带宽,因此不需要增加出接口的带宽。在一种实现方式中,所述基于每个所述出接口的预置的报文重传率,确定优选路由,包括:根据每个所述出接口的预置的报文重传率,选择出预置的报文重传率小于预设重传率阈值的出接口;确定选择出的出接口对应的路由为优选路由。在另一种实现方式中,所述基于每个所述出接口的预置的报文重传率,确定优选路由,包括:根据每个所述出接口的预置的报文重传率,选择出预置的报文重传率最小的出接口;确定选择出的出接口对应的路由为优选路由。在一又种实现方式中,所述基于每个所述出接口的预置的报文重传率,确定优选路由,包括:将每个所述出接口的预置的报文重传率乘以相同的数值,得到每个所述出接口对应的第一计算数值;将各个所述出接口对应的第一计算数值相加,得到和值;将得到的至少两个所述第一计算数值依次分配给每个所述出接口,所述出接口对应的预置的报文重传率越小,被分配的第一计算数值越大;为每个所述出接口配置编号,每个所述出接口被配置的编号的个数等于该出接口被分配的第一计算数值,每个编号的取值为自然数,切均小于所述和值,不同的出接口被配置的编号不同;对所述报文的源地址和目的地址进行预设运算,得到第二计算数值;将所述第二计算数值对所述和值取模;将每个所述出接口被配置的编号与所述取模结果进行比较,选择出编号与取模结果相同的出接口;确定选择出的出接口对应的路由为优选路由。在一种实现方式中,所述路由选择方法还包括:判断是否达到扫描时间;若达到扫描时间,统计所述报文转发设备的各个所述出接口的报文重传率;将所述报文转发设备的各个所述出接口的预置的报文重传率更新为最新统计得到的报文重传率。通过对各个出接口周期性进行扫描,以对各个出接口的报文重传率进行周期性统计,从而实现根据等价路由的质量实时调整报文从重传率低的出接口发送。在一种实现方式中,所述统计所述报文转发设备的各个所述出接口的报文重传率,包括:对于所述报文转发设备的每一个出接口,统计该出接口传输的每一条数据流中重传报文的数量,以及每一条数据流传输的报文的总数;将该出接口传输的所有数据流中重传报文的总数除以该出接口传输的所有数据流传输的报文的总数,得到该出接口的报文重传率。在另一种实现方式中,所述统计所述报文转发设备的各个所述出接口的报文重传率,包括:对于所述报文转发设备的每一个出接口,对该出接口传输的数据流进行采样,获得该出接口传输的预设数目条数据流;统计该出接口的预设数目条数据流中每一条数据流中重传报文的数量,以及每一条数据流传输的报文的总数;对所述预设数目条数据流中每一条数据流中重传报文的数量求和得到重传报文的总数,对所述预设数目条数据流中每一条数据流传输的报文的总数求和得到该出接口传输的报文的总数;将所述重传报文的总数除以该出接口传输的报文的总数,得到该出接口的报文重传率。在一种实现方式中,所述重传报文是指序列号相同的报文。本申请的第二方面提供一种报文转发设备,所述报文转发设备包括:处理器、存储器和网络接口;其中,所述网络接口包括至少一个用于接收报文的入接口,以及至少两个用于发送报文的出接口;所述存储器用于存储指令或指令相关数据;所述处理器用于执行所述指令,以通过所述入接口接收报文;根据所述报文的目的地址,确定到达所述目的地址的等价路由,所述等价路由包括至少两个不同的路由;确定所述至少两个不同的路由中每个路由分别对应的出接口;获取每个所述出接口的预置的报文重传率;基于每个所述出接口的预置的报文重传率,确定优选路由,所述优选路由用于发送所述报文。可以看出,报文转发设备在选路时可以不依赖于外部设备,完全在设备自身实现,减小报文被丢弃的概率,提升业务传输质量;而且不需要占用业务带宽,因此不需要增加出接口的带宽。在一种实现方式中,所述处理器用于基于每个所述出接口的预置的报文重传率,确定优选路由,包括:所述处理器用于,根据每个所述出接口的预置的报文重传率,选择出预置的报文重传率小于预设重传率阈值的出接口;确定选择出的出接口对应的路由为优选路由。在另一种实现方式中,所述处理器用于基于每个所述出接口的预置的报文重传率,确定优选路由,包括:所述处理器用于,根据每个所述出接口的预置的报文重传率,选择出预置的报文重传率最小的出接口;确定选择出的出接口对应的路由为优选路由。在又一种实现方式中,所述处理器用于基于每个所述出接口的预置的报文重传率,确定优选路由,包括:所示处理器用于,将每个所述出接口的预置的报文重传率乘以相同的数值,得到每个所述出接口对应的第一计算数值;将各个所述出接口对应的第一计算数值相加,得到和值;将得到的至少两个所述第一计算数值依次分配给每个所述出接口,所述出接口对应的预置的报文重传率越小,被分配的第一计算数值越大;为每个所述出接口配置编号,每个所述出接口被配置的编号的个数等于该出接口被分配的第一计算数值,每个编号的取值为自然数,切均小于所述和值;不同的出接口被配置的编号不同;对所述报文的源地址和目的地址进行预设运算,得到第二计算数值;将所述第二计算数值对所述和值取模;将每个所述出接口被配置的编号与所述取模结果进行比较,选择出编号与取模结果相同的出接口;确定选择出的出接口对应的路由为优选路由。在一种实现方式中,处理器还用于,判断是否达到扫描时间;若达到扫描时间,统计各个所述出接口的报文重传率;将各个所述出接口的预置的报文重传率更新为最新统计得到的报文重传率。通过对各个出接口周期性进本文档来自技高网...
一种路由选择方法及报文转发设备

【技术保护点】
一种路由选择方法,其特征在于,由报文转发设备执行,所述方法包括:通过所述报文转发设备的入接口接收报文;根据所述报文的目的地址,确定到达所述目的地址的等价路由,所述等价路由包括至少两个不同的路由;确定所述至少两个不同的路由中每个路由分别对应的所述报文转发设备的出接口;获取每个所述出接口的预置的报文重传率;基于每个所述出接口的预置的报文重传率,确定优选路由,所述优选路由用于发送所述报文。

【技术特征摘要】
1.一种路由选择方法,其特征在于,由报文转发设备执行,所述方法包括:通过所述报文转发设备的入接口接收报文;根据所述报文的目的地址,确定到达所述目的地址的等价路由,所述等价路由包括至少两个不同的路由;确定所述至少两个不同的路由中每个路由分别对应的所述报文转发设备的出接口;获取每个所述出接口的预置的报文重传率;基于每个所述出接口的预置的报文重传率,确定优选路由,所述优选路由用于发送所述报文。2.根据权利要求1所述的方法,其特征在于,所述基于每个所述出接口的预置的报文重传率,确定优选路由,包括:根据每个所述出接口的预置的报文重传率,选择出预置的报文重传率小于预设重传率阈值的出接口;确定选择出的出接口对应的路由为优选路由。3.根据权利要求1所述的方法,其特征在于,所述基于每个所述出接口的预置的报文重传率,确定优选路由,包括:根据每个所述出接口的预置的报文重传率,选择出预置的报文重传率最小的出接口;确定选择出的出接口对应的路由为优选路由。4.根据权利要求1所述的方法,其特征在于,所述基于每个所述出接口的预置的报文重传率,确定优选路由,包括:将每个所述出接口的预置的报文重传率乘以相同的数值,得到每个所述出接口对应的第一计算数值;将各个所述出接口对应的第一计算数值相加,得到和值;将得到的至少两个所述第一计算数值依次分配给每个所述出接口,所述出接口对应的预置的报文重传率越小,被分配的第一计算数值越大;为每个所述出接口配置编号,每个所述出接口被配置的编号的个数等于该出接口被分配的第一计算数值,每个编号的取值为自然数、且均小于所述和值,不同的出接口被配置的编号不同;对所述报文的源地址和目的地址进行预设运算,得到第二计算数值;将所述第二计算数值对所述和值取模;将每个所述出接口被配置的编号与取模结果进行比较,选择出编号与取模结果相同的出接口;确定选择出的出接口对应的路由为优选路由。5.根据权利要求1所述的方法,其特征在于,还包括:判断是否达到扫描时间;若达到扫描时间,统计所述报文转发设备的各个所述出接口的报文重传率;将所述报文转发设备的各个所述出接口的预置的报文重传率更新为最新统计得到的报文重传率。6.根据权利要求5所述的方法,其特征在于,所述统计所述报文转发设备的各个所述出接口的报文重传率,包括:对于所述报文转发设备的每一个出接口,统计该出接口传输的每一条数据流中重传报文的数量,以及每一条数据流传输的报文的总数;将该出接口传输的所有数据流中重传报文的总数除以该出接口传输的所有数据流传输的报文的总数,得到该出接口的报文重传率。7.根据权利要求5所述的方法,其特征在于,所述统计所述报文转发设备的各个所述出接口的报文重传率,包括:对于所述报文转发设备的每一个出接口,对该出接口传输的数据流进行采样,获得该出接口传输的预设数目条数据流;统计所述预设数目条数据流中每一条数据流中重传报文的数量,以及每一条数据流传输的报文的总数;对所述预设数目条数据流中每一条数据流中重传报文的数量求和得到重传报文的总数,对所述预设数目条数据流中每一条数据流传输的报文的总数求和得到该出接口传输的报文的总数;将所述重传报文的总数除以该出接口传输的报文的总数,得到该出接口的报文重传率。8.一种报文转发设备,其特征在于,包括:处理器、存储器和网络接口;其中,所述网络接口包括至少一个用于接收报文的入接...

【专利技术属性】
技术研发人员:张训伟朱小蕾毛闪闪
申请(专利权)人:华为数字技术苏州有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1