一种数据报文传输方法和装置制造方法及图纸

技术编号:15695346 阅读:127 留言:0更新日期:2017-06-24 10:47
本申请提供一种数据报文传输方法和装置,该方法包括:接收数据报文,并利用所述数据报文的目的IP地址查询分支网段表;若不存在与所述目的IP地址匹配的隧道表项,则为目的地址表中的每个IP地址构造探测报文,所述探测报文携带所述目的IP地址;发送所述探测报文,以使与所述目的IP地址对应的分支路由器返回探测响应报文;接收分支路由器返回的探测响应报文,并利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项,在所述分支网段表中记录所述隧道表项;利用与所述目的IP地址匹配的隧道表项发送所述数据报文。通过本申请的技术方案,解决无法传输数据报文的问题,即解决没有隧道表项时的断流问题,并可以提高P2MP隧道的自适应性。

【技术实现步骤摘要】
一种数据报文传输方法和装置
本申请涉及通信
,尤其涉及一种数据报文传输方法和装置。
技术介绍
GRE(GenericRoutingEncapsulation,通用路由封装)隧道是一种常见隧道,可以对某些网络层协议(如IP)的数据报文进行封装,使这些被封装的数据报文能够在另一网络层协议(如IP)中传输,封装后的数据报文在网络中传输的路径称为GRE隧道,GRE隧道是一个点到点连接,其两端设备分别对数据报文进行封装和解封装。GRE隧道的工作原理如图1所示,数据报文1的源地址为主机1的IP地址,目的地址为主机2的IP地址,在数据报文1到达路由器A时,根据目的IP地址查询路由表,发现出接口是GRE隧道,则为数据报文1封装GRE头,得到数据报文2,GRE头的内容包括版本、协议、序列号等。然后为数据报文2封装IP头,得到数据报文3,IP头的源地址为路由器A的IP地址,目的地址为路由器B的IP地址。路由器A通过GRE隧道将数据报文3发送给路由器B,路由器B对数据报文3进行解封装,得到数据报文1,根据数据报文1的目的IP地址查询路由表,通过出接口将数据报文1发送到主机2。当企业分支机构众多时,可以在企业中心配置中心路由器,并在各个分支机构配置分支路由器,如图2所示的组网。若在中心路由器与每个分支路由器之间单独建立GRE隧道,则随着分支机构数量的增加,GRE隧道的数量会很多,配置工作量很大,而且中心路由器需要为每个GRE隧道单独分配IP地址,浪费地址资源。为此,提出了基于P2MP(Pointtomulti-point,点到多点)的GRE隧道技术,在每个分支路由器上配置GRE隧道,GRE隧道的目的IP地址为中心路由器的IP地址A,源IP地址为本分支路由器的IP地址,而中心路由器上配置P2MPGRE隧道。基于此,中心路由器接收到来自分支路由器1的数据报文后,从数据报文中解析出分支路由器1的IP地址和主机2的IP地址,建立一条隧道表项,该隧道表项的索引为主机2的IP地址,目的地址为分支路由器1的IP地址。这样,中心路由器在接收到主机1发送给主机2的数据报文后,通过数据报文的目的IP地址查询隧道表项,得到分支路由器1的IP地址,并利用IP地址A和分支路由器1的IP地址对数据报文进行GRE隧道封装并发送。在上述方式下,中心路由器只有接收到来自分支路由器1的数据报文,才可以维护隧道表项,若当前没有维护隧道表项时,先接收到主机1发送给主机2的数据报文,则无法传输数据报文。而且,为了节约表项资源,若一定时间内没有接收到来自分支路由器1的数据报文,中心路由器还会删除已经建立的隧道表项,此时若接收到主机1发送给主机2的数据报文,也无法传输数据报文。
技术实现思路
本申请提供一种数据报文传输方法,应用于中心路由器,该方法包括:接收数据报文,并利用所述数据报文的目的IP地址查询分支网段表;若不存在与所述目的IP地址匹配的隧道表项,则为目的地址表中的每个IP地址构造探测报文,所述探测报文携带所述目的IP地址;发送所述探测报文,以使与所述目的IP地址对应的分支路由器返回探测响应报文;接收分支路由器返回的探测响应报文,并利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项,在所述分支网段表中记录所述隧道表项;利用与所述目的IP地址匹配的隧道表项发送所述数据报文。本申请提供一种数据报文传输装置,应用于中心路由器,该装置包括:接收模块,用于接收数据报文;判断模块,用于利用所述数据报文的目的IP地址查询分支网段表;处理模块,用于当不存在与所述目的IP地址匹配的隧道表项时,则为目的地址表中的每个IP地址构造探测报文,所述探测报文携带所述目的IP地址;发送模块,用于发送所述处理模块为目的地址表中的每个IP地址构造的探测报文,以使与所述目的IP地址对应的分支路由器返回探测响应报文;所述接收模块,还用于接收分支路由器返回的探测响应报文;所述处理模块,还用于利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项,并在所述分支网段表中记录所述隧道表项;所述发送模块,还用于利用所述隧道表项发送所述数据报文。基于上述技术方案,本申请实施例中,在接收到数据报文时,若分支网段表不存在与数据报文的目的IP地址匹配的隧道表项,则可以为目的地址表中的每个IP地址构造探测报文,以使与该目的IP地址对应的分支路由器返回探测响应报文,并利用该探测响应报文获得与该目的IP地址匹配的隧道表项,从而利用该隧道表项发送该数据报文。基于上述方式,只要曾经接收过分支路由器发送的报文,即使当前在分支网段表中没有找到与目的IP地址匹配的隧道表项,也可以通过目的地址表触发学习到隧道表项,解决无法传输数据报文的问题,即解决没有隧道表项时的断流问题,并可以提高P2MP隧道的自适应性。附图说明为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。图1是GRE隧道的工作原理的示意图;图2是基于P2MP的GRE隧道技术的工作原理的示意图;图3是本申请一种实施方式中的数据报文传输方法的流程图;图4是本申请一种实施方式中的目的地址表的结构示意图;图5是本申请一种实施方式中根据keepalive报文建立隧道表项的示意图;图6是本申请一种实施方式中的分支网段表的结构示意图;图7是本申请一种实施方式中的维护分支网段表、目的地址表的示意图;图8是本申请另一种实施方式中的数据报文传输方法的流程图;图9是本申请一种实施方式中的配置两个中心路由器的示意图;图10是本申请另一种实施方式中的数据报文传输方法的流程图;图11是本申请一种实施方式中的中心路由器的硬件结构图;图12是本申请一种实施方式中的数据报文传输装置的结构图。具体实施方式在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。本申请实施例中提出一种数据报文传输方法,该方法可以应用于中心路由器,参见图3所示,为数据报文传输方法的流程图,该方法可以包括以下步骤:步骤301,接收数据报文,利用该数据报文的目的IP地址查询分支网段表。步骤302,若不存在与该目的IP地址匹配的隧道表项,则为目的地址表中的每个IP地址构造探测报文,该探测报文携带该目的IP地址;以及,发送该探测报文,以使与该目的IP地址对应的分支路由器返回探测响应报文。步骤303,接收分支路由器返回的探测响应报文,并利用该探测响应报文获得与该目的IP本文档来自技高网
...
一种数据报文传输方法和装置

