一种报文发送方法及装置制造方法及图纸

技术编号:19828466 阅读:25 留言:0更新日期:2018-12-19 16:58
本申请实施例提供了一种报文发送方法及装置,其中,报文发送方法包括:利用待发送报文的目的地址查询第一隧道表;若不存在与待发送报文的目的地址相匹配的第一隧道表项,则确定待发送报文的目标应用类型;利用目标应用类型查询第二隧道表;若存在与目标应用类型相匹配的第二隧道表项,则利用第二隧道表项发送待发送报文。通过本技术方案,第二隧道表记录中心节点所接收报文的应用类型与发送该报文的隧道源地址,当中心节点需要发送针对接收到的非对称IP业务报文的响应报文时,可以从第二隧道表中查询与待发送报文的应用类型相匹配的隧道表项,进而采用该隧道表项发送待发送报文。

【技术实现步骤摘要】
一种报文发送方法及装置
本申请涉及通信
,特别是涉及一种报文发送方法及装置。
技术介绍
GRE(GenericRoutingEncapsulation,通用路由封装)协议用于对其他的IP(InternetProtocol,网络互连协议)、MPLS(MultiprotocolLabelSwitching,多协议标签交换)、以太网等协议的数据报文进行封装,并将封装后的数据报文在GRE隧道中进行传输。封装后的数据报文为GRE报文。GRE隧道包括点对点和点对多点两种连接类型的GRE隧道。其中,点对多点GRE隧道能够提供一个中心节点到多个分支节点的虚拟连接。中心节点在接收到分支节点发送的GRE报文后,从GRE报文中获取传输协议报文头(封装层IP头)的隧道源IP地址和乘客协议报文头(内层IP头)的报文源IP地址,将隧道源IP地址确定为隧道目的IP地址,将报文源IP地址确定为报文目的IP地址,并将该隧道目的IP地址和该报文目的IP地址确定为对应关系。中心节点存储有GRE隧道表,GRE隧道表包括多个GRE隧道表项,每一GRE隧道表项记录隧道目的IP地址与报文目的IP地址的对应关系。中心节点从GRE报文中确定隧道目的IP地址和报文目的IP地址的对应关系之后,在GRE隧道表中查询是否存在该对应关系的GRE隧道表项,若不存在,则该对应关系新建一条GRE隧道表项,并将该新建的GRE隧道表项存储在GRE隧道表中。当中心节点需要通过GRE隧道向分支节点发送数据报文时,中心节点确定所需发送的数据报文的目的地址,即报文目的IP地址,并在GRE隧道表中查询是否存在该报文目的IP地址的GRE隧道表项,若存在,则根据GRE隧道表项确定出隧道目的IP地址,利用该隧道目的IP地址对数据报文进行封装成为GRE报文,并发送该GRE报文。一般来说,中心节点处理的业务为IP对称的,针对此类业务的报文也是IP对称的。例如,中心节点所接收的GRE报文为GRE请求报文,中心节点发送的GRE报文为GRE响应报文。GRE请求报文与GRE响应报文是IP对称的报文,即:GRE请求报文的隧道源IP地址与GRE响应报文的隧道目的IP地址相同,GRE请求报文中内层报文的源IP地址与GRE响应报文中内层报文的目的IP地址相同,GRE请求报文的隧道目的IP地址与GRE响应报文的隧道源IP地址相同,GRE请求报文中内层报文的目的IP地址与GRE响应报文中内层报文的源IP地址相同。然而,中心节点还会处理非对称IP的业务,比如IPv6地址冲突检测,OSPF(OpenShortestPathFirst,开放式最短路径优先)业务等。当中心节点接收到分支节点发送的非对称IP业务的GRE报文时,即使中心节点根据该非对称IP业务的GRE报文建立GRE隧道表项。当中心节点向该设备发送该非对称IP业务的GRE报文时,该GRE报文中内层报文的目的IP地址与GRE隧道表项中的报文目的IP地址不相同,因此,不能获取到隧道目的IP地址,导致中心节点无法通过GRE隧道发送GRE报文。以图1为例,设备A是作为中心节点的设备,设备B为分支节点,设备A的隧道接口配置IPv6地址为1111::1111,当设备B的隧道接口配置IPv6地址为1111::1111时,设备B发送NS(NeighborSolicitation)报文进行IPv6地址冲突检测。设备B先对NS报文进行封装,对于封装后的NS报文,隧道源IP地址为2.0.0.1,隧道目的IP地址为1.0.0.1,NS报文的源IP地址为::,NS报文的目的IP地址为ff02::1:ff00:1111(组播地址),设备A接收到该封装后的NS报文后所建立的GRE隧道表项中:报文目的IP地址为::,隧道目的IP地址为2.0.0.1。当设备A向设备B反馈NA(NeighborAdvertisement)报文时,该NA报文的源地址为1111::1111,目的地址为ff02::1(组播地址),在设备A建立的GRE隧道表项中不能匹配到该目的地址(ff02::1),使得设备A无法获取隧道目的IP地址,进而导致设备A无法将NA报文发送给设备B。因此,中心节点如何获取非对称IP业务的GRE报文的隧道目的地址是亟待解决的问题。
技术实现思路
本申请实施例的目的在于提供一种报文发送方法及装置,以解决中心节点无法获取到非对称IP业务的GRE报文的隧道目的地址,进而无法发送该GRE报文的问题。具体技术方案如下:第一方面,本申请实施例提供了一种报文发送方法,应用于中心节点,所述方法包括:利用待发送报文的目的地址查询第一隧道表;若不存在与所述待发送报文的目的地址相匹配的第一隧道表项,则确定所述待发送报文的目标应用类型;利用所述目标应用类型查询第二隧道表,其中,所述第二隧道表是根据分支节点发送的GRE报文中内层报文的应用类型与发送该GRE报文的隧道源地址建立的;若存在与所述目标应用类型相匹配的第二隧道表项,则利用所述第二隧道表项发送所述待发送报文。可选地,所述方法还包括:接收分支节点发送的GRE报文,并判断该GRE报文是否满足预设条件;若是,则获取该GRE报文中内层报文的应用类型和发送该GRE报文的隧道源地址;根据获取到的应用类型和隧道源地址建立对应的隧道表项,为该隧道表项设置老化时间,并维护在第二隧道表中。可选地,所述利用所述第二隧道表项发送所述待发送报文时,所述方法还包括:将与所述目标应用类型相匹配的第二隧道表项的老化时间重置为预设的默认值。可选地,所述判断该GRE报文是否满足预设条件的步骤包括:获取所接收的GRE报文中内层报文的目的地址;判断所获取的目的地址是否为所述中心节点的地址、与所述中心节点的地址相匹配的组播地址和广播地址中的任一种;如果是,则确定所接收的GRE报文满足预设条件。可选地,所述利用所述第二隧道表项发送所述待发送报文的步骤包括:若所述第二隧道表项为多个,则利用各第二隧道表项中的隧道地址分别对所述待发送报文进行GRE封装,得到隧道目的地址不同的各GRE报文;将封装后得到的各GRE报文分别通过对应的GRE隧道发送。第二方面,本申请实施例提供了一种报文发送装置,应用于中心节点,所述装置包括:第一查询模块,用于利用待发送报文的目的地址查询第一隧道表;第一确定模块,用于若不存在与所述待发送报文的目的地址相匹配的第一隧道表项,则确定所述待发送报文的目标应用类型;第二查询模块,用于利用所述目标应用类型查询第二隧道表,其中,所述第二隧道表是根据分支节点发送的GRE报文中内层报文的应用类型与发送该GRE报文的隧道源地址建立的;发送模块,用于若存在与所述目标应用类型相匹配的第二隧道表项,则利用所述第二隧道表项发送所述待发送报文。可选地,所述装置还包括:判断模块,用于接收分支节点发送的GRE报文,并判断该GRE报文是否满足预设条件;获取模块,用于当所述判断模块的判断结果为是时,则获取该GRE报文中内层报文的应用类型和发送该GRE报文的隧道源地址;建立模块,用于根据获取到的应用类型和隧道源地址建立对应的隧道表项,为该隧道表项设置老化时间,并维护在第二隧道表中。可选地,所述装置还包括:重置模块,用于将与所述目标应用类型相匹配的第二隧道表项的老化时间重置为预设的默认值。可选地,所述判断本文档来自技高网
...

