CN105703999B - 建立gre隧道的方法和设备 - Google Patents

建立gre隧道的方法和设备 Download PDF

Info

Publication number
CN105703999B
CN105703999B CN201610186856.1A CN201610186856A CN105703999B CN 105703999 B CN105703999 B CN 105703999B CN 201610186856 A CN201610186856 A CN 201610186856A CN 105703999 B CN105703999 B CN 105703999B
Authority
CN
China
Prior art keywords
address
gre tunneling
haap
gre
nat
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.)
Active
Application number
CN201610186856.1A
Other languages
English (en)
Other versions
CN105703999A (zh
Inventor
殷德强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XFusion Digital Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201610186856.1A priority Critical patent/CN105703999B/zh
Publication of CN105703999A publication Critical patent/CN105703999A/zh
Application granted granted Critical
Publication of CN105703999B publication Critical patent/CN105703999B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提出了一种建立GRE隧道的方法,包括:HG向HAAP发送GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的WAN的IP地址;所述HG接收所述HAAP发送的GRE隧道建立响应报文,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;所述HG根据所述GRE隧道建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT。因此,本申请所述的方法,减少了GRE隧道建立过程中强制认为经过NAT而在后续发送数据报文中强制添加UDP报文头所带来的不必要的网络开销。

Description

建立GRE隧道的方法和设备
技术领域
本发明涉及通信领域,尤其涉及通信领域中的建立通用路由封装(GenerationRouting Encapsulation,简称为“GRE”)隧道的方法和设备。
背景技术
混合接入(Hybrid Access,简称为“HA”)是一种绑定异构网络的接入技术。用户可以同时接入两种或两种以上的接入网络来访问网络侧。例如在家庭宽带网络中,用户可同时接入固定接入网络(例如,数字用户线路(Digital Subscriber Line,简称为“DSL”))和移动接入网络(例如,长期演进(Long time Evolution,简称为“LTE”))。能够为用户提供更快的业务开通服务、更可靠的WAN连接、以及更大的带宽。
当前技术中,采用GRE隧道绑定实现HA技术。如图1所示,用户侧的家庭网关(HomeGateway,简称为“HG”)分别与网络侧的混合链路聚合节点(Hybrid Access AggregationPoint,简称为“HAAP”)服务器创建基于DSL接入网络的GRE隧道和基于LTE接入网络的GRE隧道。而GRE隧道的建立是不感知中间链路是否进行了网络地址转换(Network AddressTranslation,简称“NAT”)的,如果GRE隧道建立过程中间经过NAT设备进行了网络地址转换,此时需要支持GRE场景下的NAT。传统的解决NAT问题的技术比较复杂。对于NAT场景采取的措施一般都是在GRE隧道的建立过程中强制认为经过了NAT,并对该NAT带来的问题进行处理。例如在建立的GRE隧道上发送数据报文时在数据报文中添加用户数据报协议(UserDatagram Protocol,简称“UDP”)报文头,无形中增加了链路带宽和损耗。
发明内容
有鉴于此,本发明实施例提供了一种建立通用路由封装GRE隧道的方法和设备,以解决GRE隧道建立过程中强制认为经过NAT而在后续发送数据报文时强制添加UDP报文头所带来的链路带宽和损耗负担较高的问题。
第一方面,提供了一种建立通用路由封装GRE隧道的方法,其特征在于,所述方法包括:
家庭网关HG向混合链路聚合节点HAAP发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的广域网WAN的互联网协议IP地址;
所述HG接收所述HAAP发送的GRE隧道建立响应报文,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
所述HG根据所述GRE隧道建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT。
因此,本申请所述的方法,HAAP通过在向HG发送的控制消息报文的扩展字段添加IP地址信息,使得HG可以利用控制报文进行IP地址比对来探测建立GRE隧道过程中是否经过了NAT,从而避免了强制认为经过NAT而在后续向HAAP发送的所有数据报文中都添加UDP报文头所带来的不必要的网络开销。
可选地,所述GRE隧道所在的接入网络类型包括固定接入网络和移动接入网络。其中,固定接入网络例如数字用户线路DSL接入网络,移动接入网路例如为3G或长期演进LTE网络。
另外,所述HG和所述HAAP之间可以建立至少两条GRE隧道。该至少两条GRE隧道所在的接入网络类型可以互不相同,也可以部分相同。
可选地,所述GRE隧道建立请求报文的格式和所述GRE隧道建立响应报文的格式如图4所示。所述GRE隧道建立请求报文和所述GRE隧道建立响应报文中包括属性字段。所述WAN的IP地址可以位于所述GRE隧道建立请求报文的属性字段。所述GRE隧道的源IP地址可以位于所述GRE隧道建立响应报文的属性字段。
其中,当所述HG请求建立基于LTE网络的GRE隧道(简称为LTE隧道)时,该GRE隧道建立请求报文中的第一IP地址包括LTE网络的WAN口的IP地址,当所述HG请求建立基于DSL网络的GRE隧道(简称为DSL隧道)时,该GRE隧道建立请求报文中的第二IP地址包括DSL网络的WAN口的IP地址。
作为另一个实施例,所述HG根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了所述NAT,包括:
如果所述第一IP地址和所述第二IP地址不同,所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT。
可选地,如果所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HG通过所述GRE隧道向所述HAAP发送第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述GRE隧道在所述HG上的隧道端口的IP地址。
可选地,所述第一UDP头还包括GRE隧道的端口号,所述第一端口号可以被所述HAAP用来识别所述第一数据报文所属的HG。因为不同的HG,对于HAAP来说,所述第一源IP地址可能相同。
可选地,如果所述HG确定向所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HG通过所述GRE隧道接收所述HAAP发送的第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
可选地,如果所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT,所述方法还包括:
所述HG通过所述GRE隧道向所述HAAP发送第一数据报文,和/或
通过所述GRE隧道接收所述HAAP发送的数据报文。
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
因此,如果HG通过判断确定在GRE隧道的建立过程中,在HG和HAAP之间的GRE隧道的建立过程中没有经过NAT,那么在建立好的该GRE隧道上进行数据报文传输时,就可以不在数据报文中添加UDP头,从而避免了不必要的网络开销。
第二方面,提供了一种建立通用路由封装GRE隧道的方法,其特征在于,所述方法包括:
混合链路聚合节点HAAP接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的广域网WAN的互联网协议IP地址;
所述HAAP向所述HG发送GRE隧道建立响应报文,以便于所述HG根据所述GRE隧道建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
所述HAAP根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT。
因此,本申请所述的方法,HG通过在向HAAP发送的控制消息报文的扩展字段添加IP地址信息,使得HAAP可以利用控制报文进行IP地址比对来探测建立GRE隧道过程中是否经过了NAT,从而避免了强制认为经过NAT而在后续向HG发送的所有数据报文中都添加UDP报文头所带来的不必要的网络开销。
可选地,所述GRE隧道所在的接入网络类型包括固定接入网络和移动接入网络。其中,固定接入网络例如数字用户线路DSL接入网络,移动接入网路例如为3G或长期演进LTE网络。
另外,所述HG和所述HAAP之间可以建立至少两条GRE隧道。该至少两条GRE隧道所在的接入网络类型可以互不相同,也可以部分相同。
可选地,所述GRE隧道建立请求报文的格式和所述GRE隧道建立响应报文的格式如图4所示。所述GRE隧道建立请求报文和所述GRE隧道建立响应报文中包括属性字段。所述WAN的IP地址可以位于所述GRE隧道建立请求报文的属性字段。所述GRE隧道的源IP地址可以位于所述GRE隧道建立响应报文的属性字段。
其中,当所述HG请求建立基于LTE网络的GRE隧道(简称为LTE隧道)时,该GRE隧道建立请求报文中的第一IP地址包括LTE网络的WAN口的IP地址。当所述HG请求建立基于DSL网络的GRE隧道(简称为DSL隧道)时,该GRE隧道建立请求报文中的第二IP地址包括DSL网络的WAN口的IP地址。
作为另一个实施例,所述HAAP根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT,包括:
如果所述第一IP地址和所述第二IP地址不同,所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT。
可选地,如果所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HAAP通过所述GRE隧道接收所述HG发送的第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述HAAP接收到的GRE隧道建立请求报文中的源IP地址。
可选地,所述第一UDP头还包括GRE隧道的端口号,所述第一端口号可以被所述HAAP用来识别所述第一数据报文所属的HG。因为不同的HG,对于HAAP来说,所述第一源IP地址可能相同。
可选地,如果所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HAAP通过所述GRE隧道向所述HG发送第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
可选地,如果所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT,所述方法还包括:
所述HAAP通过所述GRE隧道向所述HG发送第一数据报文,和/或
所述HAAP通过所述GRE隧道接收所述HG发送的第二数据报文,
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
因此,如果HAAP通过判断确定在GRE隧道的建立过程中,HG和HAAP之间没有经过NAT,那么在建立好的该GRE隧道上进行数据报文传输时,就可以不在数据报文中添加UDP头,从而避免了不必要的网络开销。
第三方面,提供了一种家庭网关,用于执行上述第一方面或第一方面的任意可能的实现方式中的方法。具体地,该家庭网关包括:
发送模块,用于向混合链路聚合节点HAAP发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的广域网WAN的互联网协议IP地址;
接收模块,用于接收所述HAAP发送的GRE隧道建立响应报文,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
确定模块,用于根据所述接收模块接收的所述GRE隧道建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT。
第四方面,提供了一种混合链路聚合节点,用于执行上述第二方面或第二方面的任意可能的实现方式中的方法。具体地,该混合链路聚合节点包括:
接收模块,用于接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的广域网WAN的互联网协议IP地址;
发送模块,用于向所述HG发送GRE隧道建立响应报文,以便于所述HG根据所述GRE隧道建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
确定模块,用于根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址。
第五方面,提供了一种家庭网关,包括处理器、存储器、总线系统、接收器和发送器,所述发送器和所述接收器分别用于在通信的过程中发送和接收信息,所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,并且对该存储器中存储的指令的执行使得该处理器执行第一方面或第一方面的任一方面的可能实现方式中的方法。具体地,所述发送器具体用于:
向混合链路聚合节点HAAP发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的广域网WAN的互联网协议IP地址;
所述接收器,用于接收所述HAAP发送的GRE建立响应报文,所述GRE建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
所述处理器,用于根据所述接收器接收的所述GRE建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT。
第六方面,提供了一种混合链路聚合节点,包括处理器、存储器、总线系统、接收器和发送器,所述发送器和所述接收器分别用于在通信的过程中发送和接收信息,所述存储器用于存储指令,所述处理器用于执行所述存储器存储的指令,并且对该存储器中存储的指令的执行使得该处理器执行第二方面或第二方面的任一方面的可能实现方式中的方法。具体地,所述接收器具体用于:
接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为所述HG的广域网WAN的互联网协议IP地址;
所述发送器,用于向所述HG发送GRE隧道建立响应报文,以便于所述HG根据所述GRE隧道建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
所述处理器,用于根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT。
第七方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第八方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的指令。
基于上述技术方案,本发明实施例的建立通用路由封装GRE隧道的方法,解决了GRE隧道建立过程中强制认为经过NAT而在数据报文中强制添加UDP报文头所带来的链路带宽和损耗负担较高的问题。通过在控制消息报文的扩展字段添加IP地址信息,并利用控制报文进行IP地址比对来探测建立GRE隧道过程中是否经过了NAT,从而避免了强制认为经过NAT而在后续发送或接收的所有数据报文中都添加UDP报文头所带来的不必要的网络开销。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种应用场景的示意图。
图2是本发明实施例的建立GRE隧道的示意图。
图3是本发明实施例的建立GRE隧道的流程交互图。
图4是本发明实施例的GRE探测报文格式的示意图。
图5是本发明实施例的经过NAT时GRE探测报文变化的示意图。
图6是本发明实施例的GRE数据报文格式的示意图。
图7是本发明实施例的经过NAT时GRE数据报文变化的示意图。
图8是本发明一个实施例的家庭网关的结构框图。
图9是本发明一个实施例的混合链路聚合节点的结构框图。
图10是本发明一个实施例的家庭网关的结构框图。
图11是本发明一个实施例的混合链路聚合节点的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
为了便于理解和描述本发明实施例提出的方法,首先结合图1描述本发明实施例提出的建立GRE隧道的方法的应用场景。
图1所示为本发明实施例的应用场景的示意图。图1中示出了家庭网关(HomeGateway,简称为“HG”)10、混合链路聚合节点(Hybrid Access Aggregation Point,简称为“HAAP”)20、宽带远程接入服务器(Broadband Remote Access Server,简称“BRAS”)30、NAT设备40、演进的分组核心网(Evolved Packet Core,简称“EPC”)40和NAT设备60。如图1所示,用户侧的家庭网关10可以与网络侧的混合链路聚合节点20分别创建基于DSL接入网络的GRE隧道(记为DSL隧道)和基于LTE接入网络的GRE隧道(记为LTE隧道)。其中,NAT设备40指的是DSL接入网络中的地址转换设备,即DSL隧道中的网络地址转换设备。NAT设备60指的是LTE网络中的地址转换设备,即LTE隧道中的网络地址转换设备。如果在DSL隧道或者LTE隧道的建立过程中经过了网络地址转换,那么HG 10和HAAP 20之间在建立好的该DSL隧道或者LTE隧道上传输数据报文时,需要在该数据报文中添加UDP报文头(简称为UDP头)。
图2是本发明实施例的建立GRE隧道的示意图。图2中示出了HG 10、HAAP 20、BRAS30、NAT设备40、EPC 50、NAT设备60、个人电脑(Personal Computer,简称“PC”)70、和网络(Internet)80。具体地,PC 70和HG 10之间通过PC 70的网口A1与HG 10的局域网(LocalArea Network,简称“LAN”)接口A2进行连接。由于HG 10下一般会挂载多个终端设备,这个时候就需要先在HG 10内部进行一次网络地址转换,然后在HG 10中对DSL隧道和LTE隧道进行溢出绑定(overflow bonding)。
应理解,这里对DSL隧道和LTE隧道进行溢出绑定后,HG 10上的同一个业务的数据报文可以分别通过DSL隧道和LTE隧道传输到HAAP 20。假设DSL隧道的带宽为1G,LTE隧道的带宽为1G,这两个隧道绑定之后可为用户提供2G的接入网络带宽。例如HG 10通过该混合接入隧道向HAAP 20发送一个业务的数据报文。当DSL隧道的传输量超过该DSL隧道的带宽时,超出的传输量迁移到LTE隧道上进行传输。因此,相比于单独的每个隧道,DSL隧道和LTE隧道绑定之后形成的混合接入隧道能够为用户提高较大的接入网带宽,也能够提高报文传输的可靠性。
还应理解,GRE协议为一种封装协议。它提供了一种协议的报文封装在另一种协议报文中的机制,使得报文能够在异种网络中传输。具体地,GRE是对网络协议的数据报文进行封装,使这些被封装的数据报文能够在另一个网络层协议中传输。
如图2所示,HG 10中的T1是HAAP 20分配给HG 10的用户地址;D地址为HG 10上DSL接入网络的WAN口地址,由传统的宽带接入服务器(Broadband Access Server,简称“BAS”)进行分配,用于建立DSL隧道的源地址;E地址为HG 10上LTE接入网络的WAN口地址,由用户接入网关(User Access Gateway,简称“UGW”)进行分配,用于建立LTE隧道的源地址。
HAAP 20的T2为HG 10发起建立GRE隧道建立请求时使用的目的地址。在现网中,HG10可以通过HAAP池的域名向域名系统(Domain Name System,简称“DNS”)发起域名解析,以获取到HAAP池的该T2地址。HG 10通过向HAAP 20发送GRE隧道建立请求报文以请求建立GRE隧道。HAAP 20接收到HG 10发送的该GRE隧道建立请求报文之后,如果认证授权通过,则会向HG 10发送GRE隧道建立响应报文。该GRE隧道建立响应报文中携带HAAP 20的T3地址,该T3地址可以作为HG 10建立GRE隧道的目的地址、HG 10到HAAP 20上行流量转发的目的地址和HAAP 20到HG 10下行流量的源地址。
在HAAP 20中两条隧道之间再次经过溢出绑定后与Internet 80相连接。HG 10和HAAP 20之间的GRE隧道建立的过程完成。PC 70和Internet 80可以在建立的该GRE隧道上进行数据报文的传送。
在图1和图2所示的场景中,GRE隧道的建立过程中是不感知中间链路是否经过了网络地址转换的,即GRE隧道的建立过程中HG 10和HAAP 20是无法获知两者中间是否经过了NAT设备的。故现有技术中在GRE隧道的建立过程中都是强制认为进行了网络地址转换。从而每次都需要在后续进行数据报文传输时,对该数据报文添加UDP头。这样就无形中增加了报文长度,从而带来了不必要的链路带宽和损耗。
针对上述技术问题,本发明实施例提出一种建立通用路由封装GRE隧道的方法和设备,通过在GRE隧道的建立过程中探测是否进行了NAT,从而避免了强制认为经过NAT而在后续所有数据报文中强制添加UDP报文头所带来的不必要的网络开销。
还应理解,图1和图2仅为示例而非限定,GRE隧道所在的接入网络类型包括固定接入网络和移动接入网络。其中,固定接入网络例如数字用户线路DSL接入网络;移动接入网路例如为3G网络、LTE网络或其他移动接入网络。
还应理解,HG 10和HAAP 20之间可以建立至少两条GRE隧道,该至少两条GRE隧道所在的接入网络类型可以互不相同,也可以部分相同,本发明实施例对此不做限定。例如,该至少两条GRE隧道可以包括基于DSL接入网络的GRE隧道、基于LTE接入网络的GRE隧道和基于3G接入网络的GRE隧道。或者,该至少两条GRE隧道包括基于DSL接入网络的GRE隧道、基于LTE接入网络的GRE隧道以及基于DSL接入网络的GRE隧道。另外,本发明实施例中的GRE隧道可以是双向隧道。
还应理解,这里所说的在HG 10和HAAP 20之间的GRE隧道的建立过程中进行的网络地址转换,是指在该GRE隧道的建立过程中,对HG 10和HAAP 20之间相互传输的报文中的源IP地址进行的转换。确定在该GRE隧道的建立过程中是否进行了NAT,也就是确定该过程中传输的报文中携带的源IP地址是否进行了NAT。从而避免强制认为进行了NAT而在后续数据报文的传输中对数据报文强制添加UDP报文头而带来的网络开销。
图3是本发明实施例的建立GRE隧道的流程交互图。图3中包括家庭网关HG 10和混合链路聚合节点HAAP 20。如图3所示,该建立通用路由封装GRE隧道的具体过程如下:
301,HG 10向HAAP 20发送GRE隧道建立请求报文。
具体地,HG 10向HAAP 20发送GRE隧道建立请求报文,以请求建立GRE隧道。
其中,该GRE隧道建立请求报文包括第一IP地址,该第一IP地址为广域网WAN的互联网协议(Internet Protocol,简称“IP”)地址,该WAN的IP地址可以被HAAP 20用于确定HG10和HAAP 20之间在建立GRE隧道的过程中是否进行了网络地址转换NAT。当HG 10请求建立基于LTE网络的GRE隧道(即LTE隧道)时,该GRE隧道建立请求报文包括LTE WAN IP,当HG 10请求建立基于DSL网络的GRE隧道(即DSL隧道)时,该GRE隧道建立请求报文包括DSL WANIP。
另外,该GRE隧道建立请求报文还可以包括GRE隧道的源IP地址(Source IP,简称“SIP”)和目的IP地址(Destination IP,简称“DIP”)。在HG 10发送的GRE隧道建立请求报文中,该GRE隧道的源IP地址为所述GRE隧道在所述HG 10上的隧道端口的IP地址。该GRE隧道的目的IP地址为所述GRE隧道在所述HAAP 20上的隧道端口的IP地址。
举例来说,源IP地址为SIP=E,目的IP地址为DIP=T3。
可选地,该WAN的IP地址位于该GRE隧道建立请求报文的属性字段。该GRE隧道建立请求报文的格式如图4所示。
图4是本发明实施例的GRE探测报文格式的示意图。如图4所示,该GRE探测报文包括如下相关字段:
C:校验和验证位。如果该位置1,表示该GRE控制报文头插入了校验和(Checksum)字段;该位为0表示该GRE控制报文头不包含校验和字段。
K:关键字位。如果该位置为1,表示该GRE控制报文头插入了关键字(Key)字段;该位为0表示该GRE控制报文头不包含关键字字段。
循环(Recursion):用来表示GRE报文封装的层数。完成一次GRE控制报文封装后将该字段加1。如果封装层数大于3,则丢弃该报文。该字段的作用是防止报文被无限次的封装。设备实现时该字段仅在加封装报文时用作标记隧道嵌套层数,解封装报文时不感知该字段,不会影响报文的处理。
标识(Flags):预留字段。当前设为0。
版本(Version):GRE控制报文的协议版本号。当前设为0。
协议类型(Protocol Type):GRE控制报文的协议类型。
校验和(Checksum):对GRE控制报文头及其负载的校验和字段。GRE隧道两端可以根据需要选择是否配置校验和,从而决定是否处罚校验功能。因校验和配置不同,对收发报文的处理方式也不同。例如,当本端配置校验而对端没有配置校验时,本端对接收报文不检查校验和且对发送报文计算校验和;当本端没有配置校验而对端配置校验时,本端对接收报文检查校验和且对发送报文不计算校验和。
关键字(Key):关键字字段,GRE隧道接收端用于对收到的报文进行验证,“Key”字段由HAAP 20赋值,并告知给HG 10。通过识别Key对GRE隧道接口进行校验,采用这种弱安全机制,可以防止错误识别、接收其他地方来的报文。若GRE报文头中有K位置为1,则在GRE控制报文头插入关键字字段,收发双方将进行通道识别关键字的验证。只有GRE隧道两端设置的关键字完全一致时才能通过验证,否则将报文丢弃。这里的“完全一致”指的是两端都不设置识别关键字,或者两端都设置识别关键字且关键字的值相等。
属性(Atrribute):指示属性值对(Attribute Value Pairs,简称“AVP”)的属性。本发明实施例中就借用了该未使用的属性字段。
数据长度(Data Length):固定32位。
数据值(Data Value):封装GRE隧道的源IP地址。
应理解,GRE控制报文是用于GRE隧道的建立、绑定、拆除和OAM管理等操作的报文。GRE隧道建立请求报文和GRE隧道建立响应报文均属于GRE控制报文。
302,HAAP 20确定GRE隧道的建立过程中是否进行了网络地址转换NAT。
具体地,HAAP 20接收HG 10发送的GRE隧道建立请求报文。该GRE隧道建立请求报文包括WAN的IP地址。该WAN的IP地址可以包括LTE WAN IP或DSL WAN IP。
在HG 10和HAAP 20之间的该GRE隧道的建立过程中,如果经过了网络地址转换,该GRE隧道建立请求报文所请求建立的该GRE隧道的源IP地址就会发生改变。从而HAAP 20可以根据接收到的GRE隧道建立请求报文中携带的源IP地址和第一IP地址,确定HG 10和HAAP20之间在建立GRE隧道的过程中是否进行了网络地址转换。这里第一IP地址可以为WAN的IP地址。
应注意,该第一IP地址不会因为在该GRE隧道的建立过程中经过了网络地址转换而发生改变,该GRE隧道建立过程中的网络地址转换过程只是针对该GRE隧道建立请求报文中包括的源IP地址。其中,该第一IP地址可以被封装在图4所示的控制报文的属性字段,该源IP地址可以被封装在该控制报文的Data Value字段。
举例来说,在302中,HAAP 20可以获取接收到的GRE隧道建立请求报文中的源IP地址。假设HAAP 20接收到的GRE隧道建立请求报文中的源IP地址为SIP=X。
作为一种情况,如果在GRE隧道建立过程中经过了NAT,那么HAAP 20接收到的GRE隧道建立请求报文中的源IP地址与301中HG 10发送的GRE隧道建立请求报文中的源IP地址就不一样,即X≠E。可见,如果HAAP 20接收到的GRE隧道建立请求报文中的源IP地址和HG10的WAN的IP地址不同,则HAAP 10确定HG 10和HAAP 20之间经过了NAT。
作为另一种情况,如果在GRE隧道建立过程中没有经过NAT,那么HAAP 20接收到的GRE隧道建立请求报文中的源IP地址与301中HG 10发送的GRE隧道建立请求报文中的源IP地址就是一样的,即X=E。可见,如果HAAP 20接收到的GRE隧道建立请求报文中的源IP地址和HG 10的WAN的IP地址相同,则HAAP 10确定HG 10和HAAP 20之间没有经过NAT。
下面结合图5具体描述GRE隧道建立过程中经过NAT时GRE探测报文的变化。图5是本发明实施例的经过NAT时GRE探测报文变化的示意图。如图5所示,该GRE隧道建立请求报文中包括用于建立GRE隧道的源端口号(Source Port,简称“SP”)、目的端口号(Destination Port,简称“DP”)、SIP和DIP地址。例如,以建立LTE隧道为例进行说明,在GRE隧道建立请求报文中:DIP=T3,SIP=E,SP=50000,DP=50000。此时,SIP等于LTE接入网络的WAN口的IP地址(即E地址)。
当HG 10给HAAP 20发送GRE隧道建立请求报文后,如果HG 10和HAAP 20之间经过了NAT,那么HAAP 20接收到的GRE隧道建立请求报文中:DIP=T3,SIP=NAT-IP,SP=XXXX,DP=50000。可以看出,该GRE控制报文中的SIP就由SIP=E变为SIP=NAT-IP。其中,NAT-IP表示经过网络地址转换后的GRE隧道的源IP地址。由于该GRE隧道建立请求报文中还携带了WAN口的地址(即E地址)的信息,这时HAAP 20就可以通过比较NAT-IP和WAN口的地址,来确定HG 10和HAAP 20之间是否经过了NAT。
具体来说,如果HG 10向HAAP 20发送GRE隧道建立请求报文请求建立DSL隧道,则GRE隧道建立请求报文中包括DSL接入网络的WAN口的IP地址(也就是D地址)。这时,GRE隧道建立请求报文中请求建立的DSL隧道的源IP地址和该DSL接入网络的WAN口的IP地址相同。如果在建立GRE隧道的过程中经过了NAT设备40,则经过网络地址转换后,该GRE隧道建立请求报文中请求建立的DSL隧道的源IP地址就会发生变化,就和DSL接入网络的WAN口的IP地址不相同了。HAAP 20接收到的GRE隧道建立请求报文后,通过比较该报文中的源IP地址和该WAN口的IP地址,就可以判断HG 10和HAAP 20之间在进行DSL隧道建立过程中,是否进行了网络地址转换。
同样,如果HG 10请求建立的是LTE隧道,GRE隧道建立请求报文中包括LTE接入网络的WAN口的IP地址(也就是E地址)。这时,GRE隧道建立请求报文中请求建立的LTE隧道的源IP地址和该LTE接入网络的WAN口的IP地址相同。如果在建立GRE隧道的过程中经过了NAT设备60,则经过网络地址转换后,该GRE隧道建立请求报文中请求建立的LTE隧道的源IP地址就会发生变化,就和LTE接入网络的WAN口的IP地址不相同了。HAAP 20接收到GRE隧道建立请求报文后,通过比较报文中的源IP地址和该WAN的IP地址,就可以判断HG 10和HAAP 20之间在进行LTE隧道建立过程中,是否进行了网络地址转换。
也就是说,如果在GRE隧道建立过程中经过了NAT,那么GRE隧道的源IP地址就会发生变化。HG 10向HAAP 10发送GRE隧道建立请求报文中的GRE隧道的源IP地址,就与HAAP 20接收到的GRE隧道建立请求报文中的源IP地址不相同了。如果在GRE隧道建立过程中没有经过NAT,那么GRE隧道建立请求报文中携带的GRE隧道的源IP地址就不会发生变化。HG 10向HAAP 10发送的GRE隧道建立请求报文中的GRE隧道的源IP地址,就与HAAP 20接收到的GRE隧道建立请求报文中的源IP地址相同。
因此,HG 10通过在向HAAP 20发送的控制消息报文的扩展字段添加IP地址信息,使得HAAP 20可以利用控制报文进行IP地址比对来探测建立GRE隧道过程中是否经过了NAT,可以避免强制认为经过NAT而在后续向HAAP 20发送的所有数据报文中都添加UDP报文头所带来的不必要的网络开销。
303,HAAP 20向HG 10发送GRE隧道建立响应报文。
具体地,HAAP 20向HG 10发送GRE隧道建立响应报文,以响应接收到的GRE隧道建立请求报文,从而建立起HG 10所请求建立的GRE隧道。该GRE隧道可以包括LTE隧道或DSL隧道。
其中,该GRE隧道建立响应报文中包括第二IP地址,该第二IP地址为HAPP 20接收到的GRE隧道建立请求报文中的源IP地址。
另外,该GRE隧道建立响应报文还可以包括源IP地址和目的IP地址。举例来说,这时的源IP地址为SIP=T3,目的IP地址为DIP=NAT-IP。
可选地,该第二IP地址位于该GRE隧道建立响应报文的属性字段。该GRE隧道建立响应报文的格式可以参考如图4所示的GRE控制报文格式。
304,HG 10确定GRE隧道的建立过程中是否进行了网络地址转换NAT。
具体地,HG 10接收HAAP 20发送的GRE隧道建立响应报文,该GRE隧道建立响应报文中包括第二IP地址,即HAPP 20接收到的GRE隧道建立请求报文中的源IP地址。HG 10可以根据该第二IP地址和HG 10的WAN的IP地址,确定在HG 10和HAAP 20之间的该GRE隧道的建立过程中是否进行了NAT。
应注意,该第二IP地址不会因为在该GRE隧道的建立过程中经过了网络地址转换而发生变化,而该GRE隧道建立请求报文中包括的源IP地址在进行了网络地址转换后会发生改变。
举例来说,在304中,HG 10可以获取接收到的GRE隧道建立接收报文中的目的IP地址。假设HG 10接收到的GRE隧道建立接收报文中的目的IP地址为DIP=X。
作为一种情况,如果在GRE隧道建立过程中经过了NAT,那么HG 10接收到的GRE隧道建立响应报文中的目的IP地址就与HG 10的WAN的IP地址不一样,即X≠E。可见,如果HG10接收到的GRE隧道建立响应报文中的目的IP地址和HG 10的WAN的IP地址不同,则HAAP 10确定HG 10和HAAP 20之间经过了NAT。
作为另一种情况,如果在GRE隧道建立过程中没有经过NAT,那么HG 10接收到的GRE隧道建立响应报文中的目的IP地址与HG 10的WAN的IP地址是一样的,即X=E。可见,如果HG 10接收到的GRE隧道建立响应报文中的目的IP地址和HG 10的WAN的IP地址相同,则HAAP 10确定HG 10和HAAP 20之间没有经过NAT。
如图5所示,当HAAP 20向HG 10发送GRE隧道建立响应报文后,如果HAAP 20和HG10之间经过了NAT,那么在HAPP 20向HG 10发送的GRE建立响应报文中:DIP=NAT-IP,SIP=T3,SP=50000,DP=XXXX。这里由于经过了网络地址转换,HG 10向HAAP 20发送的GRE隧道请求报文中的GRE隧道的源IP地址经过网络地址转换后变为NAT-IP。其中,NAT-IP表示经过网络地址转换后的GRE隧道的源IP地址。相应地,HAAP 20发送的GRE隧道建立响应报文中的目的IP地址也就为NAT-IP。HG 10接收到的该GRE建立响应报文中:DIP=E,SIP=T3,SP=50000,DP=50000。由于该GRE隧道建立接收报文中还携带了GRE隧道建立请求报文中的经过NAT后的源IP地址(即NAT-IP),这时HG 10就可以通过比较NAT-IP和WAN口的地址(E),来确定HG 10和HAAP 20之间是否经过了NAT。
也就是说,如果在GRE隧道建立过程中经过了NAT,那么HG 10向HAAP 20发送的GRE隧道请求报文中的GRE隧道的源IP地址就会发生变化。HAAP 20向HG 10发送的GRE建立响应报文中的目的IP地址,就与HG 10接收到的GRE建立响应报文中的GRE隧道的目的IP地址不相同了。
如果在GRE隧道建立过程中没有经过NAT,那么GRE建立响应报文中的目的IP地址就为HAAP 20接收到的GRE隧道请求报文中的GRE隧道的源IP地址。HAAP 20向HG 10发送的GRE建立响应报文中的目的IP地址,就与HG 10接收到的GRE建立响应报文中的GRE隧道的目的IP地址相同了。
因此,HAAP 20通过在向HG 10发送的控制消息报文的扩展字段添加IP地址信息,使得HG 10可以利用控制报文进行IP地址比对来探测建立GRE隧道过程中是否经过了NAT,可以避免强制认为经过NAT而在后续向HAAP 20发送的所有数据报文中都添加UDP报文头所带来的不必要的网络开销。
应理解,HAAP 20下挂的HG中,可能部分经过NAT,部分未经过NAT。也可能都不经过NAT或者都经过NAT。另外,HG 10可能在DSL隧道的建立过程中经过NAT,或者在LTE隧道的建立过程中经过NAT。也可能在DSL隧道和LTE隧道中都经过NAT或者都不经过NAT。
305,GRE隧道建立完成。
HG 10接收HAAP 20发送的GRE隧道建立接收报文后,根据该GRE隧道建立接收报文,HG 10和HAAP 20之间完成GRE隧道的建立。
应理解,HG 10和HAAP 20可以先确定在HG 10和HAAP 20之间的GRE隧道的建立过程中是否进行了NAT,之后HG 10根据GRE隧道建立响应报文建立HG 10和HAAP 20之间的该GRE隧道,即HAAP 20先执行302后执行303,HG 10先执行304后执行305。这时,如果确定了HG10和HAAP 20之间在建立GRE隧道的过程中进行了NAT,那么就表示HG 10和HAAP 20之间的该GRE隧道是经过NAT的。如果确定了HG 10和HAAP 20之间在建立GRE隧道的过程中没有进行NAT,那么也就表示HG 10和HAAP 20之间的该GRE隧道是不经过NAT的。
此外,HG 10还可以先根据GRE隧道建立响应报文建立HG 10和HAAP 20之间的该GRE隧道,之后HG 10和HAAP 20确定HG 10和HAAP 20之间的该GRE隧道是否经过了NAT,即HAAP 20先执行303后执行302,HG 10先执行305后执行304。
可选地,如图3所示,在GRE隧道建立完成之后,HG 10和HAPP 20之间可以相互发送数据报文,即执行306或307。
306,HG 10向HAAP 20发送数据报文。
具体地,如果HG 10确定HG 10和HAAP 20之间经过了该NAT,则当HG 10在建立好的GRE隧道上向HAAP 20发送数据报文时,该数据报文中需要包括用户数据协议UDP头。该UDP头可以包括GRE隧道的端口号(port)和GRE隧道的IP地址,GRE隧道的端口号和IP地址可以被HAAP 20用来识别该数据报文所属的HG。因为不同的HG,对于HAAP 20来说,GRE隧道的源IP可能相同。其中,该IP地址包括源IP地址和目的IP地址。GRE隧道的源IP地址为该GRE隧道在HG 10上的隧道端口的IP地址。GRE隧道的目的IP地址为该GRE隧道在HAAP 20上的隧道端口的IP地址
307,HAAP 20向HG 10发送数据报文。
具体地,如果HAAP 20确定HG 10和HAAP 20之间经过了该NAT,则当HAAP 20在建立好的GRE隧道上向HG 10发送数据报文时,该数据报文中同样需要添加UDP头,该UDP头可以包括该GRE隧道的端口号和GRE隧道的IP地址。其中,该IP地址包括源IP地址和目的IP地址。GRE隧道的源IP地址为该GRE隧道在HAAP 20上的隧道端口的IP地址。GRE隧道的目的IP地址为301中HAAP 20接收到的GRE隧道建立请求报文中的源IP地址。
图6是本发明实施例的GRE数据报文格式的示意图。如果NAT探测的结果为没有经过NAT,则后续GRE数据报文可以不添加UDP头。如果NAT探测的结果是经过NAT,在封装数据报文时,可以增加UDP头,该UDP头的封装方式可以和控制报文一致。例如,该数据报文可以包括:
源端口号(Source Port,简称“SP”):默认50000,支持通过配置修改。
目的端口号(Dest Port,简称“DP”):默认50000,支持通过配置修改。
负载(payload)字段:承载源IP地址和目的IP地址。
校验和(checksum):这里设置为0,表示不进行校验。
此外,UDP报文头中的其他字段和图4中的GRE隧道建立请求报文格式中的相关字段相同,具体可以参照对图4的描述。为了简洁,这里不再赘述。
现在结合图7具体描述HG 10和HAAP 20之间GRE数据报文传输的示意图。图7是本发明实施例的经过NAT时GRE数据报文格式的示意图。如图7所示,以在DSL隧道上进行数据报文传输为例进行说明。当PC 30需要向Internet 80发送数据报文时,在PC 30中数据报文的Payload字段包括DIP和SIP,其中,DIP=Internet,SIP=PC。
如果GRE隧道建立过程中经过了网络地址转换,当HG 10向HAAP 20发送数据报文时,数据报文中除了Payload部分外,还需要为数据报文添加UDP头。此时,HG 10中,数据报文的Payload字段包括SIP=T1,DIP=Internet;数据报文的UDP头部分包括GRE隧道的端口号和GRE隧道的IP地址。HAAP 20可以根据该端口号和该IP地址确定该数据报文所属的HG。
例如,在HG 10向HAAP 20发送的数据报文中:DIP=T3,SIP=D,SP=50000,DP=50000。其中,D为WAN口的IP地址,T3为建立GRE隧道使用的目的地址。由于经过了NAT,在HAAP 20接收到的HG 10发送的包括UDP头的该数据报文中:DIP=T3,SIP=NAT-IP,SP=XXXX,DP=50000。可以看出,该GRE控制报文中的SIP由SIP=E变为SIP=NAT-IP。其中,NAT-IP表示经过网络地址转换后的源IP地址。Internet 80接收到的数据报文中:DIP=Internet,SIP=T1。
当Internet 80需要向PC 30发送数据报文时,数据报文的Payload字段中包括DIP=Internet,SIP=T1。如果HG 10和HAAP 20之间经过了网络地址转换,那么HAAP 20向HG10发送数据报文时,该数据报文中除了Payload部分外,也需要添加UDP头。此时,HAAP 20向HG 10发送的数据报文中Payload字段包括DIP=T1,SIP=Internet;数据报文中的该UDP头包括GRE隧道的端口号和GRE隧道的IP地址。其中,该GRE隧道的IP地址包括目的IP地址和源IP地址。该GRE隧道的目的IP地址等于HAAP 20接收到的GRE隧道建立请求报文中的源IP地址。该GRE隧道的源IP地址为该GRE隧道在HAAP 20上的隧道端口的IP地址。
例如,在HAAP 20向HG 10发送的数据报文中:DIP=NAT-IP,SIP=T3,SP=50000,DP=XXXX。由于经过了NAT,在HG 10接收到的HAAP 20发送的包括UDP头的该数据报文中:DIP=D,SIP=T3,SP=50000,DP=50000。可以看出,该GRE控制报文中的DIP由DIP=NAT-IP变为SIP=D。PC 30接收到的数据报中文DIP=T1,SIP=Internet。
因此,本发明实施例所述的建立GRE隧道的方法,通过增加控制消息报文来探测建立GRE隧道过程中是否经过了NAT,并且只针对经过NAT时在数据报文转发过程中对数据报文进行处理,从而降低了链路带宽和损耗。
由于在GRE隧道建立过程中只在确定HG 10和HAPP 20之间经过NAT时才对数据报文添加UDP头,避免了对所有数据报文都添加UDP头带来的不必要的网络开销。
应理解,本发明实施例中的HG 10和HAAP 20同时也可以支持强制NAT,即不经过探测而强制认为网络中存在NAT,在无论网络中是否经过NAT时都对数据报文添加UDP头,本发明对此不做限定。
还应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上文中结合图3至图7,详细描述了根据本发明实施例的建立GRE隧道的方法,下面将结合图8和图9,详细描述根据本发明实施例的家庭网关10和混合链路聚合节点服务器20。
图8是本发明一个实施例的家庭网关10的结构框图。图8所示的HG 10能够用于执行前述图3的方法实施例中由HG 10所实现的各个过程。如图8所示,该家庭网关10包括发送模块801、接收模块802和确定模块803。
发送模块801,用于向混合链路聚合节点HAAP 20发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为HG 10的广域网WAN的互联网协议IP地址;
接收模块802,用于接收HAAP 20发送的GRE隧道建立响应报文,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为HAAP 20接收到的所述GRE隧道建立请求报文中的源IP地址;
确定模块803,用于根据接收模块802接收的所述GRE建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定HG 10和HAAP 20之间的所述GRE隧道是否进行了网络地址转换NAT。
因此,本发明实施例所述的家庭网关10,通过接收混合链路聚合节点20发送的扩展字段携带IP地址信息的探测报文,从而利用控制报文进行IP地址比对来实现探测GRE网络中是否存在NAT设备,并且只针对经过NAT时在数据报文转发过程中对数据报文添加UDP头,避免了对所有数据报文都强制添加UDP头带来的不必要的网络开销。
可选地,作为另一个实施例,确定模块803具体用于:
如果所述第一IP地址和所述第二IP地址不同,确定HG 10和HAAP 20之间的所述GRE隧道进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,确定HG 10和HAAP 20之间的所述GRE隧道没有进行所述NAT。
可选地,作为另一个实施例,如果确定模块803确定HG 10和HAAP 20之间的所述GRE隧道进行了所述NAT,发送模块801还用于:
通过所述GRE隧道向HAAP 20发送第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述GRE隧道在HG10上的隧道端口的IP地址。
可选地,作为另一个实施例,如果确定模块803确定HG 10和HAAP 20之间的所述GRE隧道进行了所述NAT,接收模块802还用于:
通过所述GRE隧道接收HAAP 20发送的第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在HAAP 20上的隧道端口的IP地址。
可选地,作为另一个实施例,如果确定模块803确定HG 10和HAAP 20之间的所述GRE隧道没有进行所述NAT,发送模块801还用于:
通过所述GRE隧道向HAAP 20发送第一数据报文;
其中,接收模块802还用于:
通过所述GRE隧道接收HAAP 20发送的第二数据报文;
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
可选地,作为另一个实施例,所述第一IP地址位于所述GRE隧道建立请求报文的属性字段,所述第二IP地址位于所述GRE隧道建立响应报文的属性字段。
图9是本发明一个实施例的混合链路聚合节点20的结构框图。图9所示的HAAP 20能够用于执行前述图3的方法实施例中由HAAP 20所实现的各个过程。
如图9所示,该混合链路聚合节点20包括接收模块901、发送模块902和确定模块903。
接收模块901,用于接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为HG 10的广域网WAN的互联网协议IP地址;
发送模块902,用于向所述HG发送GRE建立响应报文,以便于所述HG根据所述GRE建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
确定模块903,用于根据所述第一IP地址和所述第二IP地址,确定所述HG和所述HAAP之间的所述GRE隧道是否进行了网络地址转换NAT。
因此,本发明实施例所述的混合链路聚合节点20,通过接收家庭网关10发送的扩展字段携带IP地址信息的探测报文,从而利用控制报文进行IP地址比对来实现探测GRE网络中是否存在NAT设备,并且只针对经过NAT时在数据报文转发过程中对数据报文添加UDP头,避免了对所有数据报文都强制添加UDP头带来的不必要的网络开销。
可选地,作为另一个实施例,确定模块903具体用于:
如果所述第一IP地址和所述第二IP地址不同,确定HG 10和所述HAAP之间的所述GRE隧道进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,确定HG 10和所述HAAP之间的所述GRE隧道没有进行所述NAT。
可选地,作为另一个实施例,如果确定模块903确定HG 10和HAAP 20之间的所述GRE隧道进行了所述NAT,接收模块901还用于:
通过所述GRE隧道接收HG 10发送的第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述HAAP接收到的GRE隧道建立请求报文中的源IP地址。
可选地,作为另一个实施例,如果确定模块903确定HG 10和HAAP 20之间的所述GRE隧道进行了所述NAT,发送模块902还用于:
通过所述GRE隧道向HG 10发送第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
可选地,作为另一个实施例,如果所述确定模块903确定HG 10和HAAP 20之间的所述GRE隧道没有进行所述NAT,发送模块902还用于:
通过所述GRE隧道向HG 10发送第一数据报文;
其中,接收模块901还用于:
通过所述GRE隧道接收HG 10发送的第二数据报文;
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
可选地,作为另一个实施例,其特征在于,所述第一IP地址位于所述GRE隧道建立请求报文的属性字段,所述第二IP地址位于所述GRE隧道建立响应报文的属性字段。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
如图10所示,本发明实施例还提供了一种家庭网关10,该家庭网关10包括处理器1001、存储器1002、总线系统1003、接收器1004和发送器1005。其中,处理器1001、存储器1002和接收器1004通过总线系统1003相连,存储器1002用于存储指令,处理器1001用于执行存储器1002存储的指令,并控制接收器1004接收信息。其中处理器1001、存储器1002、总线系统1003、接收器1004和发送器1005可以通过一个或多个芯片实现。例如,处理器1001、存储器1002、总线系统1003、接收器1004和发送器1005可以完全集成在一个芯片中,或者处理器1001、总线系统1003、接收器1004和发送器1005可以集成在一个芯片中而存储器1002集成在另一个芯片中,具体形式此处不做限定。其中,发送器1005用于:
向混合链路聚合节点HAAP 20发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为HG 10的广域网WAN的互联网协议IP地址;
接收器1004用于:接收HAAP 20发送的GRE隧道建立响应报文,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为HAAP 20接收到的所述GRE隧道建立请求报文中的源IP地址;
处理器1001用于:根据所述接收器1004接收的所述GRE建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定HG 10和HAAP 20之间的所述GRE隧道是否进行了网络地址转换NAT。
如图11所示,本发明实施例还提供了一种混合链路聚合节点20,该混合链路聚合节点20包括处理器1101、存储器1102、总线系统1103、接收器1104和发送器1105。其中,处理器1101、存储器1102和接收器1104通过总线系统1103相连,存储器1102用于存储指令,处理器1101用于执行存储器1102存储的指令,并控制接收器1104接收信息。其中处理器1101、存储器1102、总线系统1103、接收器1104和发送器1105可以通过一个或多个芯片实现。例如,处理器1101、存储器1102、总线系统1103、接收器1104和发送器1105可以完全集成在一个芯片中,或者处理器1101、总线系统1103、接收器1104和发送器1105可以集成在一个芯片中而存储器1102集成在另一个芯片中,具体形式此处不做限定。其中,接收器1104用于:
接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一IP地址,所述第一IP地址为HG 10的广域网WAN的互联网协议IP地址;
发送器1105,用于向所述HG发送GRE隧道建立响应报文,以便于所述HG根据所述GRE隧道建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
处理器1101,用于根据所述第一IP地址和第二IP地址,确定所述HG和所述HAAP之间的所述GRE隧道是否进行了网络地址转换NAT。
应注意,本发明实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch Link DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DR RAM)。本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (16)