【技术保护点】
一种数据报文传输方法,应用于中心路由器,其特征在于,该方法包括:接收数据报文,并利用所述数据报文的目的IP地址查询分支网段表;若不存在与所述目的IP地址匹配的隧道表项,则为目的地址表中的每个IP地址构造探测报文,所述探测报文携带所述目的IP地址;发送所述探测报文,以使与所述目的IP地址对应的分支路由器返回探测响应报文;接收分支路由器返回的探测响应报文,并利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项,在所述分支网段表中记录所述隧道表项;利用与所述目的IP地址匹配的隧道表项发送所述数据报文。

【技术特征摘要】
1.一种数据报文传输方法,应用于中心路由器,其特征在于,该方法包括:接收数据报文,并利用所述数据报文的目的IP地址查询分支网段表;若不存在与所述目的IP地址匹配的隧道表项,则为目的地址表中的每个IP地址构造探测报文,所述探测报文携带所述目的IP地址;发送所述探测报文,以使与所述目的IP地址对应的分支路由器返回探测响应报文;接收分支路由器返回的探测响应报文,并利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项,在所述分支网段表中记录所述隧道表项;利用与所述目的IP地址匹配的隧道表项发送所述数据报文。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到来自分支路由器的第一类报文时,从第一类报文中解析出外层源IP地址,判断目的地址表中是否存在与外层源IP地址匹配的隧道表项;若不存在与外层源IP地址匹配的隧道表项,则生成与外层源IP地址匹配的隧道表项,并在所述目的地址表中记录生成的隧道表项,并为生成的隧道表项设置老化定时器;若存在与外层源IP地址匹配的隧道表项,则刷新与外层源IP地址匹配的隧道表项的老化定时器的老化时间。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到来自分支路由器的第二类报文时,从所述第二类报文中解析出外层源IP地址以及内层源IP地址,并判断所述分支网段表中是否存在与所述外层源IP地址、所述内层源IP地址匹配的隧道表项;若不存在匹配的隧道表项,则生成与所述外层源IP地址、所述内层源IP地址匹配的隧道表项,并在所述分支网段表中记录生成的隧道表项,并为生成的隧道表项设置老化定时器;若存在匹配的隧道表项,则刷新与所述外层源IP地址、所述内层源IP地址匹配的隧道表项的老化定时器的老化时间。4.根据权利要求3所述的方法,其特征在于,所述从所述第二类报文中解析出外层源IP地址以及内层源IP地址之后,所述方法还包括:判断所述目的地址表中是否存在与外层源IP地址匹配的隧道表项;若不存在与外层源IP地址匹配的隧道表项,则生成与外层源IP地址匹配的隧道表项,并在所述目的地址表中记录生成的隧道表项,并为生成的隧道表项设置老化定时器;若存在与外层源IP地址匹配的隧道表项,则刷新与外层源IP地址匹配的隧道表项的老化定时器的老化时间。5.根据权利要求3所述的方法,其特征在于,所述方法还包括:在根据所述中心路由器的配置信息确定需要删除所述分支网段表中的隧道表项,或者,根据删除命令确定需要删除所述分支网段表中的隧道表项,或者,根据隧道表项的老化定时器确定需要删除所述分支网段表中的隧道表项时,则从所述分支网段表中删除待删除的隧道表项,或者,将所述分支网段表中的待删除的隧道表项迁移到指定存储位置。6.根据权利要求1或5所述的方法,其特征在于,所述利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项的过程,具体包括:从所述探测响应报文中解析出分支路由器的IP地址,并判断指定存储位置是否存在与所述分支路由器的IP地址、所述目的IP地址匹配的隧道表项;如果是,则从所述指定存储位置获得与所述分支路由器的IP地址、所述目的IP地址匹配的隧道表项,刷新该隧道表项的老化定时器的老化时间;如果否,则生成与所述分支路由器的IP地址、所述目的IP地址匹配的隧道表项,并为生成的隧道表项设置老化定时器。7.根据权利要求2或4所述的方法,其特征在于,所述方法还包括:在隧道表项的老化定时器超时时,根据所述隧道表项的外层源IP地址构造第三类报文,并向所述外层源IP地址对应的分支路由器发送所述第三类报文;若在预设时间内收到所述第三类报文对应的响应报文,则刷新所述隧道表项的老化定时器的老化时间;若在预设时间内未收到所述第三类报文对应的响应报文,则从所述目的地址表中删除所述隧道表项,或者,在隧道表项的老化定时器超时之前的第N秒,根据所述隧道表项的外层源IP地址构造第三类报文,并向所述外层源IP地址对应的分支路由器发送所述第三类报文;若在所述老化定时器超时之前,收到所述第三类报文对应的响应报文,则刷新所述隧道表项的老化定时器的老化时间;若在所述老化定时器超时之前,未收到所述第三类报文对应的响应报文,则从所述目的地址表中删除所述隧道表项;其中,N为大于0的数值。8.根据权利要求1所述的方法,其特征在于,所述利用所述数据报文的目的IP地址查询分支网段表之后,所述方法还包括:若存在与所述目的IP地址匹配的隧道表项,查询是否存在GRE隧道备份口;如果不存在GRE隧道备份口,利用与所述目的IP地址匹配的隧道表项发送所述数据报文;如果存在GRE隧道备份口,则比较隧道表项的优先级与GRE隧道备份口的优先级;如果隧道表项的优先级高于所述GRE隧道备份口的优先级,则利用与所述目的IP地址匹配的隧道表项发送所述数据报文;如果所述GRE隧道备份口的优先级高于隧道表项的优先级,则利用所述GRE隧道备份口发送所述数据报文。9.根据权利要求1所述的方法,其特征在于,所述利用所述数据报文的目的IP地址查询分支网段表之后,所述方法还包括:若不存在与目的IP地址匹配的隧道表项,则查询是否存在GRE隧道备份口;如果存在GRE隧道备份口,利用所述GRE隧道备份口发送所述数据报文;如果不存在GRE隧道备份口,则执行为目的地址表中的每个IP地址构造探测报文的过程;若在指定时间内接收到分支路由器返回的探测响应报文,则执行利用所述探测响应报文获得与所述目的IP地址匹配的隧道表项的过程;若在指定时间内未接收到分支路由器返回的探测响应报文,则丢弃所述数据报文。10.根据权利要求1所述的方法,其特征在于,所述方法还包括:若通过GRE隧道备份口接收到数据报文,则设置该数据报文的入接口索引为所述GRE隧道备份口,并利用该数据报文的目的IP地址查询分支网段表;若不存在与该目的IP地址匹配的隧道表项,则判断该数据报文的入接口索引是否为所述GRE隧道...

【专利技术属性】
技术研发人员:王文龙
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

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

1