策略路由处理、报文转发方法及装置与流程

文档序号:11657331阅读:510来源:国知局
策略路由处理、报文转发方法及装置与流程

本发明涉及数据网络通信领域,尤其是涉及到策略路由处理方法及装置。



背景技术:

策略路由与传统路由相比,功能更强、使用更灵活,它使网络管理者不仅能够根据目的地址,而且能够根据报文应用或源ip地址来选择转发路径。所谓报文应用包括传输控制协议(tcp)或用户数据报协议(udp)的接口号,还包括报文的长度。策略路由可以在一定程度上实现流量工程,使不同服务质量的流或不同性质的数据,如语音流量和数据流量,走不同的路径。

随着策略路由技术在网络中应用越来越广泛,对策略路由的要求越来越高,如路由器接口失效时策略路由快速切换到传统路由的性能提出了更高要求。现在常见的策略路由切换到传统路由的方法是接口模块先将接口失效上报到协议层,然后再由接口协议通知策略路由的协议重新计算转发路径,然后下发控制转发面的转发表切换到传统路由。这样的切换方式存在的一个问题就是切换的时间需要将接口协议通知策略路由重新计算的时间算进来,这样可能会使切换性能满足不了日益增加的高性能需求,且在尚未完成切换的情况下,会导致报文丢失。

针对相关技术中转发表维护方式引起丢包的问题,现有技术还未提出有效的解决方案。



技术实现要素:

本发明的目的在于提供了策略路由处理方法及装置,解决了相关技术中转发表维护方式引起丢包的问题。

根据本发明的一个方面,提供一种策略路由处理方法,包括:将检测到的接口失效信息上报协议层,其中,该接口失效信息用于指示该协议层将该 策略路由转发表状态更新为无效;将失效接口对应的策略路由转发表置于无效。

进一步地,将该失效接口对应的策略路由转发表置于无效包括:根据接口id确定该策略路由转发表,其中,该接口id为协议层下发的;将确定的该策略路由转发表置于无效。

进一步地,根据该接口id确定该策略路由转发表包括:根据该接口id、下一跳ip地址和虚拟专用网络id确定该策略路由转发表,其中,该下一跳ip地址和虚拟专用网络id是根据该接口id查询映射表确定的。

进一步地,根据该接口id、该下一跳ip地址和该虚拟专用网络id确定该策略路由转发表包括:根据该接口id、该下一跳ip地址和该虚拟专用网络id查询散列表确定该策略路由转发表。

进一步地,将该失效策略路由对应的策略路由转发表置于无效包括:通过更改策略路由转发表的有效标记位的方式将策略路由转发表置于无效。

根据本发明的另一方面,提供一种报文转发方法,包括:判断是否获取到策略路由转发信息,其中,该策略路由转发信息包括有效标记位;在判断结果为是且该有效标记位为有效的情况下,将该报文按照策略路由转发表转发;在判断结果为否,或判断结果为是但该有效标记位为无效的情况下,将该报文按照普通路由转发表转发。

进一步地,在判断是否获取到策略路由转发信息之前,该方法还包括:通过报文关键词匹配访问控制列表acl表,其中,该报文关键词通过解析报文获取;判断匹配是否成功;在判断结果为是的情况下,确定获取到该策略路由转发信息;在判断结果为否的情况下,确定未获取到该策略路由转发信息。

根据本发明的另一方面,提供一种策略路由处理装置,包括:上报模块,用于将检测到的接口失效信息上报协议层,其中,该接口失效信息用于指示该协议层将该策略路由转发表状态更新为无效;处理模块,用于将失效接口对应的策略路由转发表置于无效。

进一步地,该处理模块包括:确定单元,用于根据该接口id、下一跳ip地址和虚拟专用网络id确定该策略路由转发表,其中,该下一跳ip地址和 虚拟专用网络id是根据该接口id查询映射表确定的。

根据本发明的另一方面,提供一种报文转发装置,包括:判断模块,用于判断是否获取到策略路由转发信息,其中,该策略路由转发信息包括有效标记位;第一转发模块,用于在判断结果为是且该有效标记位为有效的情况下,将该报文按照策略路由转发表转发;第二转发模块,用于在判断结果为否,或判断结果为是但该有效标记位为无效的情况下,将该报文按照普通路由转发表转发。

通过本发明,采用将检测到的接口失效信息上报协议层,将失效接口对应的策略路由转发表置于无效的技术方案,解决了相关技术中转发表维护方式引起丢包的问题,减少了丢包的可能性。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的策略路由处理方法的流程图;

图2是根据本发明实施例的报文转发方法的流程图;

图3是根据本发明实施例的策略路由处理装置的结构框图;

图4是根据本发明优选实施例的策略路由处理装置的结构框图;

图5是根据本发明实施例的报文转发装置的结构框图;

图6是根据本发明实施例报文处理方法的流程图;

图7是根据本发明实施例策略路由转发表更新流程图;

图8是根据本发明实施例策略路由切换到普通路由的流程图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

在本实施例中提供了一种策略路由处理方法及装置,图1是根据本发明 实施例的策略路由处理方法的流程图,如图1所示,该流程包括如下步骤:

步骤s102,接口模块将检测到的接口失效信息上报协议层,其中,该接口失效信息用于指示该协议层将该策略路由转发表状态更新为无效;

步骤s104,所述接口模块将失效接口对应的策略路由转发表置于无效。

进一步地,协议层下发接口id,所述接口模块根据接口id确定该策略路由转发表,将确定的该策略路由转发表置于无效。