1.一种建立通用路由封装GRE隧道的方法,其特征在于,所述方法包括:
家庭网关HG向混合链路聚合节点HAAP发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一互联网协议IP地址,所述第一IP地址为所述HG的广域网WAN的IP地址;
所述HG接收所述HAAP发送的GRE建立响应报文,所述GRE建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
所述HG根据所述GRE隧道建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT;
如果所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HG通过所述GRE隧道向所述HAAP发送第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述GRE隧道在所述HG上的隧道端口的IP地址;
所述HG根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT,包括:
如果所述第一IP地址和所述第二IP地址不同,所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT。
2.如权利要求1所述的方法,其特征在于,如果所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HG通过所述GRE隧道接收所述HAAP发送的第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
3.如权利要求1所述的方法,其特征在于,如果所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT,所述方法还包括:
所述HG通过所述GRE隧道向所述HAAP发送第一数据报文,和/或
所述HG通过所述GRE隧道接收所述HAAP发送的第二数据报文,
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述第一IP地址位于所述GRE隧道建立请求报文的属性字段,所述第二IP地址位于所述GRE隧道建立响应报文的属性字段。
5.一种建立通用路由封装GRE隧道的方法,其特征在于,所述方法包括:
混合链路聚合节点HAAP接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一互联网协议IP地址,所述第一IP地址为所述HG的广域网WAN的IP地址;
所述HAAP向所述HG发送GRE隧道建立响应报文,以便于所述HG根据所述GRE隧道建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
所述HAAP根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT;
如果所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HAAP通过所述GRE隧道接收所述HG发送的第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述HAAP接收到的GRE隧道建立请求报文中的源IP地址;
所述HAAP根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT,包括:
如果所述第一IP地址和所述第二IP地址不同,所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT。
6.如权利要求5所述的方法,其特征在于,如果所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述方法还包括:
所述HAAP通过所述GRE隧道向所述HG发送第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
7.如权利要求5所述的方法,其特征在于,如果所述HAAP确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT,所述方法还包括:
所述HAAP通过所述GRE隧道接收所述HG发送的第一数据报文,和/或
所述HAAP通过所述GRE隧道向所述HG发送第二数据报文,
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
8.如权利要求5至7中任一项所述的方法,其特征在于,所述第一IP地址位于所述GRE隧道建立请求报文的属性字段,所述第二IP地址位于所述GRE隧道建立响应报文的属性字段。
9.一种家庭网关HG,其特征在于,所述家庭网关包括:
发送模块,用于向混合链路聚合节点HAAP发送通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一互联网协议IP地址,所述第一IP地址为所述HG的广域网WAN的IP地址;
接收模块,用于接收所述HAAP发送的GRE隧道建立响应报文,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
确定模块,用于根据所述接收模块接收的所述GRE隧道建立响应报文,建立所述HG和所述HAAP之间的所述GRE隧道,并根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT;
如果所述确定模块确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述发送模块还用于:
通过所述GRE隧道向所述HAAP发送第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述GRE隧道在所述HG上的隧道端口的IP地址;
所述确定模块具体用于:
如果所述第一IP地址和所述第二IP地址不同,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT。
10.如权利要求9所述的家庭网关,其特征在于,如果所述确定模块确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述接收模块还用于:
通过所述GRE隧道接收所述HAAP发送的第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
11.如权利要求9所述的家庭网关,其特征在于,如果所述HG确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT,所述发送模块还用于:
通过所述GRE隧道向所述HAAP发送第一数据报文;
其中,所述接收模块还用于:
通过所述GRE隧道接收所述HAAP发送的第二数据报文;
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
12.如权利要求9至11中任一项所述的家庭网关,其特征在于,所述第一IP地址位于所述GRE隧道建立请求报文的属性字段,所述第二IP地址位于所述GRE隧道建立响应报文的属性字段。
13.一种混合链路聚合节点HAAP,其特征在于,所述混合链路聚合节点包括:
接收模块,用于接收家庭网关HG发送的通用路由封装GRE隧道建立请求报文,所述GRE隧道建立请求报文包括第一互联网协议IP地址,所述第一IP地址为所述HG的广域网WAN的IP地址;
发送模块,用于向所述HG发送GRE隧道建立响应报文,以便于所述HG根据所述GRE隧道建立响应报文建立所述HG和所述HAAP之间的所述GRE隧道,所述GRE隧道建立响应报文包括第二IP地址,所述第二IP地址为所述HAAP接收到的所述GRE隧道建立请求报文中的源IP地址;
确定模块,用于根据所述第一IP地址和所述第二IP地址,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中是否进行了网络地址转换NAT;
如果所述确定模块确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述接收模块还用于:
通过所述GRE隧道接收所述HG发送的第一数据报文,所述第一数据报文包括第一用户数据协议UDP头,所述第一UDP头包括第一源IP地址,所述第一源IP地址为所述HAAP接收到的GRE隧道建立请求报文中的源IP地址;
所述确定模块具体用于:
如果所述第一IP地址和所述第二IP地址不同,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT;
如果所述第一IP地址和所述第二IP地址相同,确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT。
14.如权利要求13所述的混合链路聚合节点,其特征在于,如果所述确定模块确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中进行了所述NAT,所述发送模块还用于:
通过所述GRE隧道向所述HG发送第二数据报文,所述第二数据报文包括第二UDP头,所述第二UDP头包括第二源IP地址,所述第二源IP地址为所述GRE隧道在所述HAAP上的隧道端口的IP地址。
15.如权利要求13所述的混合链路聚合节点,其特征在于,如果所述确定模块确定在所述HG和所述HAAP之间的所述GRE隧道的建立过程中没有进行所述NAT,所述发送模块还用于:
通过所述GRE隧道向所述HG发送第一数据报文;
其中,所述接收模块还用于:
通过所述GRE隧道接收所述HG发送的第二数据报文;
其中,所述第一数据报文不包括UDP头,所述第二数据报文不包括UDP头。
16.如权利要求13至15中任一项所述的混合链路聚合节点,其特征在于,所述第一IP地址位于所述GRE隧道建立请求报文的属性字段,所述第二IP地址位于所述GRE隧道建立响应报文的属性字段。
CN201610186856.1A 2016-03-29 2016-03-29 建立gre隧道的方法和设备 Active CN105703999B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610186856.1A CN105703999B (zh) 2016-03-29 2016-03-29 建立gre隧道的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610186856.1A CN105703999B (zh) 2016-03-29 2016-03-29 建立gre隧道的方法和设备

