CN111866956B - 一种数据传输方法及对应的设备 - Google Patents
一种数据传输方法及对应的设备 Download PDFInfo
- Publication number
- CN111866956B CN111866956B CN201910351873.XA CN201910351873A CN111866956B CN 111866956 B CN111866956 B CN 111866956B CN 201910351873 A CN201910351873 A CN 201910351873A CN 111866956 B CN111866956 B CN 111866956B
- Authority
- CN
- China
- Prior art keywords
- policy
- transmission
- information
- message
- data
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/16—Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
- H04W28/18—Negotiating wireless communication parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- 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/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- 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/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/15—Setup of multiple wireless link connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/06—Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种数据传输方法及对应的设备,涉及移动通信领域,可以解决使用多路径传输技术传输数据时,收发设备之间无法根据需求协商数据传输策略,限制了传输性能,用户体验度差的问题。本申请第一设备和第二设备在使用多路径连接时,可以基于需要多次进行传输策略的协商,包括路径管理策略和数据调度策略中的至少一种,使得第一设备和第二设备可以更好地保证建链成功率,或者保证第一设备和第二设备数据调度策略的匹配度,提高数据传输性能,从而提高用户体验度。
Description
技术领域
本申请实施例涉及移动通信领域,尤其涉及一种数据传输的方法、对应的设备、计算机设备和存储介质。
背景技术
随着移动互联网的普及,越来越多的终端具有多个网络地址,应用服务端也具有多个网络地址,因此实际上终端和终端,或者终端与服务器之间具备进行多路径信息传输的多条物理通路。
在多路径传输时,需要制定传输策略。具体的,传输策略可以是路径管理和调度算法中的至少一种,需要确定如何在多个网络地址之间建立多个路径,这个过程在协议实施实现中称之为路径管理(Path Manager,PM)。例如:终端A具有无线保真(Wireless-Fidelity,WiFi) 地址和4G长期演进(Long Term Evolution,LTE)地址,终端B具有WiFi地址和5G新无线 (New Radio,NR)地址;那么终端A与终端B之间可以进行信息传输的物理通路包括: WiFi-WiFi,WiFi-5G NR,4G LTE-WiFi和4G LTE-5G NR;即终端A与终端B可以在上述4 条路径上进行并发传输信息。另外,在多路径传输时,需要确定如何将一系列数据包分割在不同的路径上进行传输,比如,是使用聚合传输模式还是冗余传输模式,再比如,如何将从多个路径上接收的数据汇聚等等这些都可以称为调度算法Scheduler。例如:上述4条路径如何分担待传输的1G数据包。本申请中,又把调度算法称为数据调度策略。
现有的多路径传输中,通常,传输策略都是发送端和接收端独立静态设置的,灵活度太低,且很可能不互相匹配,影响以及限制了多路径传输的传输性能。
发明内容
本申请实施例提供一种数据传输方法,能够解决使用多路径传输技术传输数据时,收发设备之间无法根据需求协商数据传输策略,限制了传输性能,用户体验度差的问题。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,提供一种数据传输方法,该方法用于第一设备与第二设备之间的多路径连接,该方法包括:第一设备向第二设备发送第一报文,该第一报文包括传输策略协商信息,该传输策略协商信息用于协商第二设备使用多路径连接时所使用的传输策略;第一设备接收来自第二设备的第二报文,该第二报文包括第一策略信息,该第一策略信息指示第二设备使用多路径连接时所使用的传输策略;第一设备基于该第一策略信息,使用与第一策略信息对应的传输策略与第二设备传输数据;其中,第一策略信息以及传输策略协商信息指示的传输策略种类相同,且该传输策略的种类为路径管理策略和数据调度策略中的至少一种。其中,“对应的”可以理解为相匹配的。例如,“与第一策略信息对应的传输策略”可以是第一策略信息指示的传输策略,也可以是常与第一策略信息指示的传输策略配套使用的传输策略(如,在某一具体场景下配套使用时可以满足预期的传输性能),还可以是遵循某种匹配规则的与第一策略信息指示的传输策略匹配的传输策略(如,预设的匹配关系:若第二设备使用第一策略信息指示的传输策略,第一设备使用传输策略A,其中,传输策略A与第一策略信息指示的传输策略可以相同,也可以不同)。
需理解的是,该传输策略的种类为路径管理策略和数据调度策略中的至少一种,可以是路径管理策略和数据调度策略二者都有,或者仅数据调度策略,或者仅路径管理策略。
上述第一方面提供的技术方案,第一设备和第二设备在使用多路径连接时,可以基于需要多次进行传输策略的协商,例如可以是一次或多次路径管理策略的协商,通过路径管理策略的协商,使得第一设备和第二设备可以更好地保证建链成功率;或者一次或多次数据调度策略的协商,通过数据调度策略的协商,保证了第一设备和第二设备数据调度策略较高的匹配度;也可以是既协商路径管理策略又协商数据调度策略,使得第一设备和第二设备在保证建链成功率的同时,还可以保证第一设备和第二设备数据调度策略较高的匹配度,从而提高数据传输性能,提高用户体验度。
在一种可能的实现方式中,该传输策略协商信息包括第二策略信息,第三策略信息和第四策略信息中的至少一种;其中,第二策略信息指示第一设备使用多路径连接传输数据时所使用的传输策略,第三策略信息指示第一设备建议第二设备使用多路径连接传输数据时所使用的传输策略,第四策略信息指示第一设备可使用的至少一种传输策略。第一设备和第二设备在进行传输策略协商时,可以通过告知对方其使用的,或者支持的,或者期望对方使用的传输策略,使得对方可以根据其需求选择与该需求匹配的传输策略,从而提高数据传输性能。
在一种可能的实现方式中,该路径管理策略指示建立第一设备与第二设备之间的多路径连接的至少一条路径的策略,该数据调度策略指示传输数据时多路径连接分配数据的策略。第一设备和第二设备可以通过协商路径管理策略提高双方建链的成功率,和/或通过协商数据调度策略提高双方数据调度策略的匹配度,可以更好地提高数据传输性能,从而提高用户体验度。
在一种可能的实现方式中,第一报文和第二报文均包括第一扩展位;该传输策略协商信息位于第一报文的报文头的第一扩展位,该第一策略信息位于第二报文的报文头的第一扩展位。第一设备和第二设备分别通过扩展位来携带传输策略协商信息和第一策略信息,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,第一报文还包括:第一指示信息;其中,该第一指示信息用于指示第一报文中包括传输策略协商信息。第一设备可以通过在报文中携带指示信息,用于告知第二设备报文中包括传输策略协商信息,使得协商的过程更加顺畅。
在一种可能的实现方式中,第二报文还包括:第二指示信息;其中,该第二指示信息用于指示第二报文包括第一策略信息。第二设备可以通过在报文中携带指示信息,用于告知第一设备报文中包括传输策略协商信息,使得协商的过程更加顺畅。
在一种可能的实现方式中,第一报文和第二报文均包括第二扩展位;第一指示信息位于所述第一报文的第二扩展位,第二指示信息位于第二报文的报文头中的第二扩展位。第一设备和第二设备分别通过扩展位来携带指示信息,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,第一扩展位为控制请求扩展位;第二扩展位为子类型subtype 扩展位。第一设备和第二设备分别通过扩展位来携带指示信息和传输策略协商信息,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,该方法还可以包括:第一设备的协议栈根据多路径连接对应的应用的数据传输需求,确定传输策略协商信息。第一设备和第二设备进行传输策略协商可以根据应用的数据传输需求来发起,以及视具体需求确定各自使用的传输策略,使得建链结果与数据调度策略更能满足具体需求,用户体验度也更高。
在一种可能的实现方式中,该多路径连接为多路径传输控制协议MPTCP连接,或者多路径快速用户数据报文传输协议MPQUIC连接。本申请的传输策略的协商可以在多个多路径传输协议上开源实现,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,第一报文和第二报文均为数据报文,或者第一报文和第二报文均为数据传输过程中的控制报文。第一设备和第二设备可以支持通过数据报文的扩展位和控制报文的扩展位进行传输策略协商,解决了现有技术中的多路径传输协议不支持传输策略协商的问题;另外,第一设备和第二设备在数据传输过程中基于需要通过数据报文或者控制报文均可实现协商,灵活度会更高,更容易实现。
在一种可能的实现方式中,第一报文和第二报文均为握手报文;其中,该握手报文为第一设备和第二设备建立主子流使用的握手报文,或者,该握手报文为第一设备在和第二设备建立除主子流之外其他子流所使用的握手报文。第一设备和第二设备可以支持通过建链阶段的握手报文的扩展位进行传输策略协商,解决了现有技术中的多路径传输协议不支持传输策略协商的问题;另外,第一设备和第二设备在建链阶段即可基于需要进行传输策略协商,可以保证整个数据传输过程的数据传输性能。
在一种可能的实现方式中,该握手报文由第一设备在和第二设备建立连接时的MP_CAPABLE阶段发送给第二设备;或者,该握手报文由第一设备在和第二设备建立连接时的MP_JOIN阶段发送给第二设备。第一设备和第二设备通过MP_CAPABLE阶段的握手报文的扩展位,或者MP_JOIN阶段的握手报文的扩展位均可实现传输策略的协商,灵活度更高。
第二方面,提供一种数据传输方法,该方法用于第二设备与第一设备之间的多路径连接,该方法包括:第二设备从第一设备接收第一报文,该第一报文包括传输策略协商信息,该传输策略协商信息用于协商第二设备使用多路径连接时所使用的传输策略;第二设备使用与该传输策略协商信息对应的传输策略,与第一设备传输数据;其中,传输策略的种类为路径管理策略和数据调度策略中的至少一种。其中,“对应的”可以理解为相匹配的。例如,“与该传输策略协商信息对应的传输策略”可以是传输策略协商信息指示的传输策略,也可以是常与传输策略协商信息指示的传输策略配套使用的传输策略(如,在某一具体场景下配套使用时可以满足预期的传输性能),还可以是遵循某种匹配规则的与传输策略协商信息指示的传输策略匹配的传输策略(如,预设的匹配关系:若传输策略协商信息指示的传输策略B,第二设备使用传输策略C,其中,传输策略C与传输策略B可以相同,也可以不同)。
需理解的是,该传输策略的种类为路径管理策略和数据调度策略中的至少一种,可以是路径管理策略和数据调度策略二者都有,或者仅数据调度策略,或者仅路径管理策略。
上述第二方面提供的技术方案,第二设备和第一设备在使用多路径连接时,可以基于需要一次或多次进行路径管理策略的协商,使得第二设备和第一设备可以更好地保证建链成功率,和/或一次或多次进行数据调度策略的协商,保证第二设备和第一设备数据调度策略的匹配度,从而提高数据传输性能,提高用户体验度。
在一种可能的实现方式中,该方法还可以包括:第二设备基于第一报文,向第一设备发送第二报文,该第二报文包括第一策略信息,该第一策略信息指示第二设备使用多路径连接时所使用的传输策略。第二设备通过在传输策略协商时向第一设备反馈其使用多路径连接时所使用的传输策略,使得第二设备和第一设备可以更好地保证建链成功率,和/或保证第二设备和第一设备数据调度策略的匹配度,提高数据传输性能。
在一种可能的实现方式中,该传输策略协商信息包括第二策略信息,第三策略信息和第四策略信息中的至少一种;其中,第二策略信息指示第一设备使用多路径连接传输数据时所使用的传输策略,第三策略信息指示第一设备建议第二设备使用多路径连接传输数据时所使用的传输策略,第四策略信息指示第一设备可使用的至少一种传输策略。第一设备和第二设备在进行传输策略协商时,可以通过告知对方其使用的,或者支持的,或者期望对方使用的传输策略,使得对方可以根据其需求选择与该需求匹配的传输策略从而提高数据传输性能。
在一种可能的实现方式中,该方法还可以包括:第二设备根据传输策略协商信息确定第一策略信息,该第一策略信息指示第二设备使用多路径连接时所使用的传输策略,其中,该第一策略信息以及传输策略协商信息指示的传输策略种类相同。第二设备可以根据传输策略协商信息中指示的传输策略确定其使用多路径连接时所使用的传输策略,使得确定出的第一策略信息可以与第一设备的传输需求更加匹配,从而提高数据传输性能。
在一种可能的实现方式中,传输策略协商信息包括第三策略信息;在第二设备可使用第三策略信息指示的传输策略的情况下,第二设备根据传输策略协商信息确定第一策略信息,可以包括:第二设备确定第一策略信息指示的传输策略为第三策略信息指示的传输策略。第二设备可以使用第一设备建议的传输策略进行数据传输,使得确定出的第一策略信息可以与第一设备的传输需求更加匹配。
在一种可能的实现方式中,传输策略协商信息还包括所第四策略信息;在第二设备不可使用第三策略信息指示的传输策略的情况下,第二设备根据传输策略协商信息确定第一策略信息,可以包括:第二设备确定第一策略信息指示的传输策略为第二设备可使用的,且与第三策略信息指示的传输策略性能接近的传输策略;或者,第二设备确定第一策略信息指示的传输策略为第四策略信息指示的一种传输策略。第二设备可以使用与第一设备支持的任一种传输策略性能接近的传输策略进行数据传输,使得在无法完全匹配第一设备的传输需求时,尽可能的提高两者的匹配度。
在一种可能的实现方式中,传输策略协商信息包括第二策略信息;在第二设备可使用第二策略信息指示的传输策略的情况下,第二设备根据传输策略协商信息确定第一策略信息,可以包括:第二设备确定第一策略信息指示的传输策略为第二策略信息指示的传输策略。第二设备可以使用第一设备正在使用的传输策略进行数据传输,使得确定出的第一策略信息可以与第一设备的传输需求更加匹配。
在一种可能的实现方式中,传输策略协商信息还包括第四策略信息;在第二设备不可使用第二策略信息指示的传输策略的情况下,第二设备根据传输策略协商信息确定第一策略信息,可以包括:第二设备确定第一策略信息指示的传输策略为第二设备可使用的,且与第二策略信息指示的传输策略性能接近的传输策略;或者,第一策略信息指示的传输策略为第四策略信息指示的一种传输策略。第二设备可以使用与第一设备支持的任一种传输策略性能接近的传输策略进行数据传输,使得在无法完全匹配第一设备的传输需求时,尽可能的提高两者的匹配度。
在一种可能的实现方式中,路径管理策略具有与第一方面中任一种可能的实现方式中描述的路径管理策略相同的特征;数据调度策略具有与第一方面中任一种可能的实现方式中描述的数据调度策略相同的特征。具体可参考第一方面中可能的实现方式。
在一种可能的实现方式中,第一报文和第二报文具有与第一方面中任一种可能的实现方式中描述的第一报文和第二报文相同的特征。具体可参考第一方面中可能的实现方式。
在一种可能的实现方式中,多路径连接可以是第一方面中任一种可能的实现方式中描述的多路径连接,包括MPTCP连接或MPQUIC连接。具体可参考第一方面中可能的实现方式。
第三方面,提供一种第一设备,该第一设备与第二设备建立了多路径连接,该第一设备包括:发送模块,用于向第二设备发送第一报文,该第一报文包括传输策略协商信息,该传输策略协商信息用于协商第二设备使用多路径连接时所使用的传输策略;接收模块,用于接收来自第二设备的第二报文,该第二报文包括第一策略信息,该第一策略信息指示第二设备使用多路径连接时所使用的传输策略;发送模块与接收模块还用于,基于第一策略信息,使用与该第一策略信息对应的传输策略与第二设备传输数据;其中,第一策略信息以及传输策略协商信息指示的传输策略种类相同,且所传输策略的种类为路径管理策略和数据调度策略中的至少一种。其中,“对应的”可以理解为相匹配的。例如,“与第一策略信息对应的传输策略”可以是第一策略信息指示的传输策略,也可以是常与第一策略信息指示的传输策略配套使用的传输策略(如,在某一具体场景下配套使用时可以满足预期的传输性能),还可以是遵循某种匹配规则的与第一策略信息指示的传输策略匹配的传输策略(如,预设的匹配关系:若第二设备使用第一策略信息指示的传输策略,第一设备使用传输策略A,其中,传输策略A 与第一策略信息指示的传输策略可以相同,也可以不同)。
需理解的是,该传输策略的种类为路径管理策略和数据调度策略中的至少一种,可以是路径管理策略和数据调度策略二者都有,或者仅数据调度策略,或者仅路径管理策略。
上述第三方面提供的技术方案,第一设备和第二设备在使用多路径连接时,可以基于需要多次进行传输策略的协商,例如可以是一次或多次路径管理策略的协商,通过路径管理策略的协商,使得第一设备和第二设备可以更好地保证建链成功率;或者一次或多次数据调度策略的协商,通过数据调度策略的协商,保证了第一设备和第二设备数据调度策略较高的匹配度;也可以是既协商路径管理策略又协商数据调度策略,使得第一设备和第二设备在保证建链成功率的同时,还可以保证第一设备和第二设备数据调度策略较高的匹配度,从而提高数据传输性能,提高用户体验度。
在一种可能的实现方式中,该传输策略协商信息包括第二策略信息,第三策略信息和第四策略信息中的至少一种;其中,第二策略信息指示第一设备使用多路径连接传输数据时所使用的传输策略,第三策略信息指示第一设备建议第二设备使用多路径连接传输数据时所使用的传输策略,第四策略信息指示第一设备可使用的至少一种传输策略。第一设备和第二设备在进行传输策略协商时,可以通过告知对方其使用的,或者支持的,或者期望对方使用的传输策略,使得对方可以根据其需求选择与该需求匹配的传输策略,从而提高数据传输性能。
在一种可能的实现方式中,该路径管理策略指示建立第一设备与第二设备之间的多路径连接的至少一条路径的策略,该数据调度策略指示传输数据时多路径连接分配数据的策略。第一设备和第二设备可以通过协商路径管理策略提高双方建链的成功率,和/或通过协商数据调度策略提高双方数据调度策略的匹配度,可以更好地提高数据传输性能,从而提高用户体验度。
在一种可能的实现方式中,第一报文和第二报文均包括第一扩展位;该传输策略协商信息位于第一报文的报文头的第一扩展位,该第一策略信息位于第二报文的报文头的第一扩展位。第一设备和第二设备分别通过扩展位来携带传输策略协商信息和第一策略信息,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,第一报文还包括:第一指示信息;其中,该第一指示信息用于指示第一报文中包括传输策略协商信息。第一设备可以通过在报文中携带指示信息,用于告知第二设备报文中包括传输策略协商信息,使得协商的过程更加顺畅。
在一种可能的实现方式中,第二报文还包括:第二指示信息;其中,该第二指示信息用于指示第二报文包括第一策略信息。第二设备可以通过在报文中携带指示信息,用于告知第一设备报文中包括传输策略协商信息,使得协商的过程更加顺畅。
在一种可能的实现方式中,第一报文和第二报文均包括第二扩展位;第一指示信息位于所述第一报文的第二扩展位,第二指示信息位于第二报文的报文头中的第二扩展位。第一设备和第二设备分别通过扩展位来携带指示信息,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,第一扩展位为控制请求扩展位;第二扩展位为子类型subtype 扩展位。第一设备和第二设备分别通过扩展位来携带指示信息和传输策略协商信息,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,该第一设备还可以包括:分析模块,用于通过第一设备的协议栈根据多路径连接对应的应用的数据传输需求,确定传输策略协商信息。第一设备和第二设备进行传输策略协商可以根据应用的数据传输需求来发起,以及视具体需求确定各自使用的传输策略,使得建链结果与数据调度策略更能满足具体需求,用户体验度也更高。
在一种可能的实现方式中,该多路径连接为多路径传输控制协议MPTCP连接,或者多路径快速用户数据报文传输协议MPQUIC连接。本申请的传输策略的协商可以在多个多路径传输协议上开源实现,解决了现有技术中的多路径传输协议不支持传输策略协商的问题。
在一种可能的实现方式中,第一报文和第二报文均为数据报文,或者第一报文和第二报文均为数据传输过程中的控制报文。第一设备和第二设备可以支持通过数据报文的扩展位和控制报文的扩展位进行传输策略协商,解决了现有技术中的多路径传输协议不支持传输策略协商的问题;另外,第一设备和第二设备在数据传输过程中基于需要通过数据报文或者控制报文均可实现协商,灵活度会更高,更容易实现。
在一种可能的实现方式中,第一报文和第二报文均为握手报文;其中,该握手报文为第一设备和第二设备建立主子流使用的握手报文,或者,该握手报文为第一设备在和第二设备建立除主子流之外其他子流所使用的握手报文。第一设备和第二设备可以支持通过建链阶段的握手报文的扩展位进行传输策略协商,解决了现有技术中的多路径传输协议不支持传输策略协商的问题;另外,第一设备和第二设备在建链阶段即可基于需要进行传输策略协商,可以保证整个数据传输过程的数据传输性能。
在一种可能的实现方式中,该握手报文由第一设备在和第二设备建立连接时的MP_CAPABLE阶段发送给第二设备;或者,该握手报文由第一设备在和第二设备建立连接时的MP_JOIN阶段发送给第二设备。第一设备和第二设备通过MP_CAPABLE阶段的握手报文的扩展位,或者MP_JOIN阶段的握手报文的扩展位均可实现传输策略的协商,灵活度更高。
第四方面,提供一种第二设备,该第二设备与第一设备建立了多路径连接,该第二设备包括:接收模块,用于从第一设备接收第一报文,该第一报文包括传输策略协商信息,该传输策略协商信息用于协商第二设备使用多路径连接时所使用的传输策略;发送模块,用于使用与该传输策略协商信息对应的传输策略,向第一设备发送数据;接收模块还用于,使用与该传输策略协商信息对应的传输策略,从第一设备接收数据;其中,传输策略的种类为路径管理策略和数据调度策略中的至少一种。其中,“对应的”可以理解为相匹配的。例如,“与该传输策略协商信息对应的传输策略”可以是传输策略协商信息指示的传输策略,也可以是常与传输策略协商信息指示的传输策略配套使用的传输策略(如,在某一具体场景下配套使用时可以满足预期的传输性能),还可以是遵循某种匹配规则的与传输策略协商信息指示的传输策略匹配的传输策略(如,预设的匹配关系:若传输策略协商信息指示的传输策略B,第二设备使用传输策略C,其中,传输策略C与传输策略B可以相同,也可以不同)。
需理解的是,该传输策略的种类为路径管理策略和数据调度策略中的至少一种,可以是路径管理策略和数据调度策略二者都有,或者仅数据调度策略,或者仅路径管理策略。
上述第四方面提供的技术方案,第二设备和第一设备在使用多路径连接时,可以基于需要一次或多次进行路径管理策略的协商,使得第二设备和第一设备可以更好地保证建链成功率,和/或一次或多次进行数据调度策略,保证第二设备和第一设备数据调度策略的匹配度,从而提高数据传输性能,提高用户体验度。
在一种可能的实现方式中,该发送模块还用于,基于第一报文,向第一设备发送第二报文,该第二报文包括第一策略信息,该第一策略信息指示第二设备使用多路径连接时所使用的传输策略。第二设备通过在传输策略协商时向第一设备反馈其使用多路径连接时所使用的传输策略,使得第二设备和第一设备可以更好地保证建链成功率,和/或保证第二设备和第一设备数据调度策略的匹配度,提高数据传输性能。
在一种可能的实现方式中,该传输策略协商信息包括第二策略信息,第三策略信息和第四策略信息中的至少一种;其中,第二策略信息指示第一设备使用多路径连接传输数据时所使用的传输策略,第三策略信息指示第一设备建议第二设备使用多路径连接传输数据时所使用的传输策略,第四策略信息指示第一设备可使用的至少一种传输策略。第一设备和第二设备在进行传输策略协商时,可以通过告知对方其使用的,或者支持的,或者期望对方使用的传输策略,使得对方可以根据其需求选择与该需求匹配的传输策略,从而提高数据传输性能。
在一种可能的实现方式中,该第二设备还包括:分析模块,用于根据传输策略协商信息确定第一策略信息,该第一策略信息指示第二设备使用多路径连接时所使用的传输策略,其中,该第一策略信息以及传输策略协商信息指示的传输策略种类相同。第二设备可以根据传输策略协商信息中指示的传输策略确定其使用多路径连接时所使用的传输策略,使得确定出的第一策略信息可以与第一设备的传输需求更加匹配,从而提高数据传输性能。
在一种可能的实现方式中,传输策略协商信息包括第三策略信息;在第二设备可使用第三策略信息指示的传输策略的情况下,分析模块根据传输策略协商信息确定第一策略信息,可以包括:分析模块确定第一策略信息指示的传输策略为第三策略信息指示的传输策略。第二设备可以使用第一设备建议的传输策略进行数据传输,使得确定出的第一策略信息可以与第一设备的传输需求更加匹配。
在一种可能的实现方式中,传输策略协商信息还包括所第四策略信息;在第二设备不可使用第三策略信息指示的传输策略的情况下,分析模块根据传输策略协商信息确定第一策略信息,可以包括:分析模块确定第一策略信息指示的传输策略为第二设备可使用的,且与第三策略信息指示的传输策略性能接近的传输策略;或者,第二设备确定第一策略信息指示的传输策略为第四策略信息指示的一种传输策略。第二设备可以使用与第一设备支持的任一种传输策略性能接近的传输策略进行数据传输,使得在无法完全匹配第一设备的传输需求时,尽可能的提高两者的匹配度。
在一种可能的实现方式中,传输策略协商信息包括第二策略信息;在第二设备可使用第二策略信息指示的传输策略的情况下,分析模块根据传输策略协商信息确定第一策略信息,可以包括:分析模块确定第一策略信息指示的传输策略为第二策略信息指示的传输策略。第二设备可以使用第一设备正在使用的传输策略进行数据传输,使得确定出的第一策略信息可以与第一设备的传输需求更加匹配。
在一种可能的实现方式中,传输策略协商信息还包括第四策略信息;在第二设备不可使用第二策略信息指示的传输策略的情况下,分析模块根据传输策略协商信息确定第一策略信息,可以包括:分析模块确定第一策略信息指示的传输策略为第二设备可使用的,且与第二策略信息指示的传输策略性能接近的传输策略;或者,第一策略信息指示的传输策略为第四策略信息指示的一种传输策略。第二设备可以使用与第一设备支持的任一种传输策略性能接近的传输策略进行数据传输,使得在无法完全匹配第一设备的传输需求时,尽可能的提高两者的匹配度。
在一种可能的实现方式中,路径管理策略具有与第三方面中任一种可能的实现方式中描述的路径管理策略相同的特征;数据调度策略具有与第三方面中任一种可能的实现方式中描述的数据调度策略相同的特征。具体可参考第三方面中可能的实现方式。
在一种可能的实现方式中,第一报文和第二报文具有与第三方面中任一种可能的实现方式中描述的第一报文和第二报文相同的特征。具体可参考第三方面中可能的实现方式。
在一种可能的实现方式中,多路径连接可以是第三方面中任一种可能的实现方式中描述的多路径连接,包括MPTCP连接或MPQUIC连接。具体可参考第三方面中可能的实现方式。
第五方面,提供一种第一设备,该第一设备可以包括:存储介质,用于存储计算机程序代码,该计算机程序代码包括指令;射频电路,用于进行无线信号的发送和接收;处理电路,用于执行存储介质中的指令使第一设备执行第一方面任一种可能的实现方式中的所述的方法和功能。
第六方面,提供一种第二设备,该第二设备可以包括:存储介质,用于存储计算机程序代码,该计算机程序代码包括指令;射频电路,用于进行无线信号的发送和接收;处理电路,用于执行存储介质中的指令使第二设备执行第二方面任一种可能的实现方式中的所述的方法和功能。
第七方面,提供一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机执行指令,该计算机执行指令被处理电路执行时实现如第一方面或者第二方面任一种可能的实现方式中的数据传输方法。
第八方面,提供一种芯片系统,该芯片系统包括处理电路、存储介质,存储介质中存储有指令;所述指令被所述处理电路执行时,实现如第一方面或者第二方面任一种可能的实现方式中的数据传输方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
附图说明
图1A为本申请实施例提供的一种数据传输方法的应用场景示意图;
图1B为本申请实施例提供的数据传输方法的通信网络架构实例示意图;
图2A为本申请实施例提供的三种可使用本申请实施例的组网系统;
图2B为本申请实施例提供的三种可能的多路径传输层和子流层的架构示意图;
图2C为本申请提供的手机与应用服务器之间使用MPTCP技术进行通信的示意图;
图3为本申请实施例提供的手机的硬件结构示意图;
图4为本申请实施例提供的应用服务器的硬件结构示意图;
图5为本申请实施例提供的一种数据传输方法交互图一;
图6为本申请实施例提供的一种多路径传输协议栈结构示意图;
图7为本申请实施例提供的一种数据传输方法交互图二;
图8A为本申请实施例提供的一种数据传输方法交互图三;
图8B为本申请实施例提供的一种数据传输方法交互图四;
图8C为本申请实施例提供的一种数据传输方法交互图五;
图9A为本申请实施例提供的一种第一报文交互流程示例一;
图9B为本申请实施例提供的一种第一报文的格式示例一;
图9C为本申请实施例提供的一种第一报文的格式示例二;
图10A为本申请实施例提供的一种第一报文交互流程示例二;
图10B为本申请实施例提供的一种第一报文的格式示例三;
图10C为本申请实施例提供的一种第一报文的格式示例四;
图11为本申请实施例提供的一种第一报文的格式示例五;
图12为本申请实施例提供的一种第一报文的格式示例六;
图13为本申请实施例提供的一种第一报文的格式示例七;
图14A为本申请实施例提供的一种MPQUIC协商流程示例一;
图14B为本申请实施例提供的一种MPQUIC协商流程示例二;
图15为本申请实施例提供的一种手机的结构示意图;
图16为本申请实施例提供的一种应用服务器的结构示意图。
具体实施方式
本申请实施例提供一种数据传输方法,该方法用于设备之间通过多路径连接传输数据的过程中。其中,通过多路径连接传输数据的过程可以包括:设备之间建立多路径连接过程,以及完成多路径连接的建立之后,使用多路径连接传输数据的过程。具体的,第一设备和第二设备可以使用多路径传输协议,在建立多路径连接过程或者使用多路径连接传输数据的过程中协商双方传输数据所使用的传输策略。其中,本申请实施例中的传输策略的种类可以为路径管理策略和数据调度策略中的至少一种。
示例性的,本申请实施例中的多路径传输协议可以为多路径传输控制协议(Multipath-Path Transmission Control Protocol,MPTCP)、多路径用户数据报协议(Multipath-Path User Datagram Protocol,MPUDP)、多路径快速用户数据报互联网连接协议(Multipath-Path Quick User Datagram Protocol Internet Connection,MPQUIC)等。
以下,对本申请实施例可能出现的术语进行解释。
路径(path):路径是发端(sender)与收端(reciever)之间的链路(link)。路径可以用四元组来标识,该四元组用于表示源地址(和/或端口)和目的地址(和/或端口)对。应理解,支持多路径传输技术的收端和发端,都可以在其主机(host)中准备多个地址,以便标识多条路径。以及,一对收端和发端之间的多条路径可以共享一个或者多个路由器(router)。
子流(subflow):在单个路径(path)上运行的TCP段(segment)的流。子流是一条多路径连接的一部分。子流的启动(start)和终止(terminate)与常规(regular)的TCP连接相似。本文中一条子流就对应一条路径。
需要说明的是,对于一个子流,收发两端设备可以使用不同表达形式的运营商标识表示同一运营商。例如,对一个子流,发端使用编号表示运营商,收端使用运营商名称表示运营商。
多路径连接:通过(over)一个应用,在两个主机(host)间可以通信的一组子流,该组子流包括多个子流。其中,连接和应用的接口(socket)之间有一一映射。多路径连接就是使用多个路径传输数据的连接,每个路径(即子流)可以使用不同的传输协议,例如路径使用TCP 协议,则多路径连接为MPTCP连接。其中,通过(over)一个应用,在两个主机(host)间可以通信的链路也称为连接,只是多路径连接包括多路径,而一般的连接只有一个路径。
包(packet):带有头部(header)的一包(package)数据,该头部可以是逻辑上完整或者不完整的。通常,是一物理上打包(physical packaging of data)的数据,当然,也可以是一逻辑上打包的数据(logical packaging of data)。包这个概念用于描述数据在一主机(host)以及与该主机相连的网络之间的交互。
确认(Acknowledgement,ACK)包:也称为确认报文、ACK、反馈报文、通知。确认包中包括ACK信息,例如某一数据包的序列号,通常用于表示收端通知发端已接收到该数据包。
关于主机(host)、路径(path)、链路(link)、子流(subflow)的相关内容,可以参考IETF 标准组织的文件RFC.6824。
往返时延(Round-robin Transmit Time,RTT):表示发送端从发送数据开始,到接收到接收端发送的对应该数据的接收确认信息(如ACK)的过程,所经历的时延。应理解,在一种实现方式下,接收端收到数据后便立即发送该数据对应的确认信息,其中,“立即”应理解为包括接收端从接收到数据直至发送确认消息的必要的处理时间。应理解,往返时延简写为RTT 或者rtt都可以。例如在某些代码中,使用rtt表示。
第一设备/第二设备:第一设备/第二设备为物理设备或者虚拟设备。其中,物理设备是指物理设备是实际存在的设备;虚拟设备是指通过由物理设备变化成的多个对应的逻辑设备来表现的设备;逻辑设备是指与物理设备具有映射关系的,由逻辑元件构成的,可以进行逻辑运算(与,或,非等)的设备。其中,该映射关系可以包括逻辑设备名、物理设备名、设备驱动程序入口。
在某些场景下,第一设备和第二设备可能在同一物理设备上或者同一个集群中。
请参考图1A,其示出本申请实施例提供的一种通信系统架构示意图。该通信系统可以包括第一设备10和第二设备20。第一设备10和第二设备20均包括多个网络地址,如图1A所示,第一设备10与第二设备20可以通过彼此的多个网络地址建立多条网络连接。例如网络连接1,网络连接2,……,网络连接N。第一设备10和第二设备20可以通过该多条网络连接进行多路径数据传输。
具体的,第一设备10和第二设备20可以将待传输的数据分为多条子流。其中,每一条子流对应一条路径,每个网络连接连通第一设备10和第二设备20之间的一条路径。
其中,每一条子流可以使用相同或者不同的传输协议来传输。例如,该传输协议可以为,如传输控制协议(Path Transmission Control Protocol,TCP)、流控制传输协议(Stream Control Transmission Protocol,SCTP)或者快速用户数据报互联网连接协议(Quick UDP Internet Connections,QUIC)等。
需要注意的是,第一设备10和第二设备20可以在建立上述N条网络连接的过程中,或者通过已建立的N条网络连接传输数据的过程中,协商传输策略。
其中,上述网络连接可以是WiFi连接,蜂窝连接(如4G LTE连接,5G NR连接,3G 连接,码分多址连接(Code Division Multiple Access,CDMA),2G连接等),蓝牙连接,数据传输线,近场通信NFC,红外,光保真(Light Fidelity,Li-fi)技术等,还可以是其他无线连接或者有线连接,对此,本申请不做限定。
需要说明的是,传输策略协商可以由多路径数据传输的发送端发起,也可以由多路径数据传输的接收端发起,对此,本申请不做限定。
其中,第一设备10和第二设备20可以是具有无线通信功能的电子设备,包括桌面型、膝上型、手持型、车载型用户终端(User Equipment,UE)设备等,例如智能手机、蜂窝电话、智能手表、台式机、平板电脑、智能电视盒,超级移动个人计算机(Ultra-mobilePersonal Computer,UMPC)、上网本、个人数字助理(Personal Digital Assistant,PDA)、便携式多媒体播放器(Portable Multimedia Player,PMP)、专用媒体播放器、消费类电子设备、可穿戴设备、AR(增强现实)/VR(虚拟现实)设备等其他类型的电子设备。第一设备10还可以是支持多路径传输协议的网元,包括网络侧设备,例如网关、接入路由器、核心路由器、前端路由器或者负载均衡器。第一设备10还可以是支持多路径传输协议的云端设备,例如云端服务器;其中,该云端服务器可以是应用服务器,一个应用服务器上可以运行有多种应用的数据。一些大的公司旗下有多个应用,例如,google旗下有google地图,google搜索等多个应用;腾讯(Tencent)旗下有各种游戏应用,还有腾讯视频,微信(wechat)、QQ音乐等,同一公司旗下的应用可共用服务器。云平台云服务的出现,也可能一台应用服务器上运行有多个属于不同公司的应用。也就是说,一个应用服务器可以作为多种应用的服务端,某些应用可能共用一些网络地址。
需要说明的是,第一设备10和第二设备20可以是同类的设备,例如,第一设备10和第二设备20均可以为通信终端类设备,如手机、智能手表、台式机、平板电脑、智能电视盒,UMPC、上网本、PDA或者PMP等。第一设备10和第二设备20也可以是不同类的设备。例如,第一设备10是通信终端类设备时,第二设备20可以是网络侧设备,如网关、应用服务器、接入路由器、核心路由器、前端路由器或者负载均衡器等。
示例性的,请参考图1B,其示出本申请实施例提供的一种数据传输方法的通信网络架构实例示意图。其中,上述第一设备10可以是图1B所示的手机100,第二设备20可以是图 1B所示的应用服务器200。例如,假设应用服务器200是邮件服务器,手机100上安装有应用客户端(如126邮箱)。其中,手机100可以周期性地从应用服务器200获取更新的邮件信息。
手机100和应用服务器200可以通过不同的网络节点建立用于获取用于邮件数据传输的多条路径。具体的,网络节点可以是WiFi网络的接入点(Access Point,AP)、路由器、或者 Winmax网络的接入点或者无线蜂窝移动网络的基站等等,本发明不限定无线网络的种类以及无线网络的接入节点具体的形式。并且,同一类型的无线网络是指同属于WiFi网络的接入节点,或者同属于Winmax网络,或者同属于无线蜂窝网络的接入节点如2G网络、3G网络或者4G网络或者5G网络等等。
例如,如图1B所示,手机100和应用服务器200可以通过两个网络节点(包括路由器120和LTE蜂窝网基站110)建立上述多条路径,用于承载上述子流多条路径。与路由器120和LTE蜂窝网基站110对应的,如图1B所示,手机100有两个网络地址,网络地址1和网络地址2。其中,网络地址1为中国移动的LTE蜂窝地址,网络地址2为中国电信的WiFi 地址。如图1B所示,应用服务器200有三个网络地址,网络地址a和网络地址b。其中,网络地址a为中国移动的LTE蜂窝地址,网络地址b为中国电信的WiFi地址。手机100与应用服务器200之间最多应该可以建立2*2=4条路径,包括路径1(WiFi-LTE路径),路径2 (WiFi-WiFi路径),路径3(LTE-WiFi路径)和路径4(LTE-LTE路径)。其中路径2,路径 4为同运营商的网络地址之间的网络连接,路径1,路径3为跨运营商的网络地址之间的网络连接。待传输数据最多可以拆分为4条子流分别通过上述4条路径从应用服务器200传输至手机100。
在一种应用场景中,手机100与应用服务器200可以在建立多路径连接的过程中,协商传输策略。具体的,手机100可以向应用服务器200发送请求消息,以请求与应用服务器200 建立多路径连接。该请求消息中携带有传输策略协商信息。该传输策略协商信息用于与应用服务器200协商进行多路径数据传输时使用的传输策略。其中,上述传输策略可以包括路径管理策略和/或数据调度策略。手机100与应用服务器200可以基于传输速率、时延、丢包率和吞吐率等一个或多个传输参数进行传输策略的协商。其中,上述传输参数包括但不限于传输速率、时延、丢包率和吞吐率。
上述路径管理(Path Manager,PM)策略用于指示手机100和应用服务器200基于各自的多个网络地址建立多条路径的机制。例如,PM策略可以指示手机100和应用服务器200建立路径的具体方式,过程和路径数量等。结合上述实例,手机100和应用服务器200之间最多可以建立4条路径,但是手机100和应用服务器200进行多路径数据传输时,具体需要建立几条路径则可以视具体情况而定,例如,可以根据上述传输参数(如传输速率、时延、丢包率和吞吐率等)来确定。
上述数据调度(Scheduler)策略则用于指示手机100和应用服务器200基于建立的路径进行数据调度的机制。例如,Scheduler策略可以指示手机100和应用服务器200将待传输数据拆分为子流的具体拆分比例,子流数量,汇聚方式和动态调整机制等。
多路径传输技术可以用在多种组网系统中,通常,若要通过多路径传输技术传递信息,信息的发送端和接收端之间应至少有一段链路支持多路径传输技术。图2A简单列举了三种可使用该技术的组网系统,为了描述方便,图2A中示意性画出了该多路径系统中的两条路径,分别使用WiFi技术和LTE网络。
如图2A所示,系统一中的手机100支持多路径传输技术,而应用服务器200不支持该技术。为了使应用服务器200可以与手机100进行多路径数据传输,本申请实施例中,可以为系统一中的应用服务器200设置一个支持多路径传输技术的代理设备(称为MPTCP代理,例如网关)。如此,应用服务器200便可以通过该MPTCP代理与手机100进行多路径数据传输。
如图2A中的系统二,手机100与应用服务器200均支持多路径传输技术。应用服务器 200可以通过多路径传输技术与手机100进行多路径数据传输。
如图2A中的系统三中,描述的是应用服务器200与应用服务器300之间进行通信的场景,这两个云端中,可以均支持该多径传输技术,也可以有至少有一端不支持该技术,不支持该技术的一端借助支持多路径传输技术的代理设备(例如网关)即可,如图2A中的系统三,示意的就是两个应用服务器都借助MPTCP代理,使得应用服务器200与应用服务器300之间使用该技术进行通信。
实际上,在使用多路径连接传输数据的不同场景下,往往对传输性能有不同的要求,例如低时延或者高吞吐量或者高可靠性(即丢包率低)等等。例如,在支持WiFi和LTE网络的手机使用多路径连接从网络硬盘下载文件,或者从云端到云端使用多路径连接进行大文件搬运的场景中,通常希望该连接有更高吞吐量。而在使用多路径连接进行实时的数据传输(如语音通信,电话会议等)的场景中,则希望该连接能低时延。以及在手机使用多路径连接通过视频网站尤其是直播的视频网站观看视频,或者玩游戏的场景中,通常希望该连接有更低的时延和更高吞吐量。
图2B简单描述了从软件架构上,本申请涉及的各种设备所通用的一部分架构,包括应用(APP)层,多路径传输层和IP层,其中多路径传输层可以认为替代的是目前较常见的TCP 层,在运行有各种应用的APP层与IP层之间。多路径传输层中一部分运行在操作系统的用户态,一部分运行在操作系统的内核态。由于子流可以使用多种传输协议,如TCP,SCTP以及QUIC等。本申请的技术方案实施在设备的软件中,例如可以是内核态的多路径传输层或者用户态的多路径传输层。更进一步的,本申请的一些技术方案使用到了多路径传输层中用于实现冗余传输模式的模块和用于实现多路径传输模式的模块,以及,用于实现本申请的方法的代码在运行时,可以认为是使得多路径传输层添加了一个新的模块。该新的模块可以用于通过冗余模式测量多条子流中最优路径的路径特征,以确定合适的传输模式或者传输路径来保障多路径传输连接的传输性能。图2A示意了三种多路径传输层的实现方式,本申请的方案可实施在这三种实现方式中的多路径传输层,每种实现方式中包括了一个连接中多路径传输层和子流层,其中多路径传输层运行有多路径传输协议,子流层示意了2个子流。上述的设备中可以包括该三种多路径传输层任一种,且由于应用层和IP层三种实现方式下类似,没有重复描绘。其中,左侧示意内核态的多路径传输层,其子流使用TCP/SCTP协议;中间示意用户态的MP层,其子流使用QUIC协议且内核态使用UDP协议;以及右侧示意用户态多路径传输层,其子流使用TCP/SCTP协议。
如图2C所示,为本申请提供的手机100与应用服务器200之间使用MPTCP技术进行通信的示意图。手机100的应用层客户端与应用服务器200的应用层之间建立了多路径传输连接,手机100应用层通过端口1,接入节点1到应用服务器200端口1’到应用服务器200应用层,可以认为是路径1;以及手机100应用层通过端口2,接入节点2到应用服务器200端口2’到应用服务器200应用层,可以认为是路径2。多路径传输协议是与TCP协议完全兼容的协议,多路径传输连接的所有管理信息都是通过TCP选项字段来传输,所以只要数据交互双方设备均支持多路径传输协议,则初始连接时交换MP_CAP(Multipath Capable)选项。
其中,图2C中的传输层,用于运行传输协议,维护与网络侧服务器建立的连接,其中运行有多路径传输协议。图2C中的应用层,用于操控和协调其他层的结构或模块完成任务及实现功能,包括手机100上安装的应用软件及应用客户端,如通讯录、时钟、Yutube客户端、微信(Wechat)客户端等。
如图3所示,为本申请实施例中手机100的硬件结构示意图。手机100包括处理器301,通信线路302,存储器303以及至少一个通信接口(图3中仅是示例性的以包括通信接口304 为例进行说明)。
处理器301可以是一个通用中央处理器(central processing unit,CPU),微处理器,处理电路(例如特定应用集成电路(application-specific integrated circuit,ASIC)),或一个或多个用于控制本申请方案程序执行的集成电路,处理器301可以包括一个或多个CPU,例如图3 中的CPU0和CPU1。
通信线路302可包括一通路,在上述组件之间传送信息。
通信接口304,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN) 等。
存储器303可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory, CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、存储介质(例如磁盘存储介质)或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路302与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器303用于存储执行本申请方案的计算机执行指令,其中,存储器303可以存储用于实现本申请实施例的方法的操作系统和应用程序,并由处理器301来控制执行。处理器301用于执行存储器303中存储的计算机执行指令,从而实现本申请下述实施例提供的数据传输方法。图3中示出的存储器303仅为示意图,该存储器还可以包括其他功能化的指令,对此,本发明对此不进行限定。
本申请实施例中的应用服务器200可以具有与手机100类似的硬件结构,如图4所示,为本申请实施例中应用服务器200的硬件结构示意图。其中,存储器403可以存储用于实现本申请实施例的方法的操作系统和应用程序,并由处理器401来控制执行。
下面将结合图1A-图4对本申请实施例提供的数据传输方法进行介绍。该方法的基本原理是:通过对多路径传输协议的扩展,使得使用多路径传输技术进行数据传输的收发双方可以在建链阶段和传输过程中进行传输策略的协商,可以动态的根据发端与收端的实际情况以及其他因素通过双方协商灵活地调整传输策略,包括路径管理策略和/或数据调度策略,提高用户体验度。
如图5所示,为本申请实施例提供的一种数据传输方法交互图一。该方法可以用于手机 100与应用服务器200之间的多路径连接,该方法可以包括:
S501、手机100向应用服务器200发送第一报文。
其中,该第一报文可以包括传输策略协商信息。其中,该传输策略协商信息用于与应用服务器200协商应用服务器200使用多路径连接与手机100传输数据时所使用的传输策略。
在一种可能的实现方式中,本申请实施例中手机100与应用服务器200协商的传输策略可以为路径管理策略和数据调度策略中的至少一种,可以是路径管理策略和数据调度策略二者都有,或者仅数据调度策略,或者仅路径管理策略。
其中,路径管理策略指示手机100的至少两个网络地址与应用服务器200的至少两个网络地址之间建立多路径连接的策略。例如,“default”路径管理策略,即不广播新的网络地址,但是可以被动接受传输对端的新网络地址发来的建链请求。又例如,“fullmesh”路径管理策略,即建立收发两端之间可以建立的所有路径;如图1B中,手机100与应用服务器200之间可以建立的路径有4条,那么根据该“fullmesh”策略,建立全部的4条路径。
其中,数据调度策略指示手机100使用多路径连接传输数据时所使用的数据分配策略。例如,最小时延优先策略、随机分配策略和冗余传输策略等。
其中,最小时延优先策略是指进行最低时延的数据传输。随机分配策略是指随机建立路径,例如:随机数为1时建立路径A和路径B进行数据传输,随机数为2时建立路径C和路径D进行数据传输;其中,不同随机数所对应的路径可以自定义。冗余传输策略是指在一个多路径传输连接的所有路径上,都传输相同的数据,即一个连接的数据被多个路径重复传输。
在一种可能的实现方式中,该传输策略协商信息可以包括第二策略信息,第三策略信息和第四策略信息中的至少一种。
其中,第二策略信息指示手机100使用多路径连接传输数据时所使用的传输策略。在一种可能的实现方式中,手机100使用多路径连接传输数据时所使用的传输策略可以理解为手机100当前使用的传输策略;例如,手机100当前使用冗余传输模式。其中,当前是指手机 100向应用服务器200发送第一报文的时刻。
第三策略信息指示手机100建议应用服务器200使用多路径连接传输数据时所使用的传输策略。在一种可能的实现方式中,手机100建议应用服务器200使用多路径连接传输数据时所使用的传输策略可以为第二策略信息指示的传输策略,即手机100当前使用的传输策略;或者,还可以为手机100支持的任一种传输策略。
在一种可能的实现方式中,手机100建议应用服务器200使用多路径连接传输数据时所使用的传输策略可以是手机100根据其获取的数据传输需求(例如,手机100中安装的某一个应用客户端的数据传输需求)确定的可满足该数据传输需求的传输策略。具体的过程,会在下文中详细介绍。
第四策略信息指示手机100可使用的至少一种传输策略。其中,“可使用”可以理解为“支持的”,即第四策略信息指示手机100支持的至少一种传输策略。例如,手机100可以支持最小时延优先/随机分配/冗余发送。
同样的,第二传输策略,第三策略信息和第四策略信息指示的传输策略也可以包括路径管理策略和/或数据调度策略。
S502、手机100接收来自应用服务器200的第二报文。
其中,该第二报文可以包括第一策略信息。该第一策略信息指示应用服务器200使用多路径连接时所使用的传输策略。
在一种可能的实现方式中,该第一策略信息由应用服务器200根据手机100发送的第一报文中包括的路径管理策略和/或数据调度策略,结合自身可使用的(即可以支持的)路径管理策略和/或数据调度策略确定。
具体的,若应用服务器200自身支持的路径管理策略和/或数据调度策略可以匹配手机100 的需求,该需求可以是第二策略信息指示的路径管理策略和/或数据调度策略,第三策略信息指示的路径管理策略和/或数据调度策略,也可以是第四策略信息指示的路径管理策略和/或数据调度策略。
在一种可能的实现方式中,该第一策略信息指示的传输策略为与手机100发送的传输策略协商信息对应的传输策略。
其中,“对应的”可以理解为相匹配的。例如,“与传输策略协商信息对应的传输策略”可以是传输策略协商信息指示的传输策略。也可以是常与传输策略协商信息指示的传输策略配套使用的传输策略(如,在某一具体场景下配套使用时可以满足预期的传输性能)。还可以是遵循某种匹配规则的与传输策略协商信息指示的传输策略匹配的传输策略(如,预设的匹配关系:若传输策略协商信息指示的传输策略B,第二设备使用传输策略C,其中,传输策略C 与传输策略B可以相同,也可以不同)。
其中,“相匹配的”还可以理解为传输性能接近。
其中,“性能接近”可以理解为路径管理策略或数据调度策略指示的性能属性相同。其中,性能属性是指该策略是高吞吐策略,还是低时延策略,还是冗余策略等。或者,“性能接近”可以理解为路径管理策略或数据调度策略指示的属性量化参考值接近。其中,属性量化参考值是指每一种属性的路径管理策略或数据调度策略对应的量化值。
在一种可能的实现方式中,该第一策略信息指示的传输策略为以下中的任一种:第二策略信息指示的传输策略、第三策略信息指示的传输策略或第四策略信息指示的任一种传输策略。
在一种可能的实现方式中,应用服务器200可以先确定自身支持的路径管理策略和/或数据调度策略是否可以匹配第三策略信息指示的路径管理策略和/或数据调度策略,即应用服务器200确定其是否支持手机100建议应用服务器200使用多路径连接传输数据时所使用的路径管理策略和/或数据调度策略。
若可以匹配,则应用服务器200确定第一策略信息指示该第三策略信息指示的对应路径管理策略和/或数据调度策略。若不能匹配,应用服务器200可以确定自身支持的路径管理策略和/或数据调度策略是否可以匹配第二策略信息指示的路径管理策略和/或数据调度策略,即手机100当前使用的传输策略。若可以匹配,则应用服务器200确定第一策略信息指示该第二策略信息指示的对应路径管理策略和/或数据调度策略。若不能匹配,应用服务器200确定第一策略信息指示其自身支持的,且与第二策略信息或者第三策略信息指示的路径管理策略和/或数据调度策略性能接近的路径管理策略和/或数据调度策略;或者,应用服务器200确定第一策略信息指示其自身支持的,且手机100支持的对应路径管理策略和/或数据调度策略。
例如,第三策略信息指示数据调度策略1,该数据调度策略1为高吞吐策略,应用服务器200不支持数据调度策略1,但是支持数据调度策略2,该策略也为高吞吐策略,因此,应用服务器200可以使用数据调度策略2与手机100进行数据传输。
又例如,表1为本申请实施例提供的一种手机100可以支持的数据调度策略的性能属性表,该表1的内容可以由手机100发送给应用客户端200的第一报文中包括的第四策略信息指示。如表1所示,手机100可使用的数据调度策略有scheduler策略1、scheduler策略2和 scheduler策略3。其中,scheduler策略1和scheduler策略2为属性为高吞吐的数据调度策略,其属性量化参考值分别为聚合率值1(例如1Tbps)和聚合率值2(例如1.2Tbps);scheduler 策略3为属性为低时延的数据调度策略,其属性量化参考值为低时延值(例如1μs)。
表1
数据调度策略 | 属性 | 属性量化参考值 |
scheduler策略1 | 高吞吐 | 聚合率值1Tbps |
Scheduler策略2 | 高吞吐 | 聚合率值1.2Tbps |
Scheduler策略3 | 低时延 | 低时延值1μs |
需要说明的是,对于应用服务器200根据手机100发送的第一报文中包括的路径管理策略,结合自身可以支持的路径管理策略确定第一策略信息中指示的路径管理策略,也可以参考上述确定第一策略信息中指示的数据调度策略的过程和方法。
在一种可能的实现方式中,应用服务器200在确定第一策略信息之后,也可以不向手机 100发送第二报文。直接使用该第一策略信息指示的传输策略与手机100传输数据。
例如:手机100发送的第一报文中包括手机100建议应用服务器200使用的传输策略,应用服务器200根据该信息确定其可以使用该手机100建议应用服务器200使用的传输策略,应用服务器200也可以不向手机100发送第一策略信息,直接使用确定的传输策略与手机100 传输数据。
S503、手机100与应用服务器根据协商结果传输数据。
其中,手机100基于该第一策略信息,使用与该第一策略信息对应的传输策略与应用服务器200传输数据。应用服务器200则使用第一策略信息指示的传输策略与手机100传输数据。
其中,“与该第一策略信息对应的传输策略”可以理解为与第一策略信息指示的传输策略相同,或者与第一策略信息指示的传输策略属性相同,或者与第一策略信息指示的传输策略属性量化参考值接近的传输策略。如上文所述,由于应用服务器200是根据第一报文中的传输策略协商信息确定的第一策略信息,具体的,第一策略信息指示的传输策略可以与传输策略协商信息中的传输策略相同,或者属性相同,或者量化参考值接近。因此,在协商完成后,手机100和应用服务器200各自使用的传输策略必然是“对应的”。
其中,第一策略信息以及传输策略协商信息指示的传输策略种类相同,且该传输策略的种类为路径管理策略和数据调度策略中的至少一种。
例如,传输策略协商信息指示的传输策略包括路径管理策略和数据调度策略,即该传输策略协商信息用于协商路径管理策略和数据调度策略,那么,应用服务器200回复给手机100 的第一策略信息则是针对该传输策略协商信息做出的反馈,即反馈协商路径管理策略和数据调度策略的协商结果。
在一种可能的实现方式中,手机100的协议栈可以根据多路径连接对应的数据传输需求,确定传输策略协商信息。
在一种可能的实现方式中,该多路径连接为多路径传输控制协议MPTCP连接,或者多路径快速用户数据报文传输协议MPQUIC连接。
如图6所示,为本申请实施例提供的一种多路径传输协议栈结构示意图。手机100和应用服务器200可以通过在MPTCP、MPQUIC协议上采用Linux开源电脑操作系统内核开源实现。
在一种可能的实现方式中,如图7所述,在S501之前,该方法还可以包括:
S504、手机100确定数据传输需求。
其中,该数据传输需求可以是手机100中安装的某一个应用客户端的数据传输需求。例如,微信(Wechat)客户端要求与应用服务器的数据传输时延低。又例如,爱奇艺客户端要求与应用服务器的数据传输要高吞吐。
S505、手机100根据数据传输需求确定传输策略协商信息。
例如,微信(Wechat)客户端要求与应用服务器的数据传输时延低,则手机100的协议栈根据该需求确定传输策略协商信息中包括的数据调度策略为属性为低时延的策略。又例如,爱奇艺客户端要求与应用服务器的数据传输要高吞吐,则手机100的协议栈根据该需求确定传输策略协商信息中包括的调度策略为属性为高吞吐的策略。
需要说明的是,图7所示的方法可以发生在手机100和应用服务器200使用多路径连接的阶段1和阶段2。
阶段1:如图8A和图8B所示的手机100与应用服务器200的建链阶段。在该阶段,手机100向应用服务器200发送第一报文。其中,建链阶段是指手机100在与应用服务器200 建立多路径传输连接的阶段。
其中,第一报文可以为握手报文;其中,该握手报文为手机100和应用服务器200建立主子流使用的握手报文,或者,该握手报文为手机100在和应用服务器200建立除主子流之外其他子流所使用的握手报文。在该可能的实现方式中,第一报文可以以以下三种实现方式完成:
实现方式(A):第一报文为MP_CAPABLE阶段的握手报文。
由于多路径传输连接建立的流程与TCP连接类似,为三次握手,在三次握手的报文中都携带有多路径能力交换(Multipath_Capable,MP_CAPABLE),双方交换以示收发两端设备均支持多路径传输协议,如图9A所示,为本申请实施例提供的一种第一报文交互流程示例一。手机100和应用服务器200建立主子流可以是在MP_CAPABLE阶段完成,上述第一报文为 MP_CAPABLE阶段的握手报文。
实现方式(B):第一报文为MP_JOIN阶段的握手报文。
由于在MP_CAPABLE阶段建立完主子流之后,手机100会将子流加入到MPTCP的连接中,该阶段为加入多路径子流(Multipath_Join,MP_JOIN)阶段,如图10A所示,为本申请实施例提供的一种第一报文交互流程示例二。手机100和应用服务器200建立其他子流可以是在MP_JOIN阶段完成,上述第一报文为MP_JOIN阶段的握手报文。
实现方式(C):第一报文为MPQUIC扩展报文。
同样的,第二报文也可以为握手报文;具体的,第二报文也可以是MP_CAPABLE阶段的握手报文或者MP_JOIN阶段的握手报文。或者,第二报文也可以为MPQUIC扩展报文。
阶段2:如图8B和图8C所示手机100与应用服务器200使用多路径技术进行数据传输的阶段。在该可能的实现方式中,第一报文可以以以下两种实现方式完成:
实现方式(1):第一报文为MPTCP扩展报文。
实现方式(2):第一报文为MPQUIC扩展报文。
其中,第一报文可以为数据报文或者数据传输过程中的控制报文。同样的,第二报文也可以为数据报文或者数据传输过程中的控制报文。具体的,数据传输过程中的第一报文和/或第二报文的报文格式,会在下文中具体介绍。
在一种可能的实现方式中,图8B中的S504可以是响应于检测到来自应用的数据传输需求发生了变化而触发的。
例如:手机100具有WiFi网络和LTE蜂窝网络,WiFi网络是免费的,但是LTE蜂窝网络是按照流量收费的。手机100和应用服务器200之间进行下载或者视频播放业务。利用多路径传输协议下载能够提高下载速度,改善用户体验,但是用户希望多路径协议尽可能的把数据调度到免费的WiFi网络上,少量数据调度到LTE网络上。则会在键链阶段进行S504-1、 S505-1、S501-1和S502-1,建议应用服务器200使用WiFi-first数据调度策略。然后根据协商好的传输策略传输数据。但是用户在传输数据过程中,发现仍然不能接受LTE流量使用过多的情况,希望不再通过LTE蜂窝网络建立的路径发送数据包,因此发起了一个数据传输阶段的传输策略协商(即S504-2、S505-2、S501-2和S502-2),建议应用服务器200使用no-LTE 调度。应用服务器200根据该建议则仅会在WiFi网络建立的路径上发送数据。
又例如,手机100具有多个网络地址,网络地址1是运营商A分配的,网络地址2是运营商B分配的。应用服务器200也具有多个网络地址,分别属于运营商A和运营商B。在建链阶段,手机100仅需要进行低时延的传输,因此手机100会在键链阶段进行S504-1、S505-1、S501-1和S502-1,建议应用服务器200使用low-latency路径管理策略。由于跨运营商的网络链路时延较高,应用服务器200根据该建议可以建立运营商A分配的网络地址1到应用服务器200对应的运营商A分配的网络地址的连接,以及运营商B分配的网络地址2到应用服务器200对应的运营商B分配的网络地址的连接,以满足低时延的传输诉求。然后根据协商好的传输策略传输数据。但是,在数据传输过程中,手机100又希望切换到相对高吞吐的服务,因此发起了一个数据传输阶段的传输策略协商(即S504-2、S505-2、S501-2和S502-2),建议应用服务器200使用fullmesh路径管理策略。应用服务器200根据该建议则增建跨运营商的两条路径这样一共可以通过4条路径进行数据传输。
在一种可能的实现方式中,图8C在初始建立连接时(即键链阶段),若应用没有数据传输需求,手机100和应用服务器200可以先使用默认传输策略进行传输,在检测到来自应用的数据传输需求之后,两者再进行传输策略的协商。
需要说明的是,手机100在与应用服务器200使用多路径技术进行数据传输的阶段进行传输策略协商时,传输策略的协商以及传输策略的切换都是执行在数据传输过程中的。也就是说,上述过程中多路径连接并没有断开,数据的传输并没有中断,因此不会影响用户的使用。
在一种可能的实现方式中,第一报文还可以包括:第一指示信息;其中,该第一指示信息用于指示第一报文中包括传输策略协商信息。
在一种可能的实现方式中,第一报文可以包括第一扩展位。其中,该传输策略协商信息位于第一报文的报文头的该第一扩展位。第一报文还可以包括第二扩展位;第一指示信息位于第一报文的第二扩展位。
在手机100在上述阶段1,即建链阶段向应用服务器200发送第一报文时。如图9B所示,为本申请实施例提供的一种实现方式(A)的第一报文的格式示例一。图9B中的A、B、C、D、E、F、G和H为对应的标识位,分别表示不同的语义。其中,B位是第二扩展位,用于标识第一指示信息,即标识第一报文中是否包括传输策略协商信息。具体的,如果B位为1,表示第一报文中包括传输策略协商信息。具体的传输策略协商信息则携带在第一扩展位。
又如图10B所示,为本申请实施例提供的一种实现方式(B)的第一报文的格式示例三。 A位是第二扩展位,用于标识第一指示信息,即标识第一报文中是否包括传输策略协商信息。具体的,如果A位为1,表示第一报文中包括传输策略协商信息。具体的传输策略协商信息则携带在第一扩展位。
第一指示信息还可以用于指示第一报文中是否包括PM策略协商信息或scheduler策略协商信息。该指示信息可以通过其他扩展位来携带。
如图9C所示,为本申请实施例提供的一种实现方式(A)的第一报文的格式示例二。如果B位为1,后续的C和D分别可以扩展为第三扩展位S和第四扩展位P,表示与图9B中C 和D不同的语义。如图9C所示,如果S位为1,则表明该第一报文中包括scheduler策略协商信息;如果P位为1,则表明该第一报文中包括PM策略协商信息。具体的传输策略协商信息则携带在第一扩展位。
又如图10C所示,为本申请实施例提供的一种实现方式(B)的第一报文的格式示例四。如果A位为1,后续的S和P分别可以扩展为第三扩展位和第四扩展位,如果S位为1,则表明该第一报文中包括scheduler策略协商信息;如果P位为1,则表明该第一报文中包括PM策略协商信息。具体的传输策略协商信息则携带在第一扩展位。
需要说明的是,图9B、图9C、图10B和图10C仅作为示例说明携带第一指示信息的扩展位,以及携带传输策略协商信息的扩展位,并不对各个扩展位的具体位置做出限定,具体各个扩展位的位置可以不限于,图9B和图9C中的位置。
同样的,第二报文也可以包括:第二指示信息;其中,该第二指示信息用于指示第二报文中包括第一策略信息。第二报文也可以包括第一扩展位和第二扩展位,其中第一策略信息位于第一报文的报文头的第一扩展位;第二指示信息位于第二报文的第二扩展位。对于第二报文的格式,也可以参考图9B、图9C、图10B和图10C中第一报文的格式。
在一种可能的实现方式中,第一扩展位为控制请求扩展位;第二扩展位为子类型subtype 扩展位。
如图11所示,为本申请实施例提供的一种实现方式(C)的第一报文的格式示例五。手机100与应用服务器200在QUIC协议的安全握手阶段进行scheduler策略和/或PM策略协商,扩展QUIC的transport parameter,包括子类型subtype扩展位和控制请求扩展位来实现策略协商的功能。其中,子类型subtype规定了控制请求报文的格式,具体可以参考表2。
表2
子类型Subtype | 控制请求 |
Scheduler策略协商 | Scheduler策略协商信息 |
PM策略协商 | PM策略协商信息 |
Scheduler策略和PM策略同时协商 | Scheduler策略协商信息&PM策略协商信息 |
其中,对图11所示的MPQUIC扩展报文,传输策略的协商可以分为1RTT协商和0RTT协商。其中,1RTT协商是指需要一个往返时延来完成协商过程,0RTT协商则是指无需经过往返时延则可完成协商过程。1RTT协商发生的场景可以是手机100与应用服务器200的首次多路径通信,具体过程为手机100先与应用服务器200进行公私钥配对,之后进行多路径通信,如图14A所示。1RTT协商发生的场景可以是手机100与应用服务器200的非首次多路径通信,即在之前的多路径通信中手机100与应用服务器200分别已经获取了公私钥,那么就可以直接进行多路径通信,如图14B所示。
在手机100在上述阶段2,即数据传输阶段向应用服务器200发送第一报文时。如图12 所示,为本申请实施例提供的一种实现方式(1)的第一报文的格式示例六。图12中的12A为现有的MPTCP报文,图12中的12B为本申请实施例的MPTCP扩展报文。MPTCP扩展报文相比于现有的MPTCP报文将RR位分别作为第二扩展位和第三扩展位,用于分别携带指示第一报文中包括scheduler策略协商信息的指示信息,以及指示第一报文中包括PM策略协商信息的指示信息。其中,若X位为1,表明第一报文中包括scheduler策略协商信息;若Y 位为1,表明第一报文中包括PM策略协商信息。具体的传输策略协商信息则携带在第一扩展位。
又如图13所示,为本申请实施例提供的一种实现方式(2)的第一报文的格式示例七。手机100与应用服务器200在使用MPTCP进行数据传输阶段进行scheduler策略和/或PM策略协商,扩展新的MPTCP的扩展选项来实现,包括子类型subtype扩展位和控制请求扩展位来实现策略协商的功能。其中,子类型subtype规定了控制请求报文的格式,具体也可以参考上文中的表2。
可以理解的是,手机100为了实现上述任一个实施例的功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以对手机100进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
比如,以采用集成的方式划分各个功能模块的情况下,如图15所示,为本申请实施例提供的一种手机的结构示意图。该手机100可以包括发送模块1510和接收模块1520。
其中,发送模块1510用于向应用服务器200发送包括传输策略协商信息的第一报文;其中,该传输策略协商信息用于协商应用服务器200使用多路径连接时所使用的传输策略。接收模块1520用于接收来自应用服务器200的包括有第一策略信息的第二报文;其中,该所述第一策略信息指示应用服务器200使用多路径连接时所使用的传输策略。发送模块1510和接收模块1520还用于,基于第二报文中的第一策略信息,使用与该第一策略信息对应的传输策略与应用服务器200传输数据。其中,第一策略信息以及传输策略协商信息指示的传输策略种类相同,且传输策略的种类为路径管理策略和数据调度策略中的至少一种。
在一种可能得到结构中,手机100还可以包括分析模块1530,用于确定传输策略协商信息。
同样,也可以以采用集成的方式将应用服务器200划分为各个功能模块。如图16所示,为本申请实施例提供的一种应用服务器的结构示意图。该应用服务器200可以包括发送模块 1610、接收模块1620和分析模块1630。
其中,接收模块1620用于从手机100接收包括有传输策略协商信息的第一报文;其中,该传输策略协商信息用于协商应用服务器200使用多路径连接时所使用的传输策略。分析模块1630用于根据第一报文中的输策略协商信息确定第一策略信息;其中,该第一策略信息指示应用服务器200使用多路径连接时所使用的传输策略。发送模块1610用于使用第一策略信息指示的传输策略向手机100发送数据。接收模块1620还用于,使用第一策略信息指示的传输策略从手机100接收数据。
需要说明的是,上述手机100的发送模块1510和接收模块1520,以及应用服务器200 的发送模块1610和接收模块1620可以由射频电路构成。具体的,发送模块1510、接收模块 1520、发送模块1610和接收模块1620可以通过射频电路完成本申请实施例中无线信号的接收和发送。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频电路还可以通过无线通信和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短消息服务等。
在一种可选的方式中,当使用软件实现数据传输时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地实现本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
结合本申请实施例所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于探测装置中。当然,处理器和存储介质也可以作为分立组件存在于探测装置中。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的用户设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等) 或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (32)
1.一种数据传输方法,其特征在于,所述方法用于第一设备与第二设备之间的多路径连接,所述方法包括:
所述第一设备向所述第二设备发送第一报文,所述第一报文包括传输策略协商信息,所述传输策略协商信息指示所述第一设备使用所述多路径连接传输数据时所使用的第一传输策略,所述第一传输策略用于确定所述第二设备使用所述多路径连接传输数据时所使用的第二传输策略;
所述第一设备接收来自所述第二设备的第二报文,所述第二报文包括第一策略信息,所述第一策略信息指示所述第二设备使用所述多路径连接时所使用的所述第二传输策略;
所述第一设备基于所述第一策略信息,使用与所述第一策略信息对应的第三传输策略与所述第二设备传输数据;
其中,所述第一策略信息指示的所述第二传输策略以及所述传输策略协商信息指示的所述第一传输策略的种类相同,且所述传输策略的种类为路径管理策略和数据调度策略中的至少一种。
2.根据权利要求1所述的方法,其特征在于,所述传输策略协商信息还包括第三策略信息和/或第四策略信息;
其中,所述第三策略信息指示所述第一设备建议所述第二设备使用所述多路径连接传输数据时所使用的传输策略,所述第四策略信息指示所述第一设备可使用的至少一种传输策略。
3.根据权利要求1或2所述的方法,其特征在于,所述路径管理策略指示建立所述第一设备与所述第二设备之间的多路径连接的至少一条路径的策略,所述数据调度策略指示传输数据时所述多路径连接分配数据的策略。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一报文和所述第二报文均包括第一扩展位;所述传输策略协商信息位于所述第一报文的报文头的第一扩展位,所述第一策略信息位于所述第二报文的报文头的第一扩展位。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一报文还包括:第一指示信息;其中,所述第一指示信息用于指示所述第一报文中包括所述传输策略协商信息。
6.根据权利要求5所述的方法,其特征在于,所述第二报文还包括:第二指示信息;其中,所述第二指示信息用于指示所述第二报文包括所述第一策略信息。
7.根据权利要求6所述的方法,其特征在于,所述第一报文和所述第二报文均包括第二扩展位;所述第一指示信息位于所述第一报文的第二扩展位,所述第二指示信息位于所述第二报文的报文头中的第二扩展位。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:所述第一设备的协议栈根据所述多路径连接对应的应用的数据传输需求,确定所述传输策略协商信息。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述多路径连接为多路径传输控制协议MPTCP连接,或者多路径快速用户数据报文传输协议MPQUIC连接。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述第一报文和所述第二报文均为数据报文,或者所述第一报文和所述第二报文均为数据传输过程中的控制报文。
11.根据权利要求1-9任一项所述的方法,其特征在于,所述第一报文和所述第二报文均为握手报文;
其中,所述握手报文为所述第一设备和所述第二设备建立主子流使用的握手报文,或者,所述握手报文为所述第一设备在和所述第二设备建立除主子流之外的其他子流所使用的握手报文。
12.一种数据传输方法,其特征在于,所述方法用于第一设备与第二设备之间的多路径连接,所述方法包括:
所述第二设备从所述第一设备接收第一报文,所述第一报文包括传输策略协商信息,所述传输策略协商信息指示所述第一设备使用所述多路径连接传输数据时所使用的第一传输策略,所述第一传输策略用于确定所述第二设备使用所述多路径连接传输数据时所使用的第二传输策略;
所述第二设备基于所述第一报文,向所述第一设备发送第二报文,所述第二报文包括第一策略信息,所述第一策略信息指示所述第二设备使用所述多路径连接时所使用的所述第二传输策略;
所述第二设备使用所述第一策略信息指示的所述第二传输策略,与所述第一设备传输数据;
其中,所述第一策略信息指示的所述第二传输策略以及所述传输策略协商信息指示的所述第一传输策略的种类相同,所述传输策略的种类为路径管理策略和数据调度策略中的至少一种。
13.根据权利要求12所述的方法,其特征在于,所述传输策略协商信息还包括第三策略信息和/或第四策略信息;
其中,所述第三策略信息指示所述第一设备建议所述第二设备使用所述多路径连接传输数据时所使用的传输策略,所述第四策略信息指示所述第一设备可使用的至少一种传输策略。
14.根据权利要求13所述的方法,其特征在于,所述传输策略协商信息包括所述第三策略信息;
在所述第二设备可使用所述第三策略信息指示的传输策略的情况下,所述第一策略信息指示的传输策略为所述第三策略信息指示的传输策略。
15.根据权利要求14所述的方法,其特征在于,所述传输策略协商信息还包括所述第四策略信息;
在所述第二设备不可使用所述第三策略信息指示的传输策略的情况下,所述第一策略信息指示的传输策略为所述第二设备可使用的,且与所述第三策略信息指示的传输策略性能接近的传输策略;或者,
所述第一策略信息指示的传输策略为所述第四策略信息指示的一种传输策略。
16.根据权利要求13所述的方法,其特征在于,
在所述第二设备可使用所述第一传输策略的情况下,所述第二传输策略为所述第一传输策略。
17.根据权利要求16所述的方法,其特征在于,所述传输策略协商信息还包括所述第四策略信息;
在所述第二设备不可使用所述第一传输策略的情况下,所述第二传输策略为所述第二设备可使用的,且与所述第一传输策略性能接近的传输策略;或者,
所述第二传输策略为所述第四策略信息指示的一种传输策略。
18.根据权利要求12-17任一项所述的方法,其特征在于,所述路径管理策略指示建立所述第一设备的至少两个网络地址与所述第二设备的至少两个网络地址之间多路径连接的策略,所述数据调度策略指示所述第一设备使用所述多路径连接传输数据时所使用的数据分配策略。
19.根据权利要求18所述的方法,其特征在于,所述第一报文和所述第二报文均包括第一扩展位;所述传输策略协商信息位于所述第一报文的报文头的第一扩展位,所述第一策略信息位于所述第二报文的报文头的第一扩展位。
20.根据权利要求12-19任一项所述的方法,其特征在于,所述第一报文还包括:第一指示信息;其中,所述第一指示信息用于指示所述第一报文中包括所述传输策略协商信息。
21.根据权利要求20所述的方法,其特征在于,所述第二报文还包括:第二指示信息;其中,所述第二指示信息用于指示所述第二报文包括所述第一策略信息。
22.根据权利要求12-21任一项所述的方法,其特征在于,所述第一报文和所述第二报文均为数据报文,或者所述第一报文和所述第二报文均为数据传输过程中的控制报文。
23.根据权利要求12-21任一项所述的方法,其特征在于,所述第一报文和所述第二报文均为握手报文;
其中,所述握手报文为所述第一设备和所述第二设备建立主子流使用的握手报文,或者,所述握手报文为所述第一设备在和所述第二设备建立除主子流之外其他子流所使用的握手报文。
24.根据权利要求12-23任一项所述的方法,其特征在于,所述多路径连接为多路径传输控制协议MPTCP连接,或者多路径快速用户数据报文传输协议MPQUIC连接。
25.一种第一设备,其特征在于,所述第一设备与第二设备建立了多路径连接,所述第一设备包括:
发送模块,用于向所述第二设备发送第一报文,所述第一报文包括传输策略协商信息,所述传输策略协商信息指示所述第一设备使用所述多路径连接传输数据时所使用的第一传输策略,所述第一传输策略用于确定所述第二设备使用所述多路径连接传输数据时所使用的第二传输策略;
接收模块,用于接收来自所述第二设备的第二报文,所述第二报文包括第一策略信息,所述第一策略信息指示所述第二设备使用所述多路径连接时所使用的所述第二传输策略;
所述发送模块还用于,基于所述第一策略信息,使用与所述第一策略信息对应的第三传输策略向所述第二设备发送数据;
所述接收模块还用于,基于所述第一策略信息,使用与所述第一策略信息对应的传输策略从所述第二设备接收数据;
其中,所述第一策略信息指示的所述第二传输策略以及所述传输策略协商信息指示的所述第一传输策略的种类相同,且所述传输策略的种类为路径管理策略和数据调度策略中的至少一种。
26.根据权利要求25所述的第一设备,其特征在于,所述第一设备还包括:
分析模块,用于使用所述第一设备的协议栈,根据所述多路径连接对应的应用的数据传输需求,确定所述传输策略协商信息。
27.一种第二设备,其特征在于,所述第二设备与第一设备建立了多路径连接,所述第二设备包括:
接收模块,用于从所述第一设备接收第一报文,所述第一报文包括传输策略协商信息,所述传输策略协商信息指示所述第一设备使用所述多路径连接传输数据时所使用的第一传输策略,所述第一传输策略用于确定所述第二设备使用所述多路径连接传输数据时所使用的第二传输策略;
发送模块,用于基于所述第一报文,向所述第一设备发送第二报文,所述第二报文包括第一策略信息,所述第一策略信息指示所述第二设备使用所述多路径连接时所使用的所述第二传输策略;
所述发送模块,还用于使用所述第一策略信息指示的所述第二传输策略,向所述第一设备发送数据;
所述接收模块,还用于使用所述第一策略信息指示的所述第二传输策略,从所述第一设备接收数据;
其中,所述第一策略信息指示的所述第二传输策略以及所述传输策略协商信息指示的所述第一传输策略的种类相同,所述传输策略的种类为路径管理策略和数据调度策略中的至少一种。
28.根据权利要求27所述的第二设备,其特征在于,所述第二设备还包括:
分析模块,用于根据所述传输策略协商信息确定第一策略信息,所述第一策略信息指示所述第二设备使用所述多路径连接时所使用的所述第二传输策略。
29.一种第一设备,其特征在于,所述第一设备与第二设备建立了多路径连接,所述第一设备包括:相互耦合的存储介质,射频电路和处理电路;所述存储介质,用于存储计算机程序代码,所述计算机程序代码包括指令;
所述射频电路,用于进行无线信号的发送和接收;
当所述处理电路执行所述指令时,所述第二设备执行如权利要求1-11任一项所述的方法。
30.一种第二设备,其特征在于,所述第二设备与第一设备建立了多路径连接,所述第二设备包括:相互耦合的存储介质,射频电路和处理电路;
所述存储介质,用于存储计算机程序代码,所述计算机程序代码包括指令;
所述射频电路,用于进行无线信号的发送和接收;
当所述处理电路执行所述指令时,所述第二设备执行如权利要求12-24任一项所述的方法。
31.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机执行指令,所述计算机执行指令被处理电路执行时实现如权利要求1-11任一项或者权利要求12-24任一项所述的数据传输方法。
32.一种芯片系统,其特征在于,包括:所述芯片系统包括处理电路、存储介质,所述存储介质中存储有指令;所述指令被所述处理电路执行时,实现如权利要求1-11任一项或者权利要求12-24任一项所述的数据传输方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910351873.XA CN111866956B (zh) | 2019-04-28 | 2019-04-28 | 一种数据传输方法及对应的设备 |
PCT/CN2019/128482 WO2020220705A1 (zh) | 2019-04-28 | 2019-12-25 | 一种数据传输方法及对应的设备 |
US17/145,932 US11277313B2 (en) | 2019-04-28 | 2021-01-11 | Data transmission method and corresponding device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910351873.XA CN111866956B (zh) | 2019-04-28 | 2019-04-28 | 一种数据传输方法及对应的设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111866956A CN111866956A (zh) | 2020-10-30 |
CN111866956B true CN111866956B (zh) | 2023-07-14 |
Family
ID=72966346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910351873.XA Active CN111866956B (zh) | 2019-04-28 | 2019-04-28 | 一种数据传输方法及对应的设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11277313B2 (zh) |
CN (1) | CN111866956B (zh) |
WO (1) | WO2020220705A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11523305B2 (en) | 2019-09-25 | 2022-12-06 | Cisco Technology, Inc. | Traffic steering and policy combining |
US11483279B2 (en) * | 2019-11-15 | 2022-10-25 | Cisco Technology, Inc. | Domain name system as an authoritative source for multipath mobility policy |
CN113014483B (zh) * | 2019-12-19 | 2023-04-18 | 华为技术有限公司 | 一种多路径传输的方法及设备 |
US11558287B2 (en) | 2020-02-14 | 2023-01-17 | Cisco Technology, Inc. | Policy combining utilizing purpose |
WO2021170248A1 (en) * | 2020-02-28 | 2021-09-02 | Lenovo (Singapore) Pte. Ltd. | Access traffic steering using a plurality of steering connections over different access networks |
CN114500626A (zh) * | 2020-11-12 | 2022-05-13 | 华为技术有限公司 | 传输数据的方法、装置、设备及计算机可读存储介质 |
CN112383948B (zh) * | 2020-11-13 | 2022-12-20 | Oppo广东移动通信有限公司 | 数据传输方法、装置、存储介质及电子设备 |
CN114696902A (zh) * | 2020-12-28 | 2022-07-01 | 华为技术有限公司 | 一种可见光通信方法以及通信装置 |
CN112286874B (zh) * | 2021-01-04 | 2021-07-02 | 北京东方通软件有限公司 | 一种基于时间的文件管理方法 |
CN113676404A (zh) * | 2021-08-23 | 2021-11-19 | 北京字节跳动网络技术有限公司 | 数据传输方法、装置、设备、存储介质及程序 |
CN115866075A (zh) * | 2021-09-27 | 2023-03-28 | 华为技术有限公司 | 一种数据的传输方法及设备 |
CN114745450B (zh) * | 2022-04-19 | 2024-06-25 | 苏州盛科科技有限公司 | 芯片端口链路训练连接的方法及应用 |
CN117460017A (zh) * | 2023-10-11 | 2024-01-26 | 北京讯腾智慧科技股份有限公司 | 一种北斗基准站数据传输及检测系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101925125A (zh) * | 2010-04-23 | 2010-12-22 | 清华大学 | 一种与移动ip结合的具有移动性的多路径tcp的方法 |
CN102215530A (zh) * | 2011-05-27 | 2011-10-12 | 上海华为技术有限公司 | 一种数据流传输方法及相关设备、系统 |
CN103634299A (zh) * | 2013-11-14 | 2014-03-12 | 北京邮电大学 | 基于多连接的实时流媒体传输终端与方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107911844B (zh) * | 2013-01-24 | 2021-10-01 | 华为技术有限公司 | 控制分流的方法、ue、网络设备及服务器 |
US9888042B2 (en) * | 2013-05-21 | 2018-02-06 | Citrix Systems, Inc. | Systems and methods for multipath transmission control protocol connection management |
US10587498B2 (en) * | 2015-03-12 | 2020-03-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and arrangements for multipath traffic aggregation |
US20170346724A1 (en) * | 2016-05-25 | 2017-11-30 | Doru Calin | Dynamic multi-path control and adaptive end-to-end content delivery over wireless media |
US11202230B2 (en) * | 2017-05-19 | 2021-12-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for enabling multipath transmission |
CN111213401B (zh) * | 2017-08-18 | 2023-08-29 | 诺基亚技术有限公司 | 用于无线混合接入网络的业务分布控制 |
US20210058329A1 (en) * | 2018-01-26 | 2021-02-25 | Idac Holdings, Inc. | Application mobility based on enhanced mptcp |
WO2020018185A1 (en) * | 2018-07-17 | 2020-01-23 | Futurewei Technologies, Inc. | Systems and methods to implement path aware networking |
-
2019
- 2019-04-28 CN CN201910351873.XA patent/CN111866956B/zh active Active
- 2019-12-25 WO PCT/CN2019/128482 patent/WO2020220705A1/zh active Application Filing
-
2021
- 2021-01-11 US US17/145,932 patent/US11277313B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101925125A (zh) * | 2010-04-23 | 2010-12-22 | 清华大学 | 一种与移动ip结合的具有移动性的多路径tcp的方法 |
CN102215530A (zh) * | 2011-05-27 | 2011-10-12 | 上海华为技术有限公司 | 一种数据流传输方法及相关设备、系统 |
CN105704759A (zh) * | 2011-05-27 | 2016-06-22 | 上海华为技术有限公司 | 一种数据流传输方法及网络设备 |
CN103634299A (zh) * | 2013-11-14 | 2014-03-12 | 北京邮电大学 | 基于多连接的实时流媒体传输终端与方法 |
Also Published As
Publication number | Publication date |
---|---|
US11277313B2 (en) | 2022-03-15 |
WO2020220705A9 (zh) | 2020-12-03 |
CN111866956A (zh) | 2020-10-30 |
WO2020220705A1 (zh) | 2020-11-05 |
US20210135944A1 (en) | 2021-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111866956B (zh) | 一种数据传输方法及对应的设备 | |
CN108881008B (zh) | 一种数据传输的方法、装置和系统 | |
US9253015B2 (en) | Transparent proxy architecture for multi-path data connections | |
EP3694160B1 (en) | Date transmission method, apparatus and device | |
US10397379B2 (en) | Robust multipath TCP stateless connection establishment | |
US9762702B2 (en) | Multipath TCP signaling with application specific tags | |
CN102571756B (zh) | 文件系统会话中的多信道连接 | |
US8265050B2 (en) | System and method for sharing a payload among mobile devices in a wireless network | |
WO2020024609A1 (zh) | 网络切换方法、电子设备以及芯片子系统 | |
EP3257203B1 (en) | Method and device for handling multi path connections | |
US8885504B2 (en) | Method, apparatus and system for bandwidth aggregation of mobile internet access node | |
US9438499B2 (en) | Approximation of the physical location of devices and transitive device discovery through the sharing of neighborhood information using wireless or wired discovery mechanisms | |
US20150237525A1 (en) | Traffic Shaping and Steering for a Multipath Transmission Control Protocol Connection | |
US20170063699A1 (en) | Method and apparatus for configuring multi-paths using segment list | |
CN113543219B (zh) | 通信方法和装置 | |
CN111107672B (zh) | 一种建立多路径连接的子流的方法、装置和系统 | |
CN110944358B (zh) | 数据传输方法和设备 | |
CN106537867A (zh) | 一种数据传输方法、装置和系统 | |
WO2021008591A1 (zh) | 数据传输方法、装置及系统 | |
WO2016162501A1 (en) | Method and system for the scheduling of packets in a bundling scenario based on tcp tunnels and native tcp information | |
CN114071494A (zh) | 通信方法和装置 | |
JP6968990B2 (ja) | サービス品質を決定するための方法および装置、ならびにプログラム | |
US20140068092A1 (en) | Management and optimization of wireless communications multiplexed over multiple layer-three transports with indefinite duration layer-two sessions | |
CN112838983A (zh) | 数据传输方法、系统、设备、代理服务器及存储介质 | |
JP7379476B2 (ja) | ワイヤレスメッシュネットワークにおけるマルチバンド通信 |
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 |