【技术保护点】
1.一种报文发送方法,其特征在于,应用于中心节点,所述方法包括:利用待发送报文的目的地址查询第一隧道表;若不存在与所述待发送报文的目的地址相匹配的第一隧道表项,则确定所述待发送报文的目标应用类型;利用所述目标应用类型查询第二隧道表,其中,所述第二隧道表是根据分支节点发送的通用路由封装GRE报文中内层报文的应用类型与发送该GRE报文的隧道源地址建立的;若存在与所述目标应用类型相匹配的第二隧道表项,则利用所述第二隧道表项发送所述待发送报文。

【技术特征摘要】
1.一种报文发送方法,其特征在于,应用于中心节点,所述方法包括:利用待发送报文的目的地址查询第一隧道表;若不存在与所述待发送报文的目的地址相匹配的第一隧道表项,则确定所述待发送报文的目标应用类型;利用所述目标应用类型查询第二隧道表,其中,所述第二隧道表是根据分支节点发送的通用路由封装GRE报文中内层报文的应用类型与发送该GRE报文的隧道源地址建立的;若存在与所述目标应用类型相匹配的第二隧道表项,则利用所述第二隧道表项发送所述待发送报文。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收分支节点发送的GRE报文,并判断该GRE报文是否满足预设条件;若是,则获取该GRE报文中内层报文的应用类型和发送该GRE报文的隧道源地址;根据获取到的应用类型和隧道源地址建立对应的隧道表项,为该隧道表项设置老化时间,并维护在第二隧道表中。3.根据权利要求2所述的方法,其特征在于,所述利用所述第二隧道表项发送所述待发送报文时,所述方法还包括:将与所述目标应用类型相匹配的第二隧道表项的老化时间重置为预设的默认值。4.根据权利要求2所述的方法,其特征在于,所述判断该GRE报文是否满足预设条件的步骤包括:获取所接收的GRE报文中内层报文的目的地址;判断所获取的目的地址是否为所述中心节点的地址、与所述中心节点的地址相匹配的组播地址和广播地址中的任一种;如果是,则确定所接收的GRE报文满足预设条件。5.根据权利要求1所述的方法,其特征在于,所述利用所述第二隧道表项发送所述待发送报文的步骤包括:若所述第二隧道表项为多个,则利用各第二隧道表项中的隧道地址分别对所述待发送报文进行GRE封装,得到隧道目的地址不同的各GRE报文;将封装后得到的各GRE报文分别通过对应的GRE隧道发送。6.一种报文发送装置,其特征在于,应用于中心节点,所述装置包括:第一查询模块,用于利用待发送报文的目的地址查询第一隧道表;第一确定模块,用于若不存在与所述待发送报文的目的地址相匹配的第一隧道表项,...

【专利技术属性】
技术研发人员:韩冰陈翀吴宝平聂树伟
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

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

1