Publications (2)

Publication Number Publication Date
CN105703999A CN105703999A (zh) 2016-06-22
CN105703999B true CN105703999B (zh) 2019-06-11

Family

ID=56231935

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610186856.1A Active CN105703999B (zh) 2016-03-29 2016-03-29 建立gre隧道的方法和设备

Country Status (1)

Country Link
CN (1) CN105703999B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108605221B (zh) * 2016-12-20 2020-09-11 华为技术有限公司 用户下线的方法、网络设备和系统
CN111740919B (zh) * 2017-01-20 2023-08-22 华为技术有限公司 一种报负载分担方法及网络设备
CN109218186B (zh) * 2017-07-05 2021-02-23 华为技术有限公司 一种多路径数据传输处理方法及网络设备
CN108390811B (zh) * 2018-03-28 2020-12-29 新华三技术有限公司 一种gre隧道建立方法及其设备
CN109152096B (zh) * 2018-09-27 2020-09-25 安科讯(福建)科技有限公司 Eps架构的报文传输方法及计算机可读存储介质
CN111371666B (zh) * 2018-12-26 2021-12-31 华为技术有限公司 一种处理报文的方法、设备及系统
CN110995766B (zh) * 2019-12-31 2021-09-14 联想(北京)有限公司 一种网络通信方法及采用网络通信方法的客户端与中心站点
CN113259497A (zh) * 2020-02-07 2021-08-13 华为技术有限公司 传输报文的方法、装置、存储介质和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119273A (zh) * 2007-09-10 2008-02-06 杭州华三通信技术有限公司 实现通用路由封装隧道穿越的方法及设备
CN102055733A (zh) * 2009-10-30 2011-05-11 华为技术有限公司 协商业务承载隧道的方法、设备及系统
CN103392316A (zh) * 2013-01-11 2013-11-13 华为技术有限公司 穿越防火墙的方法、客户端和媒体穿越服务器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9210735B2 (en) * 2010-07-02 2015-12-08 Futurewei Technologies, Inc. Network address translation six to four for proxy mobile internet protocol version six
WO2012072091A1 (en) * 2010-11-29 2012-06-07 Nec Europe Ltd. Method and apparatus for performing actions on packets at intermediate nodes in a connection between a communication device and a destination device in a target network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119273A (zh) * 2007-09-10 2008-02-06 杭州华三通信技术有限公司 实现通用路由封装隧道穿越的方法及设备
CN102055733A (zh) * 2009-10-30 2011-05-11 华为技术有限公司 协商业务承载隧道的方法、设备及系统
CN103392316A (zh) * 2013-01-11 2013-11-13 华为技术有限公司 穿越防火墙的方法、客户端和媒体穿越服务器