可选地,接口id查询映射表确定下一跳ip地址和虚拟专用网络id,根据该接口id、下一跳ip地址和虚拟专用网络id查询散列表确定该策略路由转发表。

可选地,接口模块通过更改策略路由转发表的有效标记位的方式将策略路由转发表置于无效。具体而言,在有效标记位为1的情况下,表示策略路由转发表有效,转发面可将报文按照策略路由转发表的路径转发;在有效标记位为0的情况下,表示策略路由转发表无效,转发面可将报文按照普通路由转发表的路径转发。

通过上述步骤,解决了相关技术中转发表维护方式引起丢包的问题,减少了丢包的可能性。

图2是根据本发明实施例的报文转发方法的流程图,如图2所示,该流程包括如下步骤:

步骤s202,转发面判断是否获取到策略路由转发信息,其中,该策略路由转发信息包括有效标记位;

步骤s204,所述转发面在判断结果为是且该有效标记位为有效的情况下,将该报文按照策略路由转发表转发;在判断结果为否,或判断结果为是但该有效标记位为无效的情况下,将该报文按照普通路由转发表转发。

进一步地,可以通过判断报文关键词是否匹配访问控制列表acl表判断是否获取到策略路由转发信息。具体而言,转发面解析报文获取报文关键词,通过报文关键词匹配访问控制列表acl表,在匹配成功的情况下,确定获取到该策略路由转发信息;在匹配失败的情况下,确定未获取到该策略路由转发信息。

图3是根据本发明实施例的策略路由处理装置的结构框图,如图3所示,该装置包括:

上报模块32,用于将检测到的接口失效信息上报协议层,其中,该接口失效信息用于指示该协议层将该策略路由转发表状态更新为无效;

处理模块34,用于将失效接口对应的策略路由转发表置于无效。

图4是根据本发明优选实施例的策略路由处理装置的结构框图,如图4所示,该处理模块34包括:

确定单元42,用于根据该接口id、下一跳ip地址和虚拟专用网络id确定该策略路由转发表,其中,该下一跳ip地址和虚拟专用网络id是根据该接口id查询映射表确定的

图5是根据本发明实施例的报文转发装置的结构框图,如图5所示,该报文转发装置还包括:

判断模块52,用于判断是否获取到策略路由转发信息,其中,该策略路由转发信息包括有效标记位;

第一转发模块54,用于在判断结果为是且该有效标记位为有效的情况下,将该报文按照策略路由转发表转发;

第二转发模块56,用于在判断结果为否,或判断结果为是但该有效标记位为无效的情况下,将该报文按照普通路由转发表转发。

下面结合具体实施例对本发明进行进一步说明。

本实施例提出了一种策略路由失效减少丢包的方法,通过控制面底层接口模块在接口down时先更新策略路由转发表的有效标记位,转发面同时查询普通路由表和策略路由转发表,由策略路由转发表的有效标记位是否有效,来判断报文转发路径的方式,实现网络中发生故障时策略路由快速切换到普通路由,减少丢包数量。

图6是根据本发明实施例的报文处理方法的流程图,如图6所示,该方法包括以下步骤:

步骤s602,控制面底层接口模块检测到接口down,将接口状态上报的同时通知策略路由模块更改策略路由转发表为无效;

步骤s604,在数据转发层面用报文中的目的ip地址查路由表和策略路由转发表,如果策略路由转发表有效标记位有效就按策略路由转发,如果策略路由转发表有效标记位无效,则按报文目的ip地址查路由表的结果转发;

步骤s606,接口模块将接口down信息上报接口协议层,再由接口协议通知策略路由协议下发更新策略路由转发表,使上层协议层与下层硬件层状态达到一致。

该上下层一致的步骤可以进一步克服网络管理的困难。

图7是根据本发明实施例的策略路由转发表更新的流程图,如图7所示,该方法包括以下步骤:

步骤s702,策略路由模块根据策略路由协议下发的接口id、下一跳ip地址、虚拟专用网络(又称vpn)id三个关键字段申请策略路由转发表,并以这三个字段进行散列(又称hash)建立hash表,hash表内容是策略路由转发表;

步骤s704,策略路由模块以策略路由接口id为键值建立接口id与下一跳ip地址、vpnid的映射表;

步骤s706,控制面底层的接口模块检测到链路失效down后,用接口id查询映射表得到下一跳ip地址和vpnid;

步骤s708,用接口id,下一跳ip地址和vpnid进行hash查找hash表得到策略路由转发表;

步骤s710,修改策略路由转发表的有效标记位字段为0,即策略路由转发表无效。

图8为是根据本发明实施例的策略路由切换到普通路由的流程图,如图8所示,该方法包括以下步骤:

步骤s802,转发面“报文解析模块”提取报文关键字,若报文为ip报文,解析出源ip地址、目的ip地址,协议号等字段,若报文为udp报文,解析出源ip地址,目的ip地址,ip协议号,源接口,目的接口;

步骤s804,转发面“路由查找模块”用报文目的ip地址查路由表得到普通路由转发表信息并保存;

步骤s806,转发面“acl匹配模块”用报文关键字去匹配acl表,若匹配成功,则取其结果表得到策略路由转发表,执行步骤s808;如果没有匹配的acl表,则按上述普通路由转发表转发;

步骤s808,查询策略路由转发表的有效标记位valid_flag,如果valid_flag=1,表示策略路由有效,按策略路由转发;如果valid_flag=0,则按普通路由转发。

图6-图8中所述的模块的功能由接口模块、上报模块、处理模块、判断模块、第一转发模块与第二转发模块中的一种或几种的组合实现。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1