CN109600248B - 服务质量的确定方法、装置及存储介质 - Google Patents
服务质量的确定方法、装置及存储介质 Download PDFInfo
- Publication number
- CN109600248B CN109600248B CN201710944073.XA CN201710944073A CN109600248B CN 109600248 B CN109600248 B CN 109600248B CN 201710944073 A CN201710944073 A CN 201710944073A CN 109600248 B CN109600248 B CN 109600248B
- Authority
- CN
- China
- Prior art keywords
- message
- length
- mptcp
- packet
- target
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000005540 biological transmission Effects 0.000 claims abstract description 28
- 238000004806 packaging method and process Methods 0.000 claims abstract description 18
- 239000012634 fragment Substances 0.000 claims description 45
- 238000004891 communication Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 3
- 238000005538 encapsulation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2876—Pairs of inter-processing entities at each side of the network, e.g. split proxies
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5022—Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
-
- 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/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5006—Creating or negotiating SLA contracts, guarantees or penalties
-
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- 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/08—Protocols for interworking; Protocol conversion
-
- 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]
-
- 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
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种服务质量的确定方法、装置及存储介质。该方法包括:接收第一网络协议IP报文,第一IP报文包括用户数据包协议UDP报文和第一IP头;根据第一IP报文的信息确定UDP报文所属的目标服务质量QoS等级;将UDP报文划分为至少两个分组;将至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文;将每个MPTCP报文封装为至少一个第二IP报文,至少一个第二IP报文中目标IP报文的净荷的长度等于目标QoS等级对应的字节长度;通过与对端设备之间的MPTCP连接向对端设备发送至少一个第二IP报文,以使对端设备根据目标IP报文的净荷的长度确定目标QoS等级。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种服务质量的确定方法、装置及存储介质。
背景技术
多路径传输控制协议(Multipath Transmission Control Protocol,MPTCP)是一种利用多条路径并发传输的传输层协议,可以提高端到端的吞吐率,增加网络利用率。网络中的业务主要分传输控制协议(Transmission Control Protocol,TCP)业务和用户数据包协议(User Datagram Protocol,UDP)业务,TCP和UDP的协议不同,所以TCP业务流和UDP业务流在MPTCP中采用不同的方式传输。
UDP业务流在MPTCP中通常采用隧道技术进行传输,即路由器等设备在接收到UDP报文后,在封装了UDP报文的网络协议(Internet Protocol,IP)报文外封装上MPTCP头和新的IP头,然后可以通过MPTCP连接发送给对端。在封装UDP报文的原IP报文(如原IP报文的IP头、该UDP报文的UDP头)中包括服务质量(Quality of Service,QoS)信息,该QoS信息可以用于确定UDP报文的QoS等级。
UDP业务流在MPTCP中传输时,在原UDP报文外封装上新的TCP头和IP头,而UDP报文最外侧封装的IP头中没有QoS信息,所以接收UDP报文的对端设备在接收UDP报文后,无法获取该QoS信息,进而无法确定该UDP报文的QoS等级,因此无法准确的对UDP报文进行对应的QoS处理。
发明内容
本申请提供了一种服务质量的确定方法、装置及存储介质,能够解决无法准确的对UDP报文进行对应的QoS处理。
第一方面,本申请提供了一种服务质量的确定的方法,包括:
接收第一网络协议IP报文,第一IP报文包括用户数据包协议UDP报文和第一IP头;
根据第一IP报文的信息确定UDP报文所属的目标服务质量QoS等级;
将UDP报文划分为至少两个分组;
将至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文;
将每个MPTCP报文封装为至少一个第二IP报文,至少一个第二IP报文中目标IP报文的净荷的长度等于目标QoS等级对应的字节长度;
通过与对端设备之间的MPTCP连接向对端设备发送至少一个第二IP报文,以使对端设备根据目标IP报文的净荷的长度确定目标QoS等级。
本申请中,将接收UDP报文划分为至少两个组,每个组封装为MPTCP报文后,被封装为至少一个第二IP报文,并且至少一个第二IP报文中目标IP报文的净荷的长度等于目标QoS等级对应的字节长度,即通过目标IP报文的净荷的长度来表示同一个MPTCP报文的目标QoS等级。如此本申请中,将封装的第二IP报文通过MPTCP连接发送给对端设备后,对端设备可以根据目标IP报文的净荷的长度准确的确定出同一MPTCP报文的目标QoS等级,进而准确的对UDP报文进行对应的QoS处理,避免了对端设备因UDP报文最外侧封装的IP头中没有QoS信息,而无法确定对UDP报文进行对应的QoS处理的问题。
结合第一方面,在第一方面的第一种实施方式中,将每个MPTCP报文封装为至少一个第二IP报文,包括:
对于每个MPTCP报文中第一MPTCP报文,将第一MPTCP报文划分为至少两个MPTCP报文分片,至少两个MPTCP报文分片中目标MPTCP报文分片的长度等于目标QoS等级对应的字节长度,第一MPTCP报文的长度大于目标QoS等级对应的字节长度;
将至少两个MPTCP报文分片封装为对应的第二IP报文,目标MPTCP报文分片对应的第二IP报文为目标IP报文。
结合第一方面或上述任一种实施方式,在第一方面的第二种实施方式中,将每个MPTCP报文封装为至少一个第二IP报文,包括:
对于每个MPTCP报文中第二MPTCP报文,在第二MPTCP报文中添加填充数据,使添加填充数据后的第二MPTCP报文的长度等于目标QoS等级对应的字节长度,第二MPTCP报文的长度小于目标QoS等级对应的字节长度;
将添加填充数据后的第二MPTCP报文封装为对应的第二IP报文,添加填充数据后的第二MPTCP报文所对应的第二IP报文为目标IP报文。
结合第一方面或上述任一种实施方式,在第一方面的第三种实施方式中,目标IP报文为至少一个第二IP报文中的首个IP报文。
结合第一方面或上述任一种实施方式,在第一方面的第四种实施方式中,至少两个分组中每个分组的长度和第一IP头的长度之和小于或等于最大传输单元MTU与第一长度之间的差值,第一长度表示每个分组对应的MPTCP头的长度和对应的第二IP报文的IP头的长度之和。
结合第一方面或上述任一种实施方式,在第一方面的第五种实施方式中,至少一个分组中每个分组的长度和第一IP头的长度之和小于或等于预设长度,预设长度为MTU与第一预设值之间的差值,第一预设值表示MPTCP头长度的最大值和IP头长度的最大值之和。
结合第一方面或上述任一种实施方式,在第一方面的第六种实施方式中,在将每个MPTCP报文封装为至少一个第二IP报文之前,还包括:
根据QoS等级与字节长度之间对应关系,确定目标QoS等级对应的字节长度。
结合第一方面或上述任一种实施方式,在第一方面的第七种实施方式中,QoS等级与字节长度之间的对应关系为预先设置,对应关系中的各QoS等级对应的字节长度的最大值小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
结合第一方面或上述任一种实施方式,在第一方面的第八种实施方式中,将至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文,包括:
对每个分组封装第一IP头,第一IP头中表示净荷长度的字段修改为对应分组的长度;
将封装第一IP头后的每个分组封装为MPTCP报文。
第二方面,本申请提供了一种服务质量的确定方法,包括:
通过与对端设备之间的多路径传输控制协议MPTCP连接接收对端设备发送的属于同一MPTCP报文的至少一个网络协议IP报文;
获取至少一个IP报文中目标IP报文的净荷的长度;
根据目标IP报文的净荷的长度确定至少一个IP报文的目标服务质量QoS等级。
本申请中,对端设备通过目标IP报文中净荷的长度来表示同一个MPTCP报文的目标QoS等级,所以在接收属于同一MPTCP报文的至少一个IP报文后,可以根据至少一个IP报文中目标IP报文的净荷的长度准确的确定出同一MPTCP报文的目标QoS等级,进而准确的对UDP报文进行对应的QoS处理,避免了因UDP报文最外侧封装的IP头中没有QoS信息,而无法确定对UDP报文进行对应的QoS处理的问题。
结合第二方面,在第二方面的第一种实施方式中,目标IP报文为至少一个IP报文中首个IP报文。
结合第二方面或第二方面的第一种实施方式,目标IP报文的净荷的长度小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
第三方面,本申请提供了一种服务质量的确定装置,包括:
接收单元,用于接收第一网络协议IP报文,第一IP报文包括用户数据包协议UDP报文和第一IP头;
确定单元,用于根据第一IP报文的信息确定UDP报文所属的服务质量目标QoS等级;
分组单元,用于将UDP报文划分为至少两个分组;
封装单元,用于将至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文;
封装单元还用于将每个MPTCP报文封装为至少一个第二IP报文,至少一个第二IP报文中目标IP报文的净荷的长度等于目标QoS等级对应的字节长度;
发送单元,用于通过与对端设备之间的MPTCP连接向对端设备发送至少一个第二IP报文,以使对端设备根据目标IP报文的净荷的长度确定目标QoS等级。
结合第三方面,在第三方面的第一种实施方式中,封装单元在将至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对于每个MPTCP报文中第一MPTCP报文,将第一MPTCP报文划分为至少两个MPTCP报文分片,至少两个MPTCP报文分片中目标MPTCP报文分片的长度等于目标QoS等级对应的字节长度,第一MPTCP报文的长度大于目标QoS等级对应的字节长度;
将至少两个MPTCP报文分片封装为对应的第二IP报文,目标MPTCP报文分片对应的第二IP报文为目标IP报文。
结合第三方面或上述任一种实施方式,在第三方面的第二种实施方式中,封装单元在将至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对于每个MPTCP报文中第二MPTCP报文,在第二MPTCP报文中添加填充数据,使添加填充数据后的第二MPTCP报文的长度等于目标QoS等级对应的字节长度,第二MPTCP报文的长度小于目标QoS等级对应的字节长度;
将添加填充数据后的第二MPTCP报文封装为对应的第二IP报文,添加填充数据后的第二MPTCP报文所对应的第二IP报文为目标IP报文。
结合第三方面或上述任一种实施方式,在第三方面的第三种实施方式中,目标IP报文为至少一个第二IP报文中的首个IP报文。
结合第三方面或上述任一种实施方式,在第三方面的第四种实施方式中,至少两个分组中每个分组的长度和第一IP头的长度之和小于或等于最大传输单元MTU与第一长度之间的差值,第一长度表示每个分组对应的MPTCP头的长度和对应的第二IP报文的IP头的长度之和。
结合第三方面或上述任一种实施方式,在第三方面的第五种实施方式中,至少一个分组中每个分组的长度和第一IP头的长度之和小于或等于预设长度,预设长度为MTU与第一预设值之间的差值,第一预设值表示MPTCP头长度的最大值和IP头长度的最大值之和。
结合第三方面或上述任一种实施方式,在第三方面的第六种实施方式中,确定单元还用于在将每个MPTCP报文封装为至少一个第二IP报文之前,还包括:
根据QoS等级与字节长度之间对应关系,确定目标QoS等级对应的字节长度。
结合第三方面或上述任一种实施方式,在第三方面的第七种实施方式中,QoS等级与字节长度之间的对应关系为预先设置,对应关系中的各QoS等级对应的字节长度的最大值小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
结合第三方面或上述任一种实施方式,在第三方面的第八种实施方式中,封装单元在将至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对每个分组封装第一IP头,第一IP头中表示净荷长度的字段修改为对应分组的长度;
将封装第一IP头后的每个分组封装为MPTCP报文。
第四方面,本申请提供了一种服务质量的确定装置,包括:
接收单元,用于通过与对端设备之间的多路径传输控制协议MPTCP连接接收对端设备发送的属于同一MPTCP报文的至少一个网络协议IP报文;
获取单元,用于获取至少一个IP报文中目标IP报文的净荷的长度;
确定单元,用于根据目标IP报文所包括MPTCP报文的长度确定至少一个IP报文的目标服务质量QoS等级。
结合第四方面,在第四方面的第一种实施方式中,目标IP报文为至少一个IP报文中首个IP报文。
结合第四方面或第四方面的第一种实施方式目标IP报文的净荷的长度小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
第五方面,本申请提供了一种服务质量的确定设备,包括:
存储器、处理器、通信接口和总线;
存储器、处理器和通信接口通过总线连接并完成相互间的通信;
存储器用于存储程序代码;
处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行如第一方面所述的方法。
第六方面,本申请提供了一种服务质量的确定设备,包括:
存储器、处理器、通信接口和总线;
存储器、处理器和通信接口通过总线连接并完成相互间的通信;
存储器用于存储程序代码;
处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行如第二方面所述的方法。
第七方面,本申请提供一种数据处理的系统,包括如第五方面所述的服务质量的确定设备和如第六方面所述的服务质量的确定设备。
第八方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行第一方面所述的方法。
第九方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行第二方面所述的方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地。
图1是根据本发明实施例提供的网络架构示意图;
图2是根据本发明一实施例提供的服务质量的确定方法的示意性流程图;
图3是根据本发明一实施例提供的一种分片长度和QoS值之间映射曲线的示意图;
图4是根据本发明一实施例提供的一种第一IP报文的处理过程示意图;
图5是根据本发明一实施例提供的服务质量的确定装置的示意性框图;
图6是根据本发明又一实施例提供的服务质量的确定装置的示意性框图;
图7是根据本发明一实施例提供的服务质量的确定设备的示意性框图;
图8是根据本发明又一实施例提供的服务质量的确定设备的示意性框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例可以用于确定服务质量的场景。如图1所示,为本发明实施例使用的一种网络架构示意图。图1所示,客户端和服务器之间通过TCP代理实现基于MPTCP网络传输数据。在图1中,客户端与第一代理设备之间通过UDP协议进行通信,第一代理设备与第二代理设备之间为多路径网络,多路径网络可以包括数字用户线路(Digital SubscriberLine,DSL)、LTE(Long Term Evolution长期演进)、和无线保真(Wireless Fidelity,Wi-Fi)连接等等,为了在多路径网络传输UDP报文,第一代理设备与第二代理设备之间建立MPTCP连接;第二代理设备与服务器之间通过UDP协议进行通信。其中,第一代理设备和第二代理设备可以分别作为对方的对端设备。
具体的,图1所示架构可以应用于绑定接入(Bonding Acess,BA)场景或软定义广域网(Software-Defined Wide Area Network,SD-WAN)场景。在BA场景中,客户端可以为使用UDP协议承载应用的客户端,例如,家庭用户的电脑或者手机,客户端可以访问外部的UDP服务器上的应用,例如视频直播等;第一代理设备可以为运营商安装在用户家里的网络接入设备,例如,第一代理设备可以为家庭网关(Home Gateway,HG),其可以包括多种接口,例如,非对称数字用户线路(Asymmetric Digital Subscriber Line,ADSL)接口,Wi-Fi接口,LTE接口等,这些接口可以被第一代理设备用来作为MPTCP多路径传输的不同出口,从而实现多种路径传输数据的混合接入;第二代理设备可以为混合接入汇聚节点(Hybrid AccessAggregation Point,HAAP),用于接收来自不同HG的混合接入请求;服务器可以为使用UDP协议承载应用的服务器。在SD-WAN场景中,客户端可以为企业分支(Branch)中使用UDP协议承载应用的客户端,可以用来访问企业总部(Head-quarter,HQ)的使用UDP协议承载应用的服务器上的应用;第一代理设备和第二代理设备可以为接入路由设备,接入路由设备可以包括多种接口,如ADSL接口,Wi-Fi接口,LTE接口等,这些接口可以被用来作为MPTCP多路径传输的不同出口,从而实现多种路径传输数据的混合接入;服务器可以为企业总部中使用UDP协议的承载应用的数据中心服务器。
本发明一实施例提供了一种服务质量的确定方法,如图2所示,可以用于图1所示的网络架构中,该方法包括以下步骤。
101,第一代理设备接收第一IP报文。
其中,客户端需要与服务器之间通信时,客户端通过与第一代理设备之间的UDP协议向第一代理设备发送第一IP报文,第一IP报文中包括UDP报文和第一IP头,即UDP报文为第一IP报文的净荷。UDP报文包括净荷和UDP头,第一IP头中包括QoS信息和表示净荷长度的字段,此时第一IP头中表示净荷长度的字段为UDP报文的长度。第一代理设备接收第一IP报文,可以将第一IP报文中UDP报文和第一IP头分别进行存储。
102,第一代理设备根据第一IP报文的信息确定UDP报文所属的目标QoS等级。
第一代理设备可以根据第一IP头和/或UDP报文的报文头(即UDP头)中包括的QoS信息确定出UDP报文所属的目标QoS等级。QoS信息具体可以包括第一IP报文中包括的源IP地址、目的IP地址、差分服务代码点(Differentiated Services Code Point,DSCP)等信息中的一种或任意组合。
具体的,第一代理设备中可以预设QoS等级划分规则,如,该QoS等级划分规则可以是源IP地址和/或目的IP地址与QoS等级的对应关系。在接收到第一IP报文后,可以根据其中的第一IP头所包括的信息(如源IP地址和目的IP地址)和预设QoS等级划分规则来确定UDP报文所属的目标QoS等级。QoS等级划分规则中可以包括多个QoS等级,不同的QoS等级对应不同的处理方式,如,通过不同优先级的传输队列进行传输。同时,第一代理设备中还可以设置每个QoS等级对应的QoS值,并可以以QoS值来表示QoS等级,例如,如果QoS等级包括8个等级,则可以设置各QoS等级对应的QoS值依次为数值1-8。
103,第一代理设备将UDP报文划分为至少两个分组。
第一代理设备通过其与第二代理设备之间的MPTCP连接传输数据,所以向第二代理设备发送第一IP报文时,需要在第一IP报文外侧依次再封装MPTCP头和新的IP头(以下称第二IP头),才可以通过第一代理设备与第二代理设备之间的MPTCP连接进行传输。
设备之间在传输报文时,会设置最大传输单元(Maximum Transmission Unit,MTU),表示设备之间传输数据包的最大长度。一般情况下,设备之间均以MTU所允许的长度进行传输,所以第一IP报文的长度通常能够达到MTU,所以在第一IP报文外侧再封装MPTCP头和第二IP头后的长度将会远超过MTU,此时第一代理设备将无法传输再封装MPTCP头和第二IP头后的第一IP报文。所以本发明实施例中,第一代理设备将第一IP报文中UDP报文划分为至少两个分组,然后将划分的至少两个分组分别再封装第一IP头、MPTCP头和第二IP头后进行传输,以便于封装后的分组能够小于或等于MTU,从而使第一代理设备能够进行传输。
为了使划分后的至少两个分组中每个分组在封装第一IP头、MPTCP头和第二IP头后的长度不大于MTU,所以可以在划分分组时保证每个分组的长度和第一IP头的长度之和小于或等于MTU与第一长度之间的差值,第一长度表示每个分组对应MPTCP头的长度和每个分组对应第二IP头的长度之和。
每个分组在封装第一IP头、MPTCP头和第二IP头后的长度小于或等于MTU即可满足MTU所允许的字节长度,即每个分组的长度、第一IP头的长度、MPTCP头的长度和第二IP头的长度之和小于或等于MTU,所以在对UDP报文划分分组时,可以使每个分组的长度和第一IP头的长度之和小于或等于MTU与第一长度之间的差值,第一长度表示每个分组对应MPTCP头的长度和每个分组对应第二IP头的长度之和。
第一代理设备通过第一IP报文可以确定出第一IP头的长度。MPTCP头的长度和第二IP头的长度可以结合第一IP报文的功能计算得出,所以第一代理设备在对UDP报文划分分组时,可以根据MTU,以及第一IP头的长度、MPTCP头的长度和第二IP头的长度确定出每个分组的长度的最大值。
为了减少第一代理设备的数据处理过程,本发明实施例中,可以具体设置为:至少一个分组中每个分组的长度和第一IP头的长度之和小于或等于预设长度,预设长度为MTU与第一预设值之间的差值,第一预设值表示MPTCP头长度的最大值和IP头长度的最大值之和。
由于每个分组对应的MPTCP头的长度必然小于或等于MPTCP头长度的最大值,每个分组对应的第二IP头的长度必然小于或等于IP头长度的最大值,所以第一预设值必然大于或等于第一长度,即MTU与第一预设值之间的差值必然小于或等于MTU与第一长度之间的差值。所以本发明实施例中,第一代理设备可以基于MTU、MPTCP头长度的最大值和IP头长度的最大值来确定每个分组的长度和第一IP报文长度之和,并且如此确定出的每个分组的长度和第一IP报文长度之和必然小于或等于MTU与第一长度之间的差值,从而可以保证每个分组在封装第一IP头、MPTCP头和第二IP头后的长度不大于MTU。
通常MPTCP头长度的最大值和IP头长度的最大值均为60字节,所以本发明实施例中可以设置第一预设值为120字节。
需要说明的是,第一代理设备在对UDP报文划分分组时的方式不做限定,只需要使每个分组的长度和第一IP头的长度之和小于或等于MTU与第一长度之间的差值,第一长度表示每个分组对应MPTCP头的长度和每个分组对应第二IP头的长度之和。第一代理设备将第一IP报文中UDP报文划分为至少两个分组,所以至少两个分组中每个分组所包括的UDP报文与第一IP报文中UDP报文的目标QoS等级相同。
104,第一代理设备将至少两个分组中的每个分组封装为MPTCP报文。
其中,第一代理设备在步骤103将UDP报文划分为至少两个分组后,将每个分组封装为MPTCP报文。
对于至少两个分组中的每个分组,第一代理设备对每个分组进行封装时需要先封装第一IP头,以使每个分组能够传输至第一IP头中的目的地址。此时,每个分组为第一IP头对应的净荷,所以第一IP头中表示净荷长度的字段会修改为每个分组的长度,即对每个分组封装第一IP头时,将第一IP头中表示净荷长度的字段修改为此分组的长度,以保证第一IP头中信息的准确性。
第一代理设备对每个分组封装修改表示净荷长度的字段后的第一IP头,然后再封装MPTCP头,即将至少两个分组中的每个分组封装为MPTCP报文。
105,第一代理设备将每个MPTCP报文封装为至少一个第二IP报文。
其中,至少一个第二IP报文中目标IP报文的净荷长度等于目标QoS等级对应的字节长度。本发明实施例中,第一代理设备将每个MPTCP报文封装为第二IP报文时,通过第二IP报文中目标IP报文的净荷的长度来体现每个MPTCP报文的目标QoS等级。通常情况下IP报文的净荷的长度携带在IP头中,所以目标IP报文的第二IP头中可以携带净荷的长度。
目标IP报文可以是该至少一个第二IP报文中位于预设位置的报文,如,为该至少一个第二IP报文中的首个IP报文,或该至少一个第二IP报文中的最后一个IP报文。
由于每个MPTCP报文的长度不同,有时MPTCP报文的长度不能达到目标QoS等级对应的字节长度,此时需要在MPTCP报文中添加填充数据。
具体的,对应每个MPTCP报文,第一代理设备对MPTCP报文封装时,还可以比较MPTCP报文的长度与目标QoS等级对应的字节长度之间的大小。
对于MPTCP报文中长度大于目标QoS等级对应的字节长度的第一MPTCP报文,可以将第一MPTCP报文划分为至少两个MPTCP报文分片,至少两个MPTCP报文分片中目标MPTCP报文分片的长度等于目标QoS等级对应的字节长度;将至少两个MPTCP报文分片封装为对应的第二IP报文,目标MPTCP报文分片对应的第二IP报文为目标IP报文。对于MPTCP报文中长度小于目标QoS等级对应的字节长度的第二MPTCP报文,可以在第二MPTCP报文中添加填充数据,使添加填充数据后的第二MPTCP报文的长度等于目标QoS等级对应的字节长度;并将添加填充数据后的第二MPTCP报文封装为对应的第二IP报文,添加填充数据后的第二MPTCP报文所对应的第二IP报文为目标IP报文。对于MPTCP报文中长度等于目标QoS等级对应的字节长度的第三MPTCP报文,可以直接将第三MPTCP报文封装为对应的第二IP报文,即为目标IP报文。
在MPTCP报文的长度大于目标QoS等级对应的字节长度时,由于目标MPTCP报文分片的长度要等于目标QoS等级对应的字节长度,所以第一代理设备会将MPTCP报文划分为至少两个MPTCP报文分片,并在划分时使目标MPTCP报文分片的长度等于目标QoS等级对应的字节长度,其他分片的长度和个数可以根据实际场景中的需求或MPTCP报文的长度来确定。第一代理设备会将MPTCP报文划分为MPTCP报文分片后,再将各MPTCP报文分片封装为对应的第二IP报文,其中,目标MPTCP报文分片封装后的第二IP报文即为目标IP报文,各MPTCP报文分片为对应的第二IP报文的净荷。
MPTCP报文的长度小于目标QoS等级对应的字节长度时,MPTCP报文的长度不能达到目标QoS等级对应的字节长度,所以需要对MPTCP报文添加填充数据,并使添加填充数据后的MPTCP报文的长度等于目标QoS等级对应的长度,此时添加填充数据后的MPTCP报文即为目标IP报文的净荷。然后第一代理设备将添加填充数据后的MPTCP报文封装为对应的第二IP报文,即为目标IP报文。
MPTCP报文的长度等于目标QoS等级对应的长度时,第一代理设备可以直接将MPTCP报文封装为对应的第二IP报文,即为目标IP报文。
需要说明的是,在对MPTCP报文添加填充数据时,可以添加到第一IP头对应净荷的末尾处。相应地,在未添加填充数据时,第一IP头中表示净荷长度的字段可以为对应分组的长度;在添加填充数据时,第一IP头中表示净荷长度的字段可以为对应分组的长度与添加的填充数据的长度之和,也可以为对应分组的长度。填充数据可以为一个数值,具体可以为0。
本发明实施例中,第一代理设备可以预先设置QoS等级与字节长度之间的对应关系,所以在执行步骤105之前,第一代理设备可以根据QoS等级与字节长度之间对应关系,确定目标QoS等级对应的字节长度。同时,如果第一代理设备设置了QoS等级对应的QoS值,则还可以设置QoS值与字节长度之间对应关系。
本发明实施例中,可以通过预设函数或对应关系表设置QoS等级和字节长度之间的对应关系,具体的对应关系可以根据具体业务流来进行设定。例如,可以建立如表1所示的对应关系表,此时QoS等级和字节长度之间映射曲线图可以如图3所示,在图3中,横坐标表示长度,纵坐标表示QoS等级。
表1
QoS等级 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
字节长度 | 40 | 240 | 440 | 640 | 840 | 1040 | 1240 | 1440 |
由于是利用一个第二IP报文的净荷的长度表示对应的QoS等级,因此,设置的任一QoS等级对应的长度都需要小于MTU的长度1500与IP头长度的最大值60的差值1440。如表1所示,QoS等级对应长度的最大值为1440。
需要说明的是,QoS等级和字节长度之间的对应关系需要满足以下要求:遵从协议原则,不能违反协议规定;QoS等级和字节长度之间的对应关系为一一对应关系。
为了减少在MPTCP报文中添加填充数据的情况,以及使各MPTCP报文的长度大于目标QoS等级对应的字节长度,第一代理设备可以将QoS等级对应的字节长度设置为较小的值。具体的,QoS等级对应的字节长度的最大值可以小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
由于MPTCP报文是为每个分组封装了第一IP头和MPTCP头后得到的,所以MPTCP报文的长度必然大于MPTCP头长度的最小值和IP头长度的最小值之和。因此,QoS等级对应的字节长度的最大值小于或等于MPTCP头长度的最小值和IP头长度的最小值之和时,目标IP报文中的净荷的长度小于MPTCP头长度的最小值和IP头长度的最小值之和,则MPTCP报文的长度必然大于或等于QoS等级对应的字节长度的最大值,即MPTCP报文的长度必然大于或等于目标QoS等级对应的字节长度,从而可以降低或减少在MPTCP报文中添加填充数据的情况,简化数据处理的过程。
MPTCP头长度的最小值和IP头长度的最小值均为20字节,所以目标QoS等级对应的长度可以小于或等于40字节。
需要说明的是,本发明实施例中,通过对QoS等级对应的字节长度的设置,保证MPTCP报文的长度必然大于或等于目标QoS等级对应的字节长度,则第一代理设备在执行本步骤时,可以不对MPTCP报文的长度与目标QoS等级对应的字节长度之间的大小进行比较,而是直接执行将第一MPTCP报文划分为至少两个MPTCP报文分片的操作。
需要说明的是,本步骤中,第一代理设备在对每个MPTCP报文封装为对应的第二IP报文时添加的IP头即为步骤103中所述的第二IP头,即第二IP头为步骤103中得出的每个分组所对应的第二IP报文中位于最外侧的IP头。
106,第一代理设备通过与第二代理设备之间的MPTCP连接向第二代理设备发送至少一个第二IP报文。
其中,第一设备在将各个MPTCP报文封装为至少一个第二IP报文后,即可通过第一代理设备与第二代理设备之间的MPTCP连接发送至少一个第二IP报文。
本发明实施例中第二IP报文中MPTCP头通常包括源端口信息和目的端口信息,第二IP报文中位于最外侧的第二IP头通常包括源地址信息和目的地址信息。
107,第二代理设备通过与第一代理设备之间的MPTCP连接接收属于同一MPTCP报文的至少一个第二IP报文后,获取至少一个第二IP报文中目标IP报文的净荷的长度。
其中,第二代理设备通过与第一代理设备之间的MPTCP连接接收第二IP报文后,根据第二IP报文中第二IP头可以识别出属于同一MPTCP报文的第二IP报文。第二代理设备中预设了目标IP报文在同一MPTCP报文的第二IP报文中的位置,所以可以确定出属于同一MPTCP报文的第二IP报文中的目标IP报文,进而可以获取出目标IP报文的净荷的长度。具体的,目标IP报文的载荷的长度可以从目标IP报文的IP头中获取。
108,第二代理设备根据目标IP报文的净荷的长度确定至少一个第二IP报文的目标QoS等级。
本发明实施例中,第一代理设备在将接收UDP报文划分为至少两个组,每个组封装为MPTCP报文后,被封装为至少一个第二IP报文,并且至少一个第二IP报文中目标IP报文的净荷的长度等于目标QoS等级对应的字节长度,即通过目标IP报文的净荷的长度来表示同一个MPTCP报文的目标QoS等级。如此本发明实施例中,第一代理设备将封装的第二IP报文通过MPTCP连接发送给第二代理设备后,第二代理设备可以根据目标IP报文的净荷的长度准确的确定出同一MPTCP报文的目标QoS等级,进而准确的对属于同一MPTCP报文的第二IP报文进行对应的QoS处理,避免了对端设备因UDP报文最外侧封装的IP头中没有QoS信息,而无法确定对UDP报文进行对应的QoS处理的问题。
本发明实施例中,对于步骤103-步骤105中第一代理设备对第一IP报文的处理过程,以图4所示示意图为例进行说明。第一代理设备在步骤101中接收第一IP报文,第一IP报文包括UDP报文和第一IP头。在图4中,IP头1表示第一IP头,UDP头和净荷两部分组成UDP报文。步骤103中第一代理设备将UDP报文划分为至少两个分组,如图4所示,以第一代理设备将UDP报文划分为两个分组为例,从虚线A处将UDP头和净荷两部分组成UDP报文进行划分,得出了分组1和分组2两个分组,并使每个分组的长度和IP头1的长度之和小于或等于MTU与第一长度之间的差值,第一长度表示每个分组对应MPTCP头的长度和每个分组对应第二IP头的长度之和。然后执行步骤104,第一代理设备将每个分组封装为MPTCP报文,如图4所示,分组1和分组2分别封装了IP头1和MPTCP头,即封装了第一IP头和MPTCP头,并在封装IP头1时将IP头1中表示净荷长度的字段会修改为每个分组的长度。然后执行步骤105,第一代理设备将每个MPTCP报文封装为至少一个第二IP报文,如图4所示,以对分组2封装后得出的MPTCP报文封装为两个第二IP报文、且目标IP报文为两个第二IP报文中首个IP报文为例,第一代理设备从虚线B处将分组2封装后得出的MPTCP报文划分为两个MPTCP报文分片,分别为分片1和分片2,其中,分片2为首个MPTCP报文分片,即目标MPTCP报文分片;然后对每个MPTCP报文分片封装第二IP报文,图4中IP头2表示第二IP头,分片2和对应的IP头2组成的第二IP报文为目标IP报文。
图5是根据本发明一实施例提供的服务质量的确定装置200的示意性框图。如图5所示,该装置200包括:
接收单元201,用于接收第一网络协议IP报文,所述第一IP报文包括用户数据包协议UDP报文和第一IP头;
确定单元202,用于根据所述第一IP报文的信息确定所述UDP报文所属的目标QoS等级;
分组单元203,用于将所述UDP报文划分为至少两个分组;
封装单元204,用于将所述至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文;
所述封装单元204还用于将每个所述MPTCP报文封装为至少一个第二IP报文,所述至少一个第二IP报文中目标IP报文的净荷的长度等于所述目标QoS等级对应的字节长度;
发送单元205,用于通过与对端设备之间的MPTCP连接向对端设备发送所述至少一个第二IP报文,以使所述对端设备根据所述目标IP报文的净荷的长度确定所述目标QoS等级。
本发明实施例中,将接收UDP报文划分为至少两个组,每个组封装为MPTCP报文后,被封装为至少一个第二IP报文,并且至少一个第二IP报文中目标IP报文的净荷的长度等于目标QoS等级对应的字节长度,即通过目标IP报文中净荷的长度来表示同一个MPTCP报文的目标QoS等级。如此本发明实施例中,将封装的第二IP报文通过MPTCP连接发送给对端设备后,对端设备可以根据目标IP报文的净荷的长度准确的确定出同一MPTCP报文的目标QoS等级,进而准确的对UDP报文进行对应的QoS处理,避免了对端设备因UDP报文最外侧封装的IP头中没有QoS信息,而无法确定对UDP报文进行对应的QoS处理的问题。
可以理解的是,所述封装单元204在将所述至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对于每个所述MPTCP报文中第一MPTCP报文,将所述第一MPTCP报文划分为至少两个MPTCP报文分片,所述至少两个MPTCP报文分片中目标MPTCP报文分片的长度等于所述目标QoS等级对应的字节长度,所述第一MPTCP报文的长度大于所述目标QoS等级对应的字节长度;
将所述至少两个MPTCP报文分片封装为对应的第二IP报文,所述目标MPTCP报文分片对应的第二IP报文为所述目标IP报文。
可以理解的是,所述封装单元204在将所述至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对于每个所述MPTCP报文中第二MPTCP报文,在所述第二MPTCP报文中添加填充数据,使添加所述填充数据后的所述第二MPTCP报文的长度等于所述目标QoS等级对应的字节长度,所述第二MPTCP报文的长度小于所述目标QoS等级对应的字节长度;
将添加所述填充数据后的所述第二MPTCP报文封装为对应的第二IP报文,添加所述填充数据后的所述第二MPTCP报文所对应的第二IP报文为所述目标IP报文。
可以理解的是,所述目标IP报文为所述至少一个第二IP报文中的首个IP报文。
可以理解的是,所述至少两个分组中每个分组的长度和所述第一IP头的长度之和小于或等于最大传输单元MTU与第一长度之间的差值,所述第一长度表示所述每个分组对应的MPTCP头的长度和对应的第二IP报文的IP头的长度之和。
可以理解的是,所述至少一个分组中每个分组的长度和所述第一IP头的长度之和小于或等于预设长度,所述预设长度为MTU与第一预设值之间的差值,所述第一预设值表示MPTCP头长度的最大值和IP头长度的最大值之和。
可以理解的是,所述确定单元202还用于根据QoS等级与字节长度之间对应关系,确定所述目标QoS等级对应的字节长度。
可以理解的是,所述QoS等级与字节长度之间的对应关系为预先设置,所述对应关系中的各QoS等级对应的字节长度的最大值小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
可以理解的是,所述封装单元在将所述至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对所述每个分组封装所述第一IP头,所述第一IP头中表示净荷长度的字段修改为对应分组的长度;
将封装第一IP头后的所述每个分组封装为MPTCP报文。
根据本发明实施例的服务质量的确定装置200,可对应于根据本发明实施例的服务质量的确定方法中的执行主体,并且服务质量的确定装置200中的各个模块的上述和其它操作和/或功能分别为了实现图2中第一代理设备所执行的各个方法的相应流程,为了简洁,在此不再赘述。
图6是根据本发明又一实施例提供的服务质量的确定装置300的示意性框图。如图6所示,该装置300包括:
接收单元301,用于通过与对端设备之间的多路径传输控制协议MPTCP连接接收对端设备发送的属于同一MPTCP报文的至少一个网络协议IP报文;
获取单元302,用于获取所述至少一个IP报文中目标IP报文的净荷的长度;
确定单元303,用于根据所述目标IP报文的净荷的长度确定所述至少一个IP报文的目标QoS等级。
本发明实施例中,对端设备通过目标IP报文中净荷的长度来表示同一个MPTCP报文的目标QoS等级,所以在接收属于同一MPTCP报文的至少一个IP报文后,可以根据至少一个IP报文中目标IP报文包括的净荷的长度准确的确定出同一MPTCP报文的目标QoS等级,进而准确的对UDP报文进行对应的QoS处理,避免了因UDP报文最外侧封装的IP头中没有QoS信息,而无法确定对UDP报文进行对应的QoS处理的问题。
可以理解的是,所述目标IP报文为所述至少一个IP报文中首个IP报文。
可以理解的是,所述目标IP报文所的净荷的长度小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
根据本发明实施例的服务质量的确定装置300,可对应于根据本发明实施例的服务质量的确定方法中的执行主体,并且服务质量的确定装置300中的各个模块的上述和其它操作和/或功能分别为了实现图2中第二代理设备所执行的各个方法的相应流程,为了简洁,在此不再赘述。
图7是根据本发明一实施例的服务质量的确定设备400的示意性框图。设备400连接有多块硬盘,如图7所示,设备400包括处理器401、存储器402和通信接口403,存储器402用于存储可执行的程序代码,处理器401通过读取存储器402中存储的可执行程序代码来运行与可执行程序代码对应的程序,通信接口403用于与外部设备通信,设备400还可以包括总线404,总线404用于连接处理器401、存储器402和通信接口403,使处理器401、存储器402和通信接口403通过总线404进行相互通信。
根据本发明实施例的设备400,可对应于根据本发明实施例的服务质量的确定方法中的执行主体,并且设备400中上述操作和/或功能分别为了实现图2中第一代理设备所执行各个方法的相应流程,为了简洁,在此不再赘述。
图8是根据本发明又一实施例的服务质量的确定设备500的示意性框图。设备500连接有多块硬盘,如图8所示,设备500包括处理器501、存储器502和通信接口503,存储器502用于存储可执行的程序代码,处理器501通过读取存储器502中存储的可执行程序代码来运行与可执行程序代码对应的程序,通信接口503用于与外部设备通信,设备500还可以包括总线504,总线504用于连接处理器501、存储器502和通信接口503,使处理器501、存储器502和通信接口503通过总线504进行相互通信。
根据本发明实施例的设备500,可对应于根据本发明实施例的服务质量的确定方法中的执行主体,并且设备500中上述操作和/或功能分别为了实现图2中第一代理设备所执行各个方法的相应流程,为了简洁,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(olid State Disk,SSD))等。
Claims (26)
1.一种服务质量的确定方法,其特征在于,包括:
接收第一网络协议IP报文,所述第一IP报文包括用户数据包协议UDP报文和第一IP头;
根据所述第一IP报文的信息确定所述UDP报文所属的目标服务质量QoS等级;
将所述UDP报文划分为至少两个分组;
将所述至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文;
将每个所述MPTCP报文封装为至少一个第二IP报文,所述至少一个第二IP报文中目标IP报文的净荷的长度等于所述目标QoS等级对应的字节长度;
通过与对端设备之间的MPTCP连接向所述对端设备发送所述至少一个第二IP报文,以使所述对端设备根据所述目标IP报文的净荷的长度确定所述目标QoS等级。
2.根据权利要求1所述的方法,其特征在于,所述将每个所述MPTCP报文封装为至少一个第二IP报文,包括:
对于每个所述MPTCP报文中第一MPTCP报文,将所述第一MPTCP报文划分为至少两个MPTCP报文分片,所述至少两个MPTCP报文分片中目标MPTCP报文分片的长度等于所述目标QoS等级对应的字节长度,所述第一MPTCP报文的长度大于所述目标QoS等级对应的字节长度;
将所述至少两个MPTCP报文分片封装为对应的第二IP报文,所述目标MPTCP报文分片对应的第二IP报文为所述目标IP报文。
3.根据权利要求1或2所述的方法,其特征在于,所述将每个所述MPTCP报文封装为至少一个第二IP报文,包括:
对于每个所述MPTCP报文中第二MPTCP报文,在所述第二MPTCP报文中添加填充数据,使添加所述填充数据后的所述第二MPTCP报文的长度等于所述目标QoS等级对应的字节长度,所述第二MPTCP报文的长度小于所述目标QoS等级对应的字节长度;
将添加所述填充数据后的所述第二MPTCP报文封装为对应的第二IP报文,添加所述填充数据后的所述第二MPTCP报文所对应的第二IP报文为所述目标IP报文。
4.根据权利要求1所述的方法,其特征在于,所述目标IP报文为所述至少一个第二IP报文中的首个IP报文。
5.根据权利要求1所述的方法,其特征在于,所述至少两个分组中每个分组的长度和所述第一IP头的长度之和小于或等于最大传输单元MTU与第一长度之间的差值,所述第一长度表示所述每个分组对应的MPTCP头的长度和对应的第二IP报文的IP头的长度之和。
6.根据权利要求5所述的方法,其特征在于,所述至少一个分组中每个分组的长度和所述第一IP头的长度之和小于或等于预设长度,所述预设长度为MTU与第一预设值之间的差值,所述第一预设值表示MPTCP头长度的最大值和IP头长度的最大值之和。
7.根据权利要求1所述的方法,其特征在于,在所述将每个所述MPTCP报文封装为至少一个第二IP报文之前,还包括:
根据QoS等级与字节长度之间对应关系,确定所述目标QoS等级对应的字节长度。
8.根据权利要求7所述的方法,其特征在于,所述QoS等级与字节长度之间的对应关系为预先设置,所述对应关系中的各QoS等级对应的字节长度的最大值小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述将所述至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文,包括:
对所述每个分组封装所述第一IP头,所述第一IP头中表示净荷长度的字段修改为对应分组的长度;
将封装第一IP头后的所述每个分组封装为MPTCP报文。
10.一种服务质量的确定方法,其特征在于,包括:
通过与对端设备之间的多路径传输控制协议MPTCP连接接收所述对端设备发送的属于同一MPTCP报文的至少一个网络协议IP报文;
获取所述至少一个IP报文中目标IP报文的净荷的长度;
根据所述目标IP报文的净荷的长度确定所述至少一个IP报文的目标服务质量QoS等级。
11.根据权利要求10所述的方法,其特征在于,所述目标IP报文为所述至少一个IP报文中首个IP报文。
12.根据权利要求10或11所述的方法,其特征在于,所述目标IP报文的净荷的长度小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
13.一种服务质量的确定装置,其特征在于,包括:
接收单元,用于接收第一网络协议IP报文,所述第一IP报文包括用户数据包协议UDP报文和第一IP头;
确定单元,用于根据所述第一IP报文的信息确定所述UDP报文所属的目标服务质量QoS等级;
分组单元,用于将所述UDP报文划分为至少两个分组;
封装单元,用于将所述至少两个分组中的每个分组封装为多路径传输控制协议MPTCP报文;
所述封装单元还用于将每个所述MPTCP报文封装为至少一个第二IP报文,所述至少一个第二IP报文中目标IP报文的净荷的长度等于所述目标QoS等级对应的字节长度;
发送单元,用于通过与对端设备之间的MPTCP连接向所述对端设备发送所述至少一个第二IP报文,以使所述对端设备根据所述目标IP报文的净荷的长度确定所述目标QoS等级。
14.根据权利要求13所述的装置,其特征在于,所述封装单元在将所述至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对于每个所述MPTCP报文中第一MPTCP报文,将所述第一MPTCP报文划分为至少两个MPTCP报文分片,所述至少两个MPTCP报文分片中目标MPTCP报文分片的长度等于所述目标QoS等级对应的字节长度,所述第一MPTCP报文的长度大于所述目标QoS等级对应的字节长度;
将所述至少两个MPTCP报文分片封装为对应的第二IP报文,所述目标MPTCP报文分片对应的第二IP报文为所述目标IP报文。
15.根据权利要求13或14所述的装置,其特征在于,所述封装单元在将所述至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对于每个所述MPTCP报文中第二MPTCP报文,在所述第二MPTCP报文中添加填充数据,使添加所述填充数据后的所述第二MPTCP报文的长度等于所述目标QoS等级对应的字节长度,所述第二MPTCP报文的长度小于所述目标QoS等级对应的字节长度;
将添加所述填充数据后的所述第二MPTCP报文封装为对应的第二IP报文,添加所述填充数据后的所述第二MPTCP报文所对应的第二IP报文为所述目标IP报文。
16.根据权利要求13所述的装置,其特征在于,所述目标IP报文为所述至少一个第二IP报文中的首个IP报文。
17.根据权利要求13所述的装置,其特征在于,所述至少两个分组中每个分组的长度和所述第一IP头的长度之和小于或等于最大传输单元MTU与第一长度之间的差值,所述第一长度表示所述每个分组对应的MPTCP头的长度和对应的第二IP报文的IP头的长度之和。
18.根据权利要求17所述的装置,其特征在于,所述至少一个分组中每个分组的长度和所述第一IP头的长度之和小于或等于预设长度,所述预设长度为MTU与第一预设值之间的差值,所述第一预设值表示MPTCP头长度的最大值和IP头长度的最大值之和。
19.根据权利要求13所述的装置,其特征在于,所述确定单元还用于根据QoS等级与字节长度之间对应关系,确定所述目标QoS等级对应的字节长度。
20.根据权利要求19所述的装置,其特征在于,所述QoS等级与字节长度之间的对应关系为预先设置,所述对应关系中的各QoS等级对应的字节长度的最大值小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
21.根据权利要求13-20任一项所述的装置,其特征在于,所述封装单元在将所述至少两个分组中的每个分组封装为MPTCP报文时,具体用于:
对所述每个分组封装所述第一IP头,所述第一IP头中表示净荷长度的字段修改为对应分组的长度;
将封装第一IP头后的所述每个分组封装为MPTCP报文。
22.一种服务质量的确定装置,其特征在于,包括:
接收单元,用于通过与对端设备之间的多路径传输控制协议MPTCP连接接收对端设备发送的属于同一MPTCP报文的至少一个网络协议IP报文;
获取单元,用于获取所述至少一个IP报文中目标IP报文的净荷的长度;
确定单元,用于根据所述目标IP报文的净荷的长度确定所述至少一个IP报文的目标服务质量QoS等级。
23.根据权利要求22所述的装置,其特征在于,所述目标IP报文为所述至少一个IP报文中首个IP报文。
24.根据权利要求22或23所述的装置,其特征在于,所述目标IP报文的净荷的长度小于或等于MPTCP头长度的最小值和IP头长度的最小值之和。
25.一种计算机可读存储介质,计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1-9任一项所述的方法。
26.一种计算机可读存储介质,计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行如权利要求10-12任一项所述的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710944073.XA CN109600248B (zh) | 2017-09-30 | 2017-09-30 | 服务质量的确定方法、装置及存储介质 |
EP18863581.7A EP3678332B1 (en) | 2017-09-30 | 2018-07-03 | Method and system for determining quality of service |
PCT/CN2018/094294 WO2019062252A1 (zh) | 2017-09-30 | 2018-07-03 | 服务质量的确定方法、装置及存储介质 |
KR1020207012186A KR102397029B1 (ko) | 2017-09-30 | 2018-07-03 | 서비스 품질 결정 방법, 장치, 및 저장 매체 |
JP2020517777A JP6968990B2 (ja) | 2017-09-30 | 2018-07-03 | サービス品質を決定するための方法および装置、ならびにプログラム |
US16/832,676 US11405489B2 (en) | 2017-09-30 | 2020-03-27 | Method and apparatus for determining quality of service, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710944073.XA CN109600248B (zh) | 2017-09-30 | 2017-09-30 | 服务质量的确定方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109600248A CN109600248A (zh) | 2019-04-09 |
CN109600248B true CN109600248B (zh) | 2020-09-08 |
Family
ID=65900526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710944073.XA Active CN109600248B (zh) | 2017-09-30 | 2017-09-30 | 服务质量的确定方法、装置及存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11405489B2 (zh) |
EP (1) | EP3678332B1 (zh) |
JP (1) | JP6968990B2 (zh) |
KR (1) | KR102397029B1 (zh) |
CN (1) | CN109600248B (zh) |
WO (1) | WO2019062252A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111416794B (zh) * | 2019-01-08 | 2022-07-29 | 华为技术有限公司 | 一种数据传输方法及电子设备 |
CN113014483B (zh) * | 2019-12-19 | 2023-04-18 | 华为技术有限公司 | 一种多路径传输的方法及设备 |
TWI739256B (zh) * | 2019-12-26 | 2021-09-11 | 威聯通科技股份有限公司 | 跨越不同傳輸協定的網路系統及轉換裝置 |
CN114666265B (zh) * | 2022-03-28 | 2024-04-02 | 阿里巴巴(中国)有限公司 | 数据传输方法、装置、计算设备及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101282282A (zh) * | 2007-04-06 | 2008-10-08 | 杭州华三通信技术有限公司 | 服务质量等级确定方法、系统及终端 |
US8315241B2 (en) * | 2008-03-31 | 2012-11-20 | Lockheed Martin Corporation | Method and apparatus for providing quality of service in wireless networks and sensor networks |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070104224A1 (en) * | 2005-11-04 | 2007-05-10 | Conner Keith F | Differentiated quality of service transport protocols |
US20070297450A1 (en) * | 2006-06-21 | 2007-12-27 | Motorola, Inc. | Method and apparatus for passing an application description to lower layer packet data protocol |
WO2008021182A2 (en) | 2006-08-09 | 2008-02-21 | Interdigital Technology Corporation | Method and apparatus for providing differentiated quality of service for packets in a particular flow |
US8310924B2 (en) * | 2008-05-15 | 2012-11-13 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for providing QoS for MP subscribers at the subscriber level |
JP5173786B2 (ja) | 2008-12-22 | 2013-04-03 | 株式会社日立製作所 | 無線基地局装置および無線通信システム |
WO2011153415A1 (en) * | 2010-06-04 | 2011-12-08 | Interdigital Patent Holdings, Inc. | Mptcp and mobil ip interworking |
EP3150019B1 (en) | 2014-06-02 | 2020-07-22 | Nokia Solutions and Networks Oy | Multipath tcp with lte connections |
WO2015196393A1 (zh) * | 2014-06-25 | 2015-12-30 | 华为技术有限公司 | 一种数据传输方法及设备 |
US10602560B2 (en) * | 2015-06-26 | 2020-03-24 | Telefonaktiebolaget Lm Ericsson (Publ) | First network node and methods therein, for determining whether a second multi path transmission control protocol connection is to be initiated |
EP3119057A1 (en) * | 2015-07-16 | 2017-01-18 | Deutsche Telekom AG | Packet conversion device and method for allowing transparent packet-based multipath bundling |
US20170063699A1 (en) * | 2015-08-26 | 2017-03-02 | Electronics And Telecommunications Research Institute | Method and apparatus for configuring multi-paths using segment list |
CN105490933B (zh) * | 2015-12-28 | 2019-06-11 | 中国电子科技集团公司第五十四研究所 | 基于多路径传输协议mptcp的路径管理方法及装置 |
US10805846B2 (en) * | 2016-03-29 | 2020-10-13 | Lg Electronics Inc. | Method and terminal for supporting service continuity after performing handover |
KR20170133165A (ko) * | 2016-05-25 | 2017-12-05 | 삼성전자주식회사 | 다중 링크를 이용해 신호를 전송하는 방법 및 장치 |
US11202230B2 (en) * | 2017-05-19 | 2021-12-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Technique for enabling multipath transmission |
US11051239B2 (en) * | 2017-07-07 | 2021-06-29 | Nokia Solutions And Networks Oy | Multiple air interface aggregation supporting multivendor 4G/5G networks |
-
2017
- 2017-09-30 CN CN201710944073.XA patent/CN109600248B/zh active Active
-
2018
- 2018-07-03 JP JP2020517777A patent/JP6968990B2/ja active Active
- 2018-07-03 EP EP18863581.7A patent/EP3678332B1/en active Active
- 2018-07-03 KR KR1020207012186A patent/KR102397029B1/ko active IP Right Grant
- 2018-07-03 WO PCT/CN2018/094294 patent/WO2019062252A1/zh unknown
-
2020
- 2020-03-27 US US16/832,676 patent/US11405489B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101282282A (zh) * | 2007-04-06 | 2008-10-08 | 杭州华三通信技术有限公司 | 服务质量等级确定方法、系统及终端 |
US8315241B2 (en) * | 2008-03-31 | 2012-11-20 | Lockheed Martin Corporation | Method and apparatus for providing quality of service in wireless networks and sensor networks |
Also Published As
Publication number | Publication date |
---|---|
EP3678332B1 (en) | 2023-09-06 |
KR20200052972A (ko) | 2020-05-15 |
JP6968990B2 (ja) | 2021-11-24 |
JP2020536416A (ja) | 2020-12-10 |
KR102397029B1 (ko) | 2022-05-12 |
WO2019062252A1 (zh) | 2019-04-04 |
CN109600248A (zh) | 2019-04-09 |
EP3678332A1 (en) | 2020-07-08 |
US20200228633A1 (en) | 2020-07-16 |
US11405489B2 (en) | 2022-08-02 |
EP3678332A4 (en) | 2020-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200358886A1 (en) | Data Transmission Method, Apparatus, And System | |
KR101097083B1 (ko) | 다수의 요청에 기초한 qos 처리의 제공 | |
US11405489B2 (en) | Method and apparatus for determining quality of service, and storage medium | |
US11277313B2 (en) | Data transmission method and corresponding device | |
KR100990340B1 (ko) | 무선 통신 환경에서의 패킷 라우팅 | |
KR101046893B1 (ko) | 이동 표시의 리소스 요청기로의 제공 | |
CN109076017B (zh) | 用于路由信号的方法、路由设备和计算机可读存储介质 | |
CN111699666B (zh) | 用于高效多径传输的技术 | |
US20200128112A1 (en) | Packet transmission method, proxy server, and computer-readable storage medium | |
CN110944358B (zh) | 数据传输方法和设备 | |
WO2020063338A1 (zh) | 一种实现数据传输的方法、装置和系统 | |
CN106464567B (zh) | 一种流量动态控制方法、设备及网关、融合接入汇聚点 | |
US10764411B2 (en) | Stream control transmission protocol SCTP-based communications method and system, and apparatus | |
WO2016119269A1 (zh) | 一种业务流数据包的处理方法及装置 | |
CN116346294A (zh) | 通信方法、装置、相关设备及存储介质 | |
KR20120014572A (ko) | 무선 네트워크들에서 다수의 프로토콜을 지원하기 위한 기술들 | |
US20240007895A1 (en) | Communication control device, communication control method and recording medium | |
WO2022222693A1 (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 |