Also Published As

Publication number Publication date
CN105703999A (zh) 2016-06-22

Similar Documents

Publication Publication Date Title
CN105703999B (zh) 建立gre隧道的方法和设备
CN104639414B (zh) 一种报文转发方法和设备
CN107800602B (zh) 一种报文处理方法、设备及系统
CN106878138B (zh) 一种报文传输方法和装置
CN105337881B (zh) 一种数据报文的处理方法、业务节点以及引流点
CN106713100B (zh) 一种自动建立隧道的方法、cpe及汇聚设备
CN103716213B (zh) 在固定接入网中和在用户设备中运行的方法
CN103036784A (zh) 用于自组织二层企业网络架构的方法和装置
CN102291318B (zh) 一种最大传输单元协商的方法和路由器
CN107517151B (zh) 用户接入方法、CPE、OLT、交换机、vBNG、SDN控制器和城域网
US11824685B2 (en) Method for implementing GRE tunnel, access point and gateway
CN106992917A (zh) 报文转发方法和装置
CN110290093A (zh) Sd-wan网络架构及组网方法、报文转发方法
CN107800603B (zh) 内网用户基于vpn访问前端设备的方法和存储介质
CN105530193B (zh) 确定隧道最大传输单元的方法、网络设备和系统
CN111049752A (zh) 多传输线路的负载均衡方法及装置
CN104993993A (zh) 一种报文处理方法、设备和系统
JP2016508682A (ja) ドメインにまたがるvpnトラフィックのqosによる区別のための方法および配置構成
CN102984025B (zh) 网关设备虚拟隧道性能的测试方法、装置及系统
CN106789534B (zh) 一种基于无线网络的数据传输方法和装置
CN105391817A (zh) 基于sdp自检测nat穿越系统及方法
CN105610672B (zh) 一种信息传输的方法及装置
JP2021093723A (ja) マルチホップネットワークルーティング拡張
CN105635076A (zh) 一种媒体传输方法和设备
CN113709678A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20211222

Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province

Patentee after: xFusion Digital Technologies Co., Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right