CN113271252B - 通信建立方法、系统和计算机可读存储介质 - Google Patents
通信建立方法、系统和计算机可读存储介质 Download PDFInfo
- Publication number
- CN113271252B CN113271252B CN202010091901.1A CN202010091901A CN113271252B CN 113271252 B CN113271252 B CN 113271252B CN 202010091901 A CN202010091901 A CN 202010091901A CN 113271252 B CN113271252 B CN 113271252B
- Authority
- CN
- China
- Prior art keywords
- mptcp
- data packet
- address
- access gateway
- proxy node
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本公开提出一种通信建立方法、系统和计算机可读存储介质,涉及技术领域。本公开的一种通信建立方法包括:接入网关拦截来自终端的TCP数据包;接入网关根据TCP数据包生成MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址;MPTCP代理节点根据应用服务器的地址信息和MPTCP数据包生成TCP数据包,并发送给应用服务器。通过这样的方法,能够在终端与应用服务器的通信连接之间,通过接入网关和MPTCP代理节点实现MPTCP通信,从而无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围,也有助于提高互联网服务提供商对MPTCP管理。
Description
技术领域
本公开涉及计算机技术领域,特别是一种通信建立方法、系统和计算机可读存储介质。
背景技术
在固定与移动混合接入组网环境下,用户通过电脑或智能手机等终端设备访问互联网应用时,互联网流量只能同时在一个接入网络中传输,即在固定接入网络中传输,或者在移动接入网络中传输。而MPTCP(MultiPath TCP,多路传输控制协议)技术的出现改变了这一现状,它定义了一种在两个主机之间建立多链路连接的方式,使两个主机可以同时利用多链路/多网络进行通信。以手机为例,手机包含两种上网方式,蜂窝移动数据网络(如2G,3G,4G)和WiFi(Wireless-Fidelity,无线保真)网络。通过MPTCP技术,手机用户可以在有WiFi的时候尽量使用WiFi,从而节省成本,而在没有WiFi的时候能够自动切换到蜂窝移动网络,避免断连;也可以在高速下载时,应用同时从移动网络和WIFI网络传输数据到手机上,从而提升了总带宽。
MPTCP技术通过建立多个MPTCP子流来实现同时使用多条路径传输数据,MPTCP子流的建立类似于TCP(Transmission Control Protocol,传输控制协议)建立连接的过程。通过三次握手建立连接,四次挥手关闭连接。这些子流都绑定在一个已有的MPTCP会话上,发送端的数据可以根据需要选择任意的子流进行传输。
发明内容
本公开的一个目的在于扩展MPTCP技术的应用范围。
根据本公开的一些实施例的一个方面,提出一种通信建立方法,包括:接入网关拦截来自终端的TCP数据包;接入网关根据TCP数据包生成MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址;MPTCP代理节点根据应用服务器的地址信息和MPTCP数据包生成TCP数据包,并发送给应用服务器。
在一些实施例中,通信建立方法还包括:MPTCP代理节点接收来自应用服务器的TCP数据包;MPTCP代理节点根据TCP数据包生成MPTCP数据包,并发送给接入网关;接入网关根据MPTCP数据包生成TCP数据包,并转发给终端。
在一些实施例中,来自终端的TCP数据包的源地址为终端地址,目的地址为应用服务器的地址;接入网关生成的MPTCP数据包的源地址为接入网关地址,目的地址为MPTCP代理节点地址;和MPTCP代理节点发送给应用服务器的TCP数据包的源地址为MPTCP代理节点的地址,目的地址为应用服务器的地址。
在一些实施例中,来自应用服务器的TCP数据包的源地址为应用服务器的地址,目的地址为MPTCP代理节点的地址;MPTCP代理节点生成的MPTCP数据包的源地址为MPTCP代理节点地址,目的地址为接入网关地址;接入网关发送给终端的TCP数据包的源地址为应用服务器的地址,目的地址为终端的地址。
在一些实施例中,接入网关通过在MP_CAPABLE选项中插入应用服务器的IP地址将应用服务器的地址提供给MPTCP代理节点。
在一些实施例中,通信建立方法还包括:接入网关在收到来自终端的TCP数据包后,根据接入网关预定MPTCP策略确定是否建立MPTCP连接;在确定需要建立MPTCP连接的情况下,执行生成MPTCP数据包发送至MPTCP代理节点的操作;在确定不需要建立MPTCP连接的情况下,根据默认TCP数据包转发流程放行TCP数据包。
在一些实施例中,通信建立方法还包括:MPTCP代理节点在收到来自接入网关的MPTCP数据包后,根据代理节点预定MPTCP策略确定是否接受建立MPTCP连接;在确定建立MPTCP连接的情况下,执行生成TCP数据包并发送给应用服务器的操作;在确定不建立MPTCP连接的情况下,MPTCP代理节点向接入网关反馈连接建立失败消息,以便接入网关根据默认TCP数据包转发流程放行TCP数据包。
在一些实施例中,通信建立方法还包括:策略控制服务器向接入网关发送接入网关预定MPTCP策略;策略控制服务器向MPTCP代理节点发送MPTCP代理节点预定MPTCP策略。
在一些实施例中,接入网关配置有两个公网地址;接入网关采用第一公网地址建立与MPTCP代理节点执行MPTCP初始子流;接入网关采用第二公网地址向MPTCP代理节点发起建立MP_JOIN选项的MPTCP子流。
在一些实施例中,接入网关预定MPTCP策略包括:根据应用服务器地址确定是否建立MPTCP连接、根据MPTCP业务模式确定是否建立MPTCP连接、以及根据TCP数据包归属的应用对应的MPTCP代理服务器地址确定是否建立MPTCP连接中的一项或多项。
在一些实施例中,代理节点预定MPTCP策略包括:根据应用服务器IP地址及代理标志位是否与来自策略服务器的一致来确定是否建立MPTCP连接。
通过这样的方法,能够在终端与应用服务器的通信连接之间,通过接入网关和MPTCP代理节点实现MPTCP通信,从而无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围,也有助于提高互联网服务提供商对MPTCP管理。
根据本公开的一些实施例的一个方面,提出一种通信系统,包括:接入网关,被配置为拦截来自终端的TCP数据包,接入网关根据TCP数据包生成MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址;MPTCP代理节点,被配置为根据应用服务器的地址信息和MPTCP数据包生成TCP数据包,并发送给应用服务器。
在一些实施例中,MPTCP代理节点还被配置为接收来自应用服务器的TCP数据包,根据TCP数据包生成MPTCP数据包,并发送给接入网关;接入网关还被配置为根据MPTCP数据包生成TCP数据包,并转发给终端。
在一些实施例中,接入网关还被配置为:在收到来自终端的TCP数据包后,根据接入网关预定MPTCP策略确定是否建立MPTCP连接;在确定需要建立MPTCP连接的情况下,执行生成MPTCP数据包发送至MPTCP代理节点的操作;在确定不需要建立MPTCP连接的情况下,根据默认TCP数据包转发流程放行TCP数据包。
在一些实施例中,MPTCP代理节点还被配置为:在收到来自接入网关的MPTCP数据包后,根据代理节点预定MPTCP策略确定是否接受建立MPTCP连接;在确定建立MPTCP连接的情况下,执行生成TCP数据包并发送给应用服务器的操作;在确定不建立MPTCP连接的情况下,MPTCP代理节点向接入网关反馈连接建立失败消息,以便接入网关根据默认TCP数据包转发流程放行TCP数据包。
在一些实施例中,通信系统还包括:策略控制服务器,被配置为向接入网关发送接入网关预定MPTCP策略,向MPTCP代理节点发送MPTCP代理节点预定MPTCP策略。
根据本公开的一些实施例的一个方面,提出一种通信系统,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器的指令执行上文中任意一种通信建立方法。
这样的通信系统能够在终端与应用服务器的通信连接之间,通过接入网关和MPTCP代理节点实现MPTCP通信,从而无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围,也有助于提高互联网服务提供商对MPTCP管理。
根据本公开的一些实施例的一个方面,提出一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上文中任意一种通信建立方法的步骤。
通过执行这样的计算机可读存储介质上的指令,能够在终端与应用服务器的通信连接之间,通过接入网关和MPTCP代理节点实现MPTCP通信,从而无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围,也有助于提高互联网服务提供商对MPTCP管理。
附图说明
此处所说明的附图用来提供对本公开的进一步理解,构成本公开的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
图1为本公开的通信建立方法的一些实施例的流程图。
图2为本公开的通信建立方法的另一些实施例的流程图。
图3为本公开的通信建立方法中MP_CAPABLE选项数据包的一些实施例的示意图。
图4为本公开的通信建立方法的一些实施例的信令交互图。
图5为本公开的通信系统的一些实施例的示意图。
图6为本公开的通信系统的另一些实施例的示意图。
图7为本公开的通信系统的又一些实施例的示意图。
图8为本公开的通信系统的再一些实施例的示意图。
具体实施方式
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
由于MPTCP协议需要端对端的通信双方主机(如某种互联网应用的客户端和服务器)都支持MPTCP功能。而目前,windows很多系统版本不支持MPTCP协议,PC应用无法支持MPTCP商业部署。另外,很多网络运营商虽然部署有移动、WiFi、固定混合接入网络,但不能有效管理互联网服务提供商对MPTCP的商业部署和应用,无法体现运营商融合接入网络的价值。
本公开的通信建立方法的一些实施例的流程图如图1所示,包括步骤101~步骤103。
在步骤101中,接入网关拦截来自终端的TCP数据包,其中,该TCP数据包的源地址为终端地址,目的地址为应用服务器的地址。在一些实施例中,接入网关能够同时正常接入固定网络和移动网络,且接入网关需要配置有两个公网IP地址,从而实现对MPTCP功能的支持。接入网关LAN/WIFI侧的PC等终端设备能够访问互联网应用。
在步骤102中,接入网关根据TCP数据包生成MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址。接入网关生成的MPTCP数据包的源地址为接入网关地址,目的地址为MPTCP代理节点地址。在一些实施例中,接入网关可以通过在MP_CAPABLE选项中插入应用服务器的IP地址的方式,将应用服务器的地址提供给MPTCP代理节点。
在步骤103中,MPTCP代理节点根据应用服务器的地址信息和MPTCP数据包生成TCP数据包,并发送给应用服务器。MPTCP代理节点发送给应用服务器的TCP数据包的源地址为MPTCP代理节点的地址,目的地址为应用服务器的地址。在一些实施例中,MPTCP代理节点可以位于云端,实现接入网关MPTCP功能的代理。
通过这样的方法,能够在终端与应用服务器的通信连接之间,通过接入网关和MPTCP代理节点实现MPTCP通信,从而无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围,也有助于提高互联网服务提供商对MPTCP管理。
在一些实施例中,本公开的通信建立方法还可以包括步骤104~步骤106。
在步骤104中,MPTCP代理节点接收来自应用服务器的TCP数据包。来自应用服务器的TCP数据包的源地址为应用服务器的地址,目的地址为MPTCP代理节点的地址。
在步骤105中,MPTCP代理节点根据TCP数据包生成MPTCP数据包,并发送给接入网关。MPTCP代理节点生成的MPTCP数据包的源地址为MPTCP代理节点地址,目的地址为接入网关地址。
在步骤106中,接入网关根据MPTCP数据包生成TCP数据包,并转发给终端。接入网关发送给终端的TCP数据包的源地址为应用服务器的地址,目的地址为终端的地址。
通过这样的方法,MPTCP代理节点能够对来自应用服务器的TCP数据包进行转换,基于MPTCP实现下行链路的导通和数据的传输,无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围。
本公开的通信系统的另一些实施例的流程图如图2所示。
在步骤201中,接入网关接收来自终端的TCP数据包。在一些实施例中,接入网关能够监听并拦截LAN/WIFI侧发起的TCP请求。
在一些实施例中,可以先配置好接入网关,保证接入网关能够同时正常接入固定网络和移动网络,并被分配两个公网IP地址。在一些实施例中,固定网络可以是DSL、电口以太网或者光纤以太网接入;移动网络可以是3G、4G或者5G接入。配置好接入网关LAN/WIFI侧的PC等终端设备,使终端能够正常访问基于TCP协议的互联网应用。在一些实施例中,PC等终端设备的IP地址配置可以是动态分配方式,也可以是静态分配方式,但是需要与接入网关的配置保持一致。
在一些实施例中,可以由策略控制服务器下发MPTCP策略到接入网关和MPTCP代理节点,MPTCP策略可以包括是否允许某个接入网关或互联网应用开启MPTCP功能,某个应用的MPTCP功能的业务模式等。在一些实施例中,策略控制服务器向接入网关下发的为接入网关MPTCP预定策略;策略控制服务器向MPTCP代理节点下发的为代理节点预定MPTCP策略。
在一些实施例中,接入网关可以根据TCP数据包的目的地址判断是否进行数据包拦截,例如,建立MPTCP应用策略白名单,目的地址与白名单匹配成功数据包不被接入网关拦截,可以直接根据默认的TCP数据包转发流程放行TCP数据包。
在步骤202中,根据接入网关预定MPTCP策略确定是否建立MPTCP连接。在一些实施例中,接入网关预定MPTCP策略包括:根据应用服务器地址确定是否建立MPTCP连接、根据MPTCP业务模式(如流量聚合模式、可靠链路备份模式等)确定是否建立MPTCP连接、以及根据TCP数据包归属的应用对应的MPTCP代理服务器地址确定是否建立MPTCP连接等中的一项或多项。
在确定不需要建立MPTCP连接的情况下,执行步骤203;在确定需要建立MPTCP连接的情况下,执行步骤204。
在步骤203中,根据默认TCP数据包转发流程放行TCP数据包,执行基于TCP协议的数据传输。
在步骤204中,生成MPTCP数据包发送至MPTCP代理节点。
在一些实施例中,接入网关将SYN(Synchronize Sequence Numbers,同步序列编号)TCP数据包转换成SYN MP_CAPABLE选项数据包;将MPTCP数据包中的源IP地址替换成移动网络或固定网络分配给接入网关的公网IP地址;将MPTCP数据包中的目的IP地址替换成MPTCP Proxy IP地址;在MP_CAPABLE选项中插入应用服务器的IP地址。
在一些实施例中,将MP_CAPABLE选项中的B标志位更改为P标志位,P标志位置1表示该MP_CAPABLE选项携带的IP地址对应的应用需要MPTCP代理功能。在一些实施例中,对于MP_CAPABLE的修改可以如图3所示,其中突出显示的部分为修改、增加的字段。
在步骤205中,根据代理节点预定MPTCP策略确定是否接受建立MPTCP连接。在一些实施例中,MPTCP代理节点可以通过判断接收到的MP_CAPABLE选项携带的应用IP地址及P标志位,是否与策略服务器下发的、允许提供MPTCP服务的应用服务器IP地址信息一致的方式,来确定是否建立MPTCP连接。若匹配一致,则确定建立MPTCP连接,若匹配不一致,则确定不建立MPTCP连接。
在确定不建立MPTCP连接的情况下,执行步骤206。在确定建立MPTCP连接的情况下,执行步骤207。
在步骤206中,向接入网关反馈连接建立失败消息,进而执行步骤203。
在步骤207中,生成TCP数据包并发送给应用服务器。
在一些实施例中,应用服务器返回TCP连接请求响应给MPTCP代理节点;MPTCP代理节点接收到来自应用服务器的TCP连接请求响应报文后,再转换成MPTCP响应消息给接入网关;接入网关和MPTCP代理节点继续执行正常的MPTCP连接建立流程。
通过这样的方法,能够通过策略控制服务器下发MPTCP应用策略到接入网关和MPTCP代理节点,接入网关和MPTCP代理节点根据相应的策略建立MPTCP连接,实现了终端与应用能够利用混合接入网络中的MPTCP多链路提升传输效率,并且方便了运营商对MPTCP应用的有效管理。
本公开的通信建立方法的一些实施例的信令交互图如图4所示。
在401中,运营商部署策略控制服务器和MPTCP Proxy(MPTCP代理节点),并在策略控制服务器生成MPTCP应用策略。
在402中,配置接入网关并上电启动,正常接入移动网络和固定网络,并分配到两个公有IP地址,开启LAN侧监听TCP数据包功能。
在403中,策略控制服务器分别下发MPTCP策略到MPTCP Proxy和接入网关。
在404中,用户PC等终端通过接入网关连接到互联网,向应用服务器发起TCP连接请求数据包。
在405中,接入网关拦截TCP数据包,根据MPTCP策略判断是否启动MPTCP连接建立请求。
在406中,如果符合MPTCP策略,接入网关将SYN TCP数据包转换成SYN MP_CAPABLE选项MPTCP数据包,其中,MPTCP数据包中的源IP地址为第一公网地址IP-A1,目的IP地址为MPTCP Proxy IP地址;在MP_CAPABLE选项中插入应用服务器的IP地址,并将MP_CAPABLE选项中的B标志位更改为P标志位。
在407中,接入网关发送SYN MPTCP_CAPABLE MPTCP数据包到MPTCP Proxy。
在408中,MPTCP Proxy接收到SYN MPTCP_CAPABLE MPTCP数据包后,根据来自策略控制服务器的本地MPTCP策略判断是否接受MPTCP连接建立请求。
在409中,如果接受,MPTCP Proxy将SYN MP_CAPABLE选项MPTCP数据包转换成SYNTCP数据包,其中,SYN TCP数据包中的源IP地址为MPTCP Proxy IP地址;SYN TCP数据包中的目的IP地址为应用服务器IP地址。MPTCP Proxy将SYN TCP数据包发送给应用服务器。
在410中,应用服务器返回SYN/ACK TCP数据包给MPTCP Proxy;其中,SYN/ACK TCP数据包中的源IP地址为应用服务器的地址,目的IP地址为MPTCP Proxy的地址。
在411中,MPTCP Proxy将SYN/ACK TCP数据包转换成SYN/ACK MP_CAPABLE MPTCP数据包给接入网关;其中,SYN/ACK MP_CAPABLE MPTCP数据包中的源IP地址为MPTCP Proxy的地址,目的IP地址为IP-A1。
在412中,接入网关将SYN/ACK MP_CAPABLE MPTCP数据包转换成SYN/ACK TCP数据包给PC等终端设备。SYN/ACK TCP数据包中的源IP地址为应用服务器的地址,目的IP地址为终端设备的IP地址。
在413中,PC等终端设备接收到SYN/ACK TCP数据包后,继续发送ACK TCP数据包给应用服务器。
在414中,接入网关将ACK TCP数据包转换为ACK MP_CAPABLE MPTCP数据包,并发送给MPTCP Proxy。其中,ACK MP_CAPABLE MPTCP数据包中的源IP地址为IP-A1,目的IP地址为MPTCP Proxy的地址。
在415中,MPTCP Proxy将ACK MP_CAPABLE MPTCP数据包转换成ACK TCP数据包,并发送给应用服务器。其中,ACK TCP数据包中的源IP地址为MPTCP Proxy,目的IP地址为应用服务器。
至此,接入网关和MPTCP Proxy完成了PC等终端设备到应用服务器之间的TCP连接建立代理以及接入网关和MPTCP Proxy之间的MPTCP初始子流的建立。后续,接入网关通过第二公网地址IP-A2地址的接口向MPTCP Proxy发起正常的MP_JOIN选项的MPTCP子流建立流程。
此后,PC等终端设备到应用服务器之间的TCP流量可以在接入网关和MPTCP Proxy之间MPTCP链路上传输。
通过这样的方法能够实现在混合接入网络中,降低对应用服务器、终端的能力要求,使得MPTCP适用于终端和应用,且通过部署策略控制服务器实现运营商对MPTCP应用的有效管理,提高了网络的可控性。
本公开的通信系统的一些实施例的示意图如图5所示。通信系统可以包括接入网关501和MPTCP代理节点502。
接入网关501能够同时正常接入固定网络和移动网络,且并被分配有两个公网IP地址,LAN/WIFI侧连接终端设备,终端能够访问基于TCP协议的互联网应用。接入网关501能够拦截来自终端的TCP数据包,并根据TCP数据包生成MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址。在一些实施例中,接入网关能够监听并拦截LAN/WIFI侧发起的TCP请求。在一些实施例中,接入网关可以根据TCP数据包的目的地址判断是否进行数据包拦截,对于不拦截的数据包,根据默认的TCP数据包转发流程放行,执行基于TCP协议的数据转发流程。
在一些实施例中,接入网关501能够根据接入网关预定MPTCP策略确定是否建立MPTCP连接。在确定需要建立MPTCP连接的情况下,根据TCP数据包生成MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址。在确定不需要建立MPTCP连接的情况下,根据默认的TCP数据包转发流程放行。
MPTCP代理节点502能够根据应用服务器的地址信息和MPTCP数据包生成TCP数据包,并发送给应用服务器。
在一些实施例中,MPTCP代理节点502可以先根据代理节点预定MPTCP策略确定是否接受建立MPTCP连接。在确定不建立MPTCP连接的情况下,向接入网关反馈连接建立失败消息,接入网关根据默认的TCP数据包转发流程放行TCP数据包。在确定建立MPTCP连接的情况下,根据应用服务器的地址信息和MPTCP数据包生成TCP数据包,并发送给应用服务器。
这样的通信系统能够在终端与应用服务器的通信连接之间,通过接入网关和MPTCP代理节点实现MPTCP通信,从而无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围,也有助于提高互联网服务提供商对MPTCP管理。
在一些实施例中,MPTCP代理节点502还能够接收来自应用服务器的TCP数据包,并根据TCP数据包生成MPTCP数据包,发送给接入网关。接入网关501根据MPTCP数据包生成TCP数据包,并转发给终端。
这样的通信系统MPTCP代理节点能够对来自应用服务器的TCP数据包进行转换,基于MPTCP实现下行链路的导通和数据的传输,无需依赖于终端自身的MPTCP能力,扩展MPTCP技术的应用范围。
在一些实施例中,如图5所示,通信系统还可以包括策略控制服务器503,能够分别下发MPTCP策略到MPTCP代理节点502和接入网关501,MPTCP策略可以包括是否允许某个接入网关或互联网应用开启MPTCP功能,某个应用的MPTCP功能的业务模式等。
这样的通信系统通过部署策略控制服务器实现运营商对MPTCP应用的有效管理,提高了网络的可控性。
本公开的通信系统的另一些实施例的示意图如图6所示。
通过策略控制服务器下发MPTCP应用策略到接入网关和MPTCP Proxy服务器。包含MPTCT功能的接入网关与数据网络通过固定接入网和移动接入网两种方式连接,通过与多个终端(如PC、移动电话、pad等)连接。
接入网关基于目的IP拦截TCP数据包,判断目的IP地址是否在MPTCP应用策略的白名单中;在确定目的IP地址不在白名单中的情况下,尝试建立MPTCP连接。接入网关将SYNTCP数据包转换成SYN MP_CAPABLE选项数据包时,在MP_CAPABLE选项中插入应用服务器的IP地址,并将MP_CAPABLE选项中的B标志位更改为P标志位。
MPTCP代理节点判断接收到的MP_CAPABLE选项携带的应用IP地址及P标志位是否与策略服务器下发的应用IP地址信息一致,在一致的情况下确定建立MPTCP连接,实现MPTCP策略的二次判断,增强了MPTCP部署的可控管理和安全性。
本公开通信系统的一个实施例的结构示意图如图7所示。构成通信系统的各个节点均可以包括存储器701和处理器702。其中:存储器701可以是磁盘、闪存或其它任何非易失性存储介质。存储器用于存储上文中通信建立方法中节点各自在对应实施例中的指令。处理器702耦接至存储器701,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器702用于执行存储器中存储的指令,能够扩展MPTCP技术的应用范围。
在一个实施例中,还可以如图8所示,通信系统800中的节点包括存储器801和处理器802。处理器802通过BUS总线803耦合至存储器801。该通信系统800还可以通过存储接口804连接至外部存储装置805以便调用外部数据,还可以通过网络接口806连接至网络或者另外一台计算机系统(未标出)。此处不再进行详细介绍。
在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,能够扩展MPTCP技术的应用范围。
在另一个实施例中,一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现通信建立方法对应实施例中的方法的步骤。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
可能以许多方式来实现本公开的方法以及装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法以及装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
最后应当说明的是:以上实施例仅用以说明本公开的技术方案而非对其限制;尽管参照较佳实施例对本公开进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本公开的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本公开技术方案的精神,其均应涵盖在本公开请求保护的技术方案范围当中。
Claims (15)
1.一种通信建立方法,包括:
接入网关拦截来自终端的传输控制协议TCP数据包,其中,所述接入网关接入固定网络和移动网络,具有两个公网IP地址,且所述接入网关的LAN/WIFI侧的终端设备能够访问互联网应用;
根据应用服务器地址、MPTCP业务模式或TCP数据包归属的应用对应的MPTCP代理节点地址中的一项或多项,确定是否需要建立MPTCP连接;
在确定需要建立MPTCP连接的情况下,所述接入网关根据所述TCP数据包生成多路传输控制协议MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址;
所述MPTCP代理节点根据所述应用服务器的地址信息和所述MPTCP数据包生成TCP数据包,并发送给应用服务器;
还包括:
所述MPTCP代理节点接收来自应用服务器的TCP数据包,其中,来自应用服务器的TCP数据包的源地址为应用服务器的地址,目的地址为MPTCP代理节点的地址;
所述MPTCP代理节点根据所述TCP数据包生成MPTCP数据包,并发送给接入网关;
所述接入网关根据所述MPTCP数据包生成TCP数据包,并转发给终端。
2.根据权利要求1所述的方法,其中,
来自终端的TCP数据包的源地址为终端地址,目的地址为应用服务器的地址;
接入网关生成的MPTCP数据包的源地址为接入网关地址,目的地址为MPTCP代理节点地址;和
MPTCP代理节点发送给应用服务器的TCP数据包的源地址为MPTCP代理节点的地址,目的地址为应用服务器的地址。
3.根据权利要求1所述的方法,其中,
MPTCP代理节点生成的MPTCP数据包的源地址为MPTCP代理节点地址,目的地址为接入网关地址;和
接入网关发送给终端的TCP数据包的源地址为应用服务器的地址,目的地址为终端的地址。
4.根据权利要求1所述的方法,其中,
所述接入网关通过在MP_CAPABLE选项中插入应用服务器的IP地址将所述应用服务器的地址提供给MPTCP代理节点。
5.根据权利要求1所述的方法,还包括:
所述接入网关在收到来自终端的TCP数据包后,根据接入网关预定MPTCP策略确定是否建立MPTCP连接;
在确定需要建立MPTCP连接的情况下,执行生成MPTCP数据包发送至MPTCP代理节点的操作;
在确定不需要建立MPTCP连接的情况下,根据默认TCP数据包转发流程放行TCP数据包。
6.根据权利要求1所述的方法,还包括:
所述MPTCP代理节点在收到来自所述接入网关的MPTCP数据包后,根据代理节点预定MPTCP策略确定是否接受建立MPTCP连接;
在确定建立MPTCP连接的情况下,执行生成TCP数据包并发送给应用服务器的操作;
在确定不建立MPTCP连接的情况下,所述MPTCP代理节点向所述接入网关反馈连接建立失败消息,以便所述接入网关根据默认TCP数据包转发流程放行TCP数据包。
7.根据权利要求5或6所述的方法,还包括:
策略控制服务器向所述接入网关发送接入网关预定MPTCP策略;
所述策略控制服务器向所述MPTCP代理节点发送MPTCP代理节点预定MPTCP策略。
8.根据权利要求5或6所述的方法,其中,所述接入网关配置有两个公网地址;
所述接入网关采用第一公网地址建立与所述MPTCP代理节点执行MPTCP初始子流;
所述接入网关采用第二公网地址向所述MPTCP代理节点发起建立MP_JOIN选项的MPTCP子流。
9.根据权利要求7所述的方法,其中,所述代理节点预定MPTCP策略包括:根据应用服务器IP地址及代理标志位是否与来自策略服务器的一致,来确定是否建立MPTCP连接。
10.一种通信系统,包括:
接入网关,被配置为拦截来自终端的传输控制协议TCP数据包,根据应用服务器地址、MPTCP业务模式或TCP数据包归属的应用对应的MPTCP代理节点地址中的一项或多项,确定是否需要建立MPTCP连接,在确定需要建立MPTCP连接的情况下,根据所述TCP数据包生成多路传输控制协议MPTCP数据包,发送至MPTCP代理节点,并提供应用服务器的地址,其中,所述接入网关接入固定网络和移动网络,具有两个公网IP地址,且所述接入网关的LAN/WIFI侧的终端设备能够访问互联网应用;
所述MPTCP代理节点,被配置为根据所述应用服务器的地址信息和所述MPTCP数据包生成TCP数据包,并发送给应用服务器;
所述MPTCP代理节点还被配置为接收来自应用服务器的TCP数据包,根据所述TCP数据包生成MPTCP数据包,并发送给接入网关,其中,来自应用服务器的TCP数据包的源地址为应用服务器的地址,目的地址为MPTCP代理节点的地址;
所述接入网关还被配置为根据所述MPTCP数据包生成TCP数据包,并转发给终端。
11.根据权利要求10所述的系统,其中,所述接入网关还被配置为:
在收到来自终端的TCP数据包后,根据接入网关预定MPTCP策略确定是否建立MPTCP连接;
在确定需要建立MPTCP连接的情况下,执行生成MPTCP数据包发送至MPTCP代理节点的操作;
在确定不需要建立MPTCP连接的情况下,根据默认TCP数据包转发流程放行TCP数据包。
12.根据权利要求10所述的系统,其中,所述MPTCP代理节点还被配置为:
在收到来自所述接入网关的MPTCP数据包后,根据代理节点预定MPTCP策略确定是否接受建立MPTCP连接;
在确定建立MPTCP连接的情况下,执行生成TCP数据包并发送给应用服务器的操作;
在确定不建立MPTCP连接的情况下,所述MPTCP代理节点向所述接入网关反馈连接建立失败消息,以便所述接入网关根据默认TCP数据包转发流程放行TCP数据包。
13.根据权利要求11或12所述的系统,还包括:
策略控制服务器,被配置为向所述接入网关发送接入网关预定MPTCP策略,向所述MPTCP代理节点发送MPTCP代理节点预定MPTCP策略。
14.一种通信系统,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器的指令执行如权利要求1至9任一项所述的方法。
15.一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现权利要求1至9任意一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010091901.1A CN113271252B (zh) | 2020-02-14 | 2020-02-14 | 通信建立方法、系统和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010091901.1A CN113271252B (zh) | 2020-02-14 | 2020-02-14 | 通信建立方法、系统和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113271252A CN113271252A (zh) | 2021-08-17 |
CN113271252B true CN113271252B (zh) | 2023-06-06 |
Family
ID=77227163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010091901.1A Active CN113271252B (zh) | 2020-02-14 | 2020-02-14 | 通信建立方法、系统和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113271252B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114401243B (zh) * | 2022-03-23 | 2022-06-28 | 北京指掌易科技有限公司 | 数据包发送方法、装置、设备和介质 |
CN114827994A (zh) * | 2022-04-25 | 2022-07-29 | 中国联合网络通信集团有限公司 | 消息交互方法、装置、设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015171023A1 (en) * | 2014-05-06 | 2015-11-12 | Telefonaktiebolaget L M Ericsson (Publ) | Establishing a multipath tcp (mptcp) connection |
CN105474598A (zh) * | 2013-08-29 | 2016-04-06 | 瑞典爱立信有限公司 | Mptcp调度 |
CN106716950A (zh) * | 2014-09-30 | 2017-05-24 | 华为技术有限公司 | 多路径传输控制协议通信的地址管理装置、系统及方法 |
CN107409121A (zh) * | 2015-03-12 | 2017-11-28 | 瑞典爱立信有限公司 | 用于多路径业务聚合的方法和布置 |
CN108075987A (zh) * | 2016-11-17 | 2018-05-25 | 华为技术有限公司 | 一种多路径数据传输方法及设备 |
CN110351186A (zh) * | 2018-04-02 | 2019-10-18 | 苹果公司 | 多路径传输控制协议代理在蜂窝网络中的使用 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3167585B1 (en) * | 2014-07-07 | 2019-12-25 | Telefonaktiebolaget LM Ericsson (publ) | Multi-path transmission control protocol |
US10992712B2 (en) * | 2018-02-27 | 2021-04-27 | Cisco Technology, Inc. | Multipath subflow anchoring for security policy enforcement |
-
2020
- 2020-02-14 CN CN202010091901.1A patent/CN113271252B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105474598A (zh) * | 2013-08-29 | 2016-04-06 | 瑞典爱立信有限公司 | Mptcp调度 |
WO2015171023A1 (en) * | 2014-05-06 | 2015-11-12 | Telefonaktiebolaget L M Ericsson (Publ) | Establishing a multipath tcp (mptcp) connection |
CN106716950A (zh) * | 2014-09-30 | 2017-05-24 | 华为技术有限公司 | 多路径传输控制协议通信的地址管理装置、系统及方法 |
CN107409121A (zh) * | 2015-03-12 | 2017-11-28 | 瑞典爱立信有限公司 | 用于多路径业务聚合的方法和布置 |
CN108075987A (zh) * | 2016-11-17 | 2018-05-25 | 华为技术有限公司 | 一种多路径数据传输方法及设备 |
CN110351186A (zh) * | 2018-04-02 | 2019-10-18 | 苹果公司 | 多路径传输控制协议代理在蜂窝网络中的使用 |
Also Published As
Publication number | Publication date |
---|---|
CN113271252A (zh) | 2021-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110351024B (zh) | 数据传输方法和装置 | |
EP3085192B1 (en) | Multipath tcp subflow establishing on single ip connection | |
CN113545014B (zh) | 支持虚拟主机迁移的方法及无线发射/接收单元 | |
CN108601043B (zh) | 用于控制无线接入点的方法和设备 | |
CN109644190B (zh) | 两个终端之间的多路径udp通信方法 | |
US11363671B2 (en) | Controlling migration of a QUIC connection | |
US8635326B1 (en) | Mobile gateway having reduced forwarding state for anchoring mobile subscribers | |
CN110972126B (zh) | 路径,路径信息的处理方法及装置 | |
CN111837371A (zh) | 基于增强mptcp的应用移动性 | |
JP7503625B2 (ja) | ルーティングおよびベアラマッピング構成のための方法およびデバイス | |
US20150237525A1 (en) | Traffic Shaping and Steering for a Multipath Transmission Control Protocol Connection | |
CN115244897A (zh) | 用于使用quic实现多主机多路径安全传输的方法和装置 | |
US20230189368A1 (en) | Associating transport identifiers with quality of service flows | |
US10178023B2 (en) | Packet processing method and apparatus | |
CN113271252B (zh) | 通信建立方法、系统和计算机可读存储介质 | |
CN112929264B (zh) | 业务流量传输方法、系统及网络设备 | |
EP4132100A1 (en) | Method and device for providing local data network information to terminal in wireless communication system | |
CN116471586A (zh) | 一种数据处理方法、装置以及可读存储介质 | |
CN112838983B (zh) | 数据传输方法、系统、设备、代理服务器及存储介质 | |
KR102055911B1 (ko) | 세션 연결을 위한 시그널링 방법, 그리고 이를 구현한 장치 | |
Salkintzis et al. | Multipath QUIC for Access Traffic Steering Switching and Splitting in 5G Advanced | |
WO2019062527A1 (zh) | 本地数据网的发现、配置方法、终端、核心网设备及基站 | |
CN113965516B (zh) | 传输数据的方法和装置 | |
CN109981315B (zh) | 一种anima网络的信息处理方法、设备及系统 | |
CN103368841A (zh) | 报文转发方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |