CN114126086A - 数据传输方法、装置、电子设备及计算机可读存储介质 - Google Patents
数据传输方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114126086A CN114126086A CN202010900279.4A CN202010900279A CN114126086A CN 114126086 A CN114126086 A CN 114126086A CN 202010900279 A CN202010900279 A CN 202010900279A CN 114126086 A CN114126086 A CN 114126086A
- Authority
- CN
- China
- Prior art keywords
- tcp
- optimization module
- tcp connection
- data message
- upf
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0231—Traffic management, e.g. flow control or congestion control based on communication conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0289—Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
- H04W28/14—Flow control between communication endpoints using intermediate storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供了一种数据传输方法、装置、电子设备及计算机可读存储介质,包括:在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与UE之间的第一TCP连接;通过第一TCP连接接收第一UPF单元转发的数据报文,并建立第二UPF单元中TCP优化模块与DN之间的第二TCP连接;基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。该方案通过在UE有上行业务需求时,以TCP优化模块为转发结点在UE和DN之间建立两段TCP连接,使得UE和DN之间的TCP连接可以通过TCP优化模块进行发送速率优化,实现拥塞控制,提高TCP层的性能,进而提高应用层数据业务质量。
Description
技术领域
本申请涉及通信技术领域,具体而言,本申请涉及一种数据传输方法、装置、电子设备及计算机可读存储介质。
背景技术
现有5G(5th Generation)网络中,用户进行上行业务时,用户和DN(Data Netwok,数据网络)直接建立TCP(Transmission Control Protocol,传输控制协议)连接,是端到端的TCP控制,而业务数据路径经UE(User Equipment,用户设备)→5G-AN(5G AccessNetwork,5G接入网络)→UPF(User Plane Function,用户面能)→DN多个网络结点传输。但是当接入用户数多,上行业务量大时,TCP层性能降低(例如TCP传输可能出现延时或丢包),将导致应用层数据业务质量变差。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一,本申请实施例所提供的技术方案如下:
第一方面,本申请实施例提供了一种数据传输方法,包括:
在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与UE之间的第一TCP连接;
通过第一TCP连接接收第一UPF单元转发的数据报文,并建立第二UPF单元中TCP优化模块与DN之间的第二TCP连接;
基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
在本申请的一种可选实施例中,第二UPF单元中部署有应用容器引擎Docker,且TCP优化模块部署在Docker中。
在本申请的一种可选实施例中,接收第一UPF单元转发的数据报文,包括:
接收经第一UPF单元改写后的数据报文,其中,改写后的数据报文的包头中目的网际互连协议IP为TCP优化模块的IP;
该方法还包括:
在以发送速率将数据报文通过第二TCP连接发送至DN之前,再次改写数据报文,其中,再次改写后的数据报文的包头中目的IP为DN的IP。
在本申请的一种可选实施例中,建立与DN之间的第二TCP连接,包括:
在通过第一TCP连接接收第一UPF单元转发的数据报文后,向DN发送TCP连接请求;
响应于DN的连接请求反馈信息,建立与DN之间的第二TCP连接。
在本申请的一种可选实施例中,基于第二UPF单元中TCP优化模块的增益状态以及第二TCP连接的带宽确定数据报文的发送速率,包括:
根据第二UPF单元中TCP优化模块的增益状态确定对应的增益值;
将第二UPF单元中TCP优化模块对应的增益值以及第二TCP连接的带宽两者的乘积,作为数据报文的发送速率。
在本申请的一种可选实施例中,TCP优化模块中设置有发送队列,在将数据报文通过第二TCP连接发送至DN之前,还包括:
将数据报文存储至第二UPF单元中TCP优化模块的发送队列。
在本申请的一种可选实施例中,TCP优化模块中还设置有已发队列,在将数据报文通过第二TCP连接发送至DN之后,还包括:
将数据报文存储至第二UPF单元中TCP优化模块的已发队列,并接收DN反馈的发送状态;
若发送状态指示发送失败,则从已发队列中取出数据报文进行重传,若发送状态指示发送成功,则从已发队列中删除数据报文。
第二方面,本申请实施例提供了一种数据传输方法,包括:
获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,TCP优化模块的IP和端口标识与第二UPF单元的IP和端口标识相同;
在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于TCP优化模块的IP和端口标识,建立与TCP优化模块之间的第一TCP连接,以使第一UPF单元将数据报文通过第一TCP连接转发至TCP优化模块,以及TCP优化模块将数据报文通过与DN之间的第二TCP连接转发至DN。
第三方面,本申请实施例提供了一种数据传输装置,包括:
第一TCP连接建立模块,用于在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与UE之间的第一TCP连接;
第二TCP连接建立模块,用于通过第一TCP连接接收第一UPF单元转发的数据报文,并建立第二UPF单元中TCP优化模块与DN之间的第二TCP连接;
优化发送模块,用于基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
在本申请的一种可选实施例中,第二UPF单元中部署有应用容器引擎Docker,且TCP优化模块部署在Docker中。
在本申请的一种可选实施例中,第二TCP连接建立模块还包括第一改写子模块,用于:
接收经第一UPF单元改写后的数据报文,其中,改写后的数据报文的包头中目的网际互连协议IP为TCP优化模块的IP;
相应地,优化发送模块还包括第二改写子模块,用于:
在以发送速率将数据报文通过第二TCP连接发送至DN之前,再次改写数据报文,其中,再次改写后的数据报文的包头中目的IP为DN的IP。
在本申请的一种可选实施例中,第二TCP连接建立模块具体用于:
在通过第一TCP连接接收第一UPF单元转发的数据报文,向DN发送TCP连接请求;
响应于DN的连接请求反馈信息,建立与DN之间的第二TCP连接。
在本申请的一种可选实施例中,优化发送模块具体用于:
根据第二UPF单元中TCP优化模块的增益状态确定对应的增益值;
将第二UPF单元中TCP优化模块对应的增益值以及第二TCP连接的带宽两者的乘积,作为数据报文的发送速率。
在本申请的一种可选实施例中,TCP优化模块中设置有发送队列,该装置还包括第一缓存模块,用于:
在将数据报文通过第二TCP连接发送至DN之前,将数据报文存储至第二UPF单元中TCP优化模块的发送队列。
在本申请的一种可选实施例中,TCP优化模块中还设置有已发队列,该装置还包括第二缓存模块,用于:
在将数据报文通过第二TCP连接发送至DN之后,将数据报文存储至第二UPF单元中TCP优化模块的已发队列,并接收DN反馈的发送状态;
若发送状态指示发送失败,则从已发队列中取出数据报文进行重传,若发送状态指示发送成功,则从已发队列中删除数据报文。
第四方面,本申请实施例提供了一种数据传输装置,包括:
TCP优化模块信息获取模块,获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,TCP优化模块的IP和端口标识与第二UPF单元的IP和端口标识相同;
第一TCP连接建立模块,用于在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于TCP优化模块的IP和端口标识,建立与TCP优化模块之间的第一TCP连接,以使第一UPF单元将数据报文通过第一TCP连接转发至TCP优化模块,以及TCP优化模块将数据报文通过与DN之间的第二TCP连接转发至DN。
第五方面,本申请实施例提供了一种电子设备,包括存储器和处理器;
存储器中存储有计算机程序;
处理器,用于执行计算机程序以实现第一方面实施例或第一方面任一可选实施例中所提供的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现第一方面实施例或第一方面任一可选实施例中所提供的方法。
本申请提供的技术方案带来的有益效果是:
通过增加TCP优化模块,在UE有上行业务需求时,以TCP优化模块为中间转发结点在UE和DN之间建立两段TCP连接,使得UE和DN之间的TCP连接可以通过TCP优化模块进行分区优化,在上行业务量大时进行发送速率优化,实现拥塞控制,提高TCP层的性能,进而提高应用层数据业务质量。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为现有技术中上行业务应用层的数据传输路径示意图;
图2为本申请实施例中上行业务应用层的数据传输路径示意图;
图3为本申请实施例提供的一种数据传输方法的流程示意图;
图4为本申请实施例提供的另一种数据传输方法的流程示意图;
图5为本申请实施例提供的一种数据传输装置的结构框图;
图6为本申请实施例提供的另一种数据传输装置的结构框图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在现有5G网络中,用户进行上行业务时,在传输层,UE和DN之间直接建立TCP连接,在应用层,数据传输路径如图1所示,UE→5G-AN→第一UPF单元→DN,从UE到DN经过了多个网络结点,其中,UE与5G-AN通过Rrc接口通信,5G-AN与第一UPF单元之间通过N3接口通信,第一UPF单元与DN之间通过N6接口进行通信。由于UE和DN之间仅有一段TCP连接,无法对各个结点间的网络传输进行分区优化,故当接入用户较多,上行业务量大时,传输层的性能降低,将导致应用层数据业务质量变差。
基于上述问题,本申请实施例提供了一种数据传输方案,以提高上行业务中传输层的性能。该方案将UE和DN之间的TCP连接分为两段,在图1的基础上增加了第二UPF单元,并在第二UPF单元中设置TCP优化模块,在数据传输过程中分别建立UE和TCP优化模块之间的第一TCP连接以及TCP优化模块与DN之间的第二TCP连接。
具体来说,在第二UPF单元中部署一个Docker,在该Docker内部部署TCP优化模块,该部署方式可以通过Docker实现第二UPF单元中业务处理App(Application,应用程序)和TCP优化模块的隔离,也提高了系统资源的利用率。为TCP优化模块配置的服务器IP和端口为DN的IP和TCP端口,并配置监听DN的TCP端口,那么TCP优化模块可以向DN发送TCP连接请求(即后文中的第三TCP链接请求)以建立TCP连接(即后文中的第二TCP连接)。TCP优化模块使用第二UPF单元的IP和端口,该端口IP将预配置在使用本方案的UE中,以使UE可以向TCP优化模块发送TCP连接请求(即后文中的第二TCP连接请求)以建立TCP连接(即后文中的第一TCP连接)。
该方案应用层的数据传输路径如图2中实线所示,在图1的传输路径的基础上,第一UPF单元通过UPF单元间的内部Fabric接口通信,第二UPF单元与DN通过N6接口通信。下面对该方案中的数据传输方法进行详细说明。
图3为本申请实施例提供的一种数据传输方法的流程示意图,该方法的执行主体为设置在第二UPF单元中的TCP优化模块,如图3所示,该方法可以包括:
步骤301,在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与UE之间的第一TCP连接。
其中,建立与UE之间的第一TCP连接,包括:接收UE通过第一UPF单元发送的第二TCP连接请求;响应于第二TCP连接请求,建立与UE之间的第一TCP连接。
具体地,当UE需要连接DN进行上行业务时,在应用层,UE通过第一UPF单元分别向DN发送第一TCP连接请求,该第一TCP请求中携带有UE想要发送给DN的数据报文,且该数据报文的包头中的目标IP为DN的IP。同时,UE通过第一UPF单元向TCP优化模块发送第二TCP连接请求,此时第一UPF单元不会将数据报文发送至DN,而是将数据报文改写后发送至第二UPF单元中的TCP优化模块,那么,UE不会直接与DN建立TCP连接,由于UE预先配置有TCP优化模块的IP和端口信息,那么基于此,UE建立与TCP优化模块之间的第一TCP连接,即建立了UE与DN之间的第一段TCP连接。
其中,UE建立与TCP优化模块之间的第一TCP连接,可以包括:UE通过第一UPF单元向TCP优化模块发送的第二TCP连接请求;响应于第二TCP连接请求,TCP优化模块建立与UE之间的第一TCP连接。
其中,第一UPF单元通过socket对数据报文的包头进行改写,将目的IP改写为TCP优化模块的IP。第一UPF单元通过socket监听DN的TCP端口,以获知UE向DN发送了TCP连接请求,或者第一UPF单元通过直接解析数据报文包头中的目的IP和端口信息,以获知UE向DN发送了TCP连接请求。
步骤302,通过第一TCP连接接收第一UPF单元转发的数据报文,并建立第二UPF单元中TCP优化模块与DN之间的第二TCP连接。
具体地,当第一UPF单元接收到UE发送的数据报文时,将该数据报文的包头进行改写,将包头中的目标IP改写为TCP优化模块的IP,得到改写后的数据报文,TCP优化模块接收经第一UPF单元改写后的数据报文。TCP优化模块在接收到改写后的数据报文时,由于其服务器目的IP和端口预先设置为DN的IP和TCP端口,因此基于预先设置的服务器目的IP和端口,向DN发送第三TCP连接建立请求,响应于DN的连接请求反馈信息,建与DN之间的第二TCP连接,即建立了UE与DN之间的第二段TCP连接。
步骤303,基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
具体地,由于上一步骤建立了第二TCP连接,那么TCP优化模块对改写后的数据报文的包头进行再次改写,再次改写后的数据报文的包头中目的IP和端口为DN的IP和TCP端口,并基于第二TCP连接,在应用层将再次改修后的数据报文发送至DN,至此,通过UE和DN之间的两端TCP连接即完成了UE与DN的上行业务。具体来说,TCP优化模块在发送再次改写后的数据至DN的过程中,基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
可以理解的是,UE通过第一UPF单元向DN发出TCP连接请求,第一UPF单元不会直接将数据报文发送至DN,而是基于UE与TCP优化模块之间的第一TCP连接,将改写后的数据报文发送至TCP优化模块,再基于TCP优化模块与DN之间的第二TCP连接,将再次改写后的数据报文发送至DN。在此数据传输过程中,在UE和DN之间增加了TCP优化模块,该TCP优化模块可以理解为TCP转发模块,将UE和DN之间的TCP连接分为两段,可以通过TCP优化模块对第二TCP连接的数据传输进行发送速率优化,进行拥塞控制,提高TCP层的性能。
本申请提供的方案,通过增加TCP优化模块,在UE有上行业务需求时,以TCP优化模块为中间转发结点在UE和DN之间建立两段TCP连接,使得UE和DN之间的TCP连接可以通过TCP优化模块进行分区优化,在上行业务量大时进行发送速率优化,实现拥塞控制,提高TCP层的性能,进而提高应用层数据业务质量。
在对UE和DN之间的两段TCP连接进行分区优化时,主要是通过TCP优化模块对TCP优化模块与DN之间的第二TCP连接进行优化,具体来说,主要是控制数据报文的发送速率,以及基于缓冲区(后文中的发送队列和已发队列)在发送出错时进行重传,下面将对TCP优化模块对第二TCP连接的优化进行进一步说明。
在本申请的一种可选实施例中,将数据报文通过第二TCP连接发送至DN,包括:
基于第二UPF单元中TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率;
以发送速率将数据报文通过第二TCP连接发送至DN。
其中,可以根据实际需求为TCP优化模块设置多种不同的增益状态,每种状态对应不同的增益值。举例来说,可以为TCP优化模块设置四种状态分别为:启动、探测rrt(round-trip time,往返时延)、探测bw(bandwidth,带宽)以及超载,其中,启动对应的增益值为1~3,探测rrt和探测bw对应的增益值为1左右,超载对应的增益值为0~0.5。
具体地,基于第二UPF单元中TCP优化模块的增益状态以及第二TCP连接的带宽确定数据报文的发送速率,包括:根据第二UPF单元中TCP优化模块的增益状态确定对应的增益值;将第二UPF单元中TCP优化模块对应的增益值以及第二TCP连接的带宽两者的乘积,作为数据报文的发送速率。由于考虑了TCP模块的增益状态,在不同的增益状态下采用不同的发送速率可以合理控制发送速率,提升性能。
在本申请的一种可选实施例中,TCP优化模块中设置有发送队列,在将数据报文通过第二TCP连接发送至DN之前,还包括:
将数据报文存储至第二UPF单元中TCP优化模块的发送队列。
TCP优化模块中还设置有已发队列,在将数据报文通过第二TCP连接发送至DN之后,还包括:
将数据报文存储至第二UPF单元中TCP优化模块的已发队列,并接收DN反馈的发送状态;
若发送状态指示发送失败,则从已发队列中取出数据报文进行重传,若发送状态指示发送成功,则从已发队列中删除数据报文。
具体地,TCP优化模块为每个第二TCP连接分配两个缓冲区,分别为待发队列(SQA)和已发队列(SQB),在TCP优化模块通过第一TCP连接接收到改写后的数据报文,并对改写后的数据报文进行再次改写,将再次改写后的数据报文加入SQA中,等待发送。在发送该数据报文时,基于上述方式确定出对应的发送速率,并以该发送速率将该数据报文发送至DN,并在发送后将该第一数据报缓存于SQB中。对于缓存与SQB中的数据报文,在发送出错的情形下,则可以再次从SQB中调取该数据报文进行重传,在发送成功(即DN反馈正确序列号的ack后),从SQB中删除该数据报文,释放内存。
进一步地,受TCP优化模块内存限制,需要为每个第二TCP连接的SQA和SQB大小设置上限,一般来说,SQA上限根据Docker部署时的实际内存大小进行配置,SQB上限设置为该第二TCP连接的带宽和时延的乘积。为了防止SQA或SQB缓冲区的溢出而丢失数据,需要进行适当的流量控制,若TCP优化模块处于超载状态,则需要进行速率控制,即可以提高发送速率,保证缓冲区的正常工作。
图4为本申请实施例提供的一种数据传输方法的流程示意图,该方法的执行主体为UE,如图4所示,该方法可以包括:
步骤S401,获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,TCP优化模块的IP和端口标识与第二UPF单元的IP和端口标识相同。
步骤S402,在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于TCP优化模块的IP和端口标识,建立与TCP优化模块之间的第一TCP连接,以使第一UPF单元将数据报文通过第一TCP连接转发至TCP优化模块,以及TCP优化模块将数据报文通过与DN之间的第二TCP连接转发至DN。
具体地,当UE需要连接DN进行上行业务时,在应用层,UE通过第一UPF单元分别向DN发送第一TCP连接请求,该第一TCP请求中携带有UE想要发送给DN的数据报文,且该数据报文的包头中的目标IP为DN的IP。同时,UE通过第一UPF单元向TCP优化模块发送第二TCP连接请求,此时第一UPF单元不会将数据报文发送至DN,而是将数据报文改写后发送至第二UPF单元中的TCP优化模块,那么,UE不会直接与DN建立TCP连接,由于UE预先配置有TCP优化模块的IP和端口信息,那么基于此,UE建立与TCP优化模块之间的第一TCP连接,即建立了UE与DN之间的第一段TCP连接。
其中,UE建立与TCP优化模块之间的第一TCP连接,可以包括:UE通过第一UPF单元向TCP优化模块发送的第二TCP连接请求;响应于第二TCP连接请求,TCP优化模块建立与UE之间的第一TCP连接。
其中,第一UPF单元通过socket对数据报文的包头进行改写,将目的IP改写为TCP优化模块的IP。第一UPF单元通过socket监听DN的TCP端口,以获知UE向DN发送了TCP连接请求,或者第一UPF单元通过直接解析数据报文包头中的目的IP和端口信息,以获知UE向DN发送了TCP连接请求。
当第一UPF单元接收到UE发送的数据报文时,将该数据报文的包头进行改写,将包头中的目标IP改写为TCP优化模块的IP,得到改写后的数据报文,TCP优化模块接收经第一UPF单元改写后的数据报文。TCP优化模块在接收到改写后的数据报文时,由于其服务器目的IP和端口预先设置为DN的IP和TCP端口,因此基于预先设置的服务器目的IP和端口,向DN发送第三TCP连接建立请求,响应于DN的连接请求反馈信息,建与DN之间的第二TCP连接,即建立了UE与DN之间的第二段TCP连接。
由于上一步骤建立了第二TCP连接,那么TCP优化模块对改写后的数据报文的包头进行再次改写,再次改写后的数据报文的包头中目的IP和端口为DN的IP和TCP端口,并基于第二TCP连接,在应用层将再次改修后的数据报文发送至DN,至此,通过UE和DN之间的两端TCP连接即完成了UE与DN的上行业务。具体来说,TCP优化模块在发送再次改写后的数据至DN的过程中,基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
本申请提供的方案,通过增加TCP优化模块,在UE有上行业务需求时,以TCP优化模块为中间转发结点在UE和DN之间建立两端TCP连接,使得UE和DN之间的TCP连接可以通过TCP优化模块进行分区优化,在上行业务量大时进行发送速率优化,实现拥塞控制,提高TCP层的性能,进而提高应用层数据业务质量。
图5为本申请实施例提供的一种数据传输装置的结构框图,该装置500可以包括:第一TCP连接建立模块501、第二TCP连接建立模块502以及优化发送模块503,其中:
第一TCP连接建立模块501用于在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与UE之间的第一TCP连接;
第二TCP连接建立模块502用于通过第一TCP连接接收第一UPF单元转发的数据报文,并建立第二UPF单元中TCP优化模块与DN之间的第二TCP连接;
优化发送模块503用于基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
本申请提供的方案,通过增加TCP优化模块,在UE有上行业务需求时,以TCP优化模块为中间转发结点在UE和DN之间建立两端TCP连接,使得UE和DN之间的TCP连接可以通过TCP优化模块进行分区优化,在上行业务量大时进行发送速率优化,实现拥塞控制,提高TCP层的性能,进而提高应用层数据业务质量。
在本申请的一种可选实施例中,第二UPF单元中部署有应用容器引擎Docker,且TCP优化模块部署在Docker中。
在本申请的一种可选实施例中,第二TCP连接建立模块还包括第一改写子模块,用于:
接收经第一UPF单元改写后的数据报文,其中,改写后的数据报文的包头中目的网际互连协议IP为TCP优化模块的IP;
相应地,优化发送模块还包括第二改写子模块,用于:
在以发送速率将数据报文通过第二TCP连接发送至DN之前,再次改写数据报文,其中,再次改写后的数据报文的包头中目的IP为DN的IP。
在本申请的一种可选实施例中,第二TCP连接建立模块具体用于:
在通过第一TCP连接接收第一UPF单元转发的数据报文,向DN发送TCP连接请求;
响应于DN的连接请求反馈信息,建立与DN之间的第二TCP连接。
在本申请的一种可选实施例中,优化发送模块具体用于:
根据第二UPF单元中TCP优化模块的增益状态确定对应的增益值;
将第二UPF单元中TCP优化模块对应的增益值以及第二TCP连接的带宽两者的乘积,作为数据报文的发送速率。
在本申请的一种可选实施例中,TCP优化模块中设置有发送队列,该装置还包括第一缓存模块,用于:
在将数据报文通过第二TCP连接发送至DN之前,将数据报文存储至第二UPF单元中TCP优化模块的发送队列。
在本申请的一种可选实施例中,TCP优化模块中还设置有已发队列,该装置还包括第二缓存模块,用于:
在将数据报文通过第二TCP连接发送至DN之后,将数据报文存储至第二UPF单元中TCP优化模块的已发队列,并接收DN反馈的发送状态;
若发送状态指示发送失败,则从已发队列中取出数据报文进行重传,若发送状态指示发送成功,则从已发队列中删除数据报文。
图6为本申请实施例提供的一种数据传输装置的结构框图,该装置600可以包括:TCP优化模块信息获取模块601和第一TCP连接建立模块602,其中:
TCP优化模块信息获取模块601获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,TCP优化模块的IP和端口标识与第二UPF单元的IP和端口标识相同;
第一TCP连接建立模块602用于在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于TCP优化模块的IP和端口标识,建立与TCP优化模块之间的第一TCP连接,以使第一UPF单元将数据报文通过第一TCP连接转发至TCP优化模块,以及TCP优化模块将数据报文通过与DN之间的第二TCP连接转发至DN。
本申请提供的方案,通过增加TCP优化模块,在UE有上行业务需求时,以TCP优化模块为中间转发结点在UE和DN之间建立两段TCP连接,使得UE和DN之间的TCP连接可以通过TCP优化模块进行分区优化,在上行业务量大时进行发送速率优化,实现拥塞控制,提高TCP层的性能,进而提高应用层数据业务质量。
基于相同的原理,本申请实施例还提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时,实现本申请任一可选实施例中所提供的方法,具体可实现如下情况:
在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与UE之间的第一TCP连接;通过第一TCP连接接收第一UPF单元转发的数据报文,并建立第二UPF单元中TCP优化模块与DN之间的第二TCP连接;基于TCP优化模块的增益状态以及第二TCP连接的带宽,确定数据报文的发送速率,并以发送速率将数据报文通过第二TCP连接发送至DN。
或者,获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,TCP优化模块的IP和端口标识与第二UPF单元的IP和端口标识相同;在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于TCP优化模块的IP和端口标识,建立与TCP优化模块之间的第一TCP连接,以使第一UPF单元将数据报文通过第一TCP连接转发至TCP优化模块,以及TCP优化模块将数据报文通过与DN之间的第二TCP连接转发至DN。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请任一实施例所示的方法。
可以理解的是,介质中存储的可以是数据传输方法对应的计算机程序。
图7中示出了本申请实施例所适用的一种电子设备的结构示意图,如图7所示,图7所示的电子设备700包括:处理器701和存储器703。其中,处理器701和存储器703相连,如通过总线702相连。进一步地,电子设备700还可以包括收发器704,电子设备700可以通过收发器704与其他电子设备进行数据的交互。需要说明的是,实际应用中收发器704不限于一个,该电子设备700的结构并不构成对本申请实施例的限定。
其中,处理器701应用于本申请实施例中,可以用于实现图5或图6所示的数据传输装置的功能。
处理器701可以是CPU,通用处理器,DSP,ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器701也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线702可包括一通路,在上述组件之间传送信息。总线702可以是PCI总线或EISA总线等。总线702可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器703可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM、CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器703用于存储执行本申请方案的应用程序代码,并由处理器701来控制执行。处理器701用于执行存储器703中存储的应用程序代码,以实现图5或图6所示实施例提供的数据传输装置的动作。
本申请实施例提供的技术方案可以适用于多种系统,尤其是5G系统。例如适用的系统可以是全球移动通讯(global system of mobile communication,GSM)系统、码分多址(code division multiple access,CDMA)系统、宽带码分多址(Wideband CodeDivision Multiple Access,WCDMA)通用分组无线业务(general packet radio service,GPRS)系统、长期演进(long term evolution,LTE)系统、LTE频分双工(frequencydivision duplex,FDD)系统、LTE时分双工(time division duplex,TDD)系统、高级长期演进(long term evolution advanced,LTE-A)系统、通用移动系统(universal mobiletelecommunication system,UMTS)、全球互联微波接入(worldwide interoperabilityfor microwave access,WiMAX)系统、5G新空口(New Radio,NR)系统等。这多种系统中均包括终端设备和网络设备。系统中还可以包括核心网部分,例如演进的分组系统(EvlovedPacket System,EPS)、5G系统(5GS)等。
本申请实施例涉及的终端设备,可以是指向用户提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备等。在不同的系统中,终端设备的名称可能也不相同,例如在5G系统中,终端设备可以称为用户设备(User Equipment,UE)。无线终端设备可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网(Core Network,CN)进行通信,无线终端设备可以是移动终端设备,如移动电话(或称为“蜂窝”电话)和具有移动终端设备的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。例如,个人通信业务(Personal Communication Service,PCS)电话、无绳电话、会话发起协议(Session Initiated Protocol,SIP)话机、无线本地环路(Wireless Local Loop,WLL)站、个人数字助理(Personal Digital Assistant,PDA)等设备。无线终端设备也可以称为系统、订户单元(subscriber unit)、订户站(subscriber station),移动站(mobilestation)、移动台(mobile)、远程站(remote station)、接入点(access point)、远程终端设备(remote terminal)、接入终端设备(access terminal)、用户终端设备(userterminal)、用户代理(user agent)、用户装置(user device),本申请实施例中并不限定。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (12)
1.一种数据传输方法,其特征在于,包括:
在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与所述UE之间的第一TCP连接;
通过所述第一TCP连接接收第一UPF单元转发的所述数据报文,并建立第二UPF单元中TCP优化模块与所述DN之间的第二TCP连接;
基于所述TCP优化模块的增益状态以及所述第二TCP连接的带宽,确定所述数据报文的发送速率,并以所述发送速率将所述数据报文通过所述第二TCP连接发送至所述DN。
2.根据权利要求1所述的方法,其特征在于,所述第二UPF单元中部署有应用容器引擎Docker,且所述TCP优化模块部署在所述Docker中。
3.根据权利要求1所述的方法,其特征在于,所述接收第一UPF单元转发的所述数据报文,包括:
接收经所述第一UPF单元改写后的所述数据报文,其中,改写后的所述数据报文的包头中目的网际互连协议IP为所述TCP优化模块的IP;
所述方法还包括:
在以所述发送速率将所述数据报文通过所述第二TCP连接发送至所述DN之前,再次改写所述数据报文,其中,再次改写后的所述数据报文的包头中目的IP为所述DN的IP。
4.根据权利要求1所述的方法,其特征在于,所述建立与所述DN之间的第二TCP连接,包括:
在通过所述第一TCP连接接收第一UPF单元转发的所述数据报文后,向所述DN发送TCP连接请求;
响应于所述DN的连接请求反馈信息,建立与所述DN之间的第二TCP连接。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第二UPF单元中TCP优化模块的增益状态以及所述第二TCP连接的带宽确定所述数据报文的发送速率,包括:
根据所述第二UPF单元中TCP优化模块的增益状态确定对应的增益值;
将所述第二UPF单元中TCP优化模块对应的增益值以及所述第二TCP连接的带宽两者的乘积,作为所述数据报文的发送速率。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述TCP优化模块中设置有发送队列,在将所述数据报文通过所述第二TCP连接发送至所述DN之前,还包括:
将所述数据报文存储至所述第二UPF单元中TCP优化模块的发送队列。
7.根据权利要求6所述的方法,其特征在于,所述TCP优化模块中还设置有已发队列,在将所述数据报文通过所述第二TCP连接发送至所述DN之后,还包括:
将所述数据报文存储至所述第二UPF单元中TCP优化模块的已发队列,并接收所述DN反馈的发送状态;
若所述发送状态指示发送失败,则从所述已发队列中取出所述数据报文进行重传,若所述发送状态指示发送成功,则从所述已发队列中删除所述数据报文。
8.一种数据传输方法,其特征在于,包括:
获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,所述TCP优化模块的IP和端口标识与所述第二UPF单元的IP和端口标识相同;
在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于所述TCP优化模块的IP和端口标识,建立与所述TCP优化模块之间的第一TCP连接,以使第一UPF单元将所述数据报文通过所述第一TCP连接转发至所述TCP优化模块,以及所述TCP优化模块将所述数据报文通过与所述DN之间的第二TCP连接转发至所述DN。
9.一种数据传输装置,其特征在于,包括:
第一TCP连接建立模块,用于在用户设备UE通过第一用户面功能UPF单元向数据网络DN发送数据报文时,建立与所述UE之间的第一TCP连接;
第二TCP连接建立模块,用于通过所述第一TCP连接接收第一UPF单元转发的所述数据报文,并建立第二UPF单元中TCP优化模块与所述DN之间的第二TCP连接;
优化发送模块,用于基于所述TCP优化模块的增益状态以及所述第二TCP连接的带宽,确定所述数据报文的发送速率,并以所述发送速率将所述数据报文通过所述第二TCP连接发送至所述DN。
10.一种数据传输装置,其特征在于,包括:
TCP优化模块信息获取模块,用于获取第二用户面功能UPF单元中传输控制协议TCP优化模块的网际互连协议IP和端口标识,其中,所述TCP优化模块的IP和端口标识与所述第二UPF单元的IP和端口标识相同;
第一TCP连接建立模块,用于在通过第一用户面功能UPF单元向数据网络DN发送数据报文时,基于所述TCP优化模块的IP和端口标识,建立与所述TCP优化模块之间的第一TCP连接,以使第一UPF单元将所述数据报文通过所述第一TCP连接转发至所述TCP优化模块,以及所述TCP优化模块将所述数据报文通过与所述DN之间的第二TCP连接转发至所述DN。
11.一种电子设备,其特征在于,包括存储器和处理器;
所述存储器中存储有计算机程序;
所述处理器,用于执行所述计算机程序以实现权利要求1至8中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010900279.4A CN114126086B (zh) | 2020-08-31 | 2020-08-31 | 数据传输方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010900279.4A CN114126086B (zh) | 2020-08-31 | 2020-08-31 | 数据传输方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114126086A true CN114126086A (zh) | 2022-03-01 |
CN114126086B CN114126086B (zh) | 2023-06-23 |
Family
ID=80360299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010900279.4A Active CN114126086B (zh) | 2020-08-31 | 2020-08-31 | 数据传输方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114126086B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022931A (zh) * | 2022-05-27 | 2022-09-06 | 中国电信股份有限公司 | 速率控制方法及装置、计算机可读存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106341348A (zh) * | 2015-07-17 | 2017-01-18 | 普天信息技术有限公司 | 一种面向tcp业务的流量控制方法及接入网网元 |
CN109156040A (zh) * | 2016-05-26 | 2019-01-04 | 华为技术有限公司 | 一种通信控制的方法及相关网元 |
CN110086837A (zh) * | 2018-01-25 | 2019-08-02 | 中兴通讯股份有限公司 | 一种报文的转发控制方法、设备和计算机可读存储介质 |
WO2020034861A1 (zh) * | 2018-08-13 | 2020-02-20 | 华为技术有限公司 | 通信方法和装置 |
-
2020
- 2020-08-31 CN CN202010900279.4A patent/CN114126086B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106341348A (zh) * | 2015-07-17 | 2017-01-18 | 普天信息技术有限公司 | 一种面向tcp业务的流量控制方法及接入网网元 |
CN109156040A (zh) * | 2016-05-26 | 2019-01-04 | 华为技术有限公司 | 一种通信控制的方法及相关网元 |
CN110086837A (zh) * | 2018-01-25 | 2019-08-02 | 中兴通讯股份有限公司 | 一种报文的转发控制方法、设备和计算机可读存储介质 |
WO2020034861A1 (zh) * | 2018-08-13 | 2020-02-20 | 华为技术有限公司 | 通信方法和装置 |
Non-Patent Citations (1)
Title |
---|
"\"S2-2004420 S2-2004151r01 KI#2 - New Sol - local DN notification to the UE\"", 3GPP TSG_SA\\WG2_ARCH * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022931A (zh) * | 2022-05-27 | 2022-09-06 | 中国电信股份有限公司 | 速率控制方法及装置、计算机可读存储介质及电子设备 |
CN115022931B (zh) * | 2022-05-27 | 2024-02-06 | 中国电信股份有限公司 | 速率控制方法及装置、计算机可读存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114126086B (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7195421B2 (ja) | データ伝送方法及び装置、端末 | |
EP3761679A1 (en) | Location method and related device | |
US11510129B2 (en) | Relay transmission method and relay node | |
CN112187414B (zh) | 指示数据传输情况的方法和装置 | |
KR20210113591A (ko) | 데이터 흐름 처리 방법, 기기 및 저장 매체 | |
US20230051269A1 (en) | Qos control method and apparatus, and readable storage medium | |
CN114979839A (zh) | 一种传输控制协议代理方法及通信装置 | |
WO2020258191A1 (zh) | 一种接入控制方法及装置、终端 | |
US20220061075A1 (en) | Information transmission method and apparatus, and network device | |
JP2022507209A (ja) | データ伝送方法及び端末装置 | |
CN114126086B (zh) | 数据传输方法、装置、电子设备及计算机可读存储介质 | |
EP3920592B1 (en) | Switching method, apparatus and system in wireless communication system | |
CN111543116A (zh) | 中继网络中节点间转发数据的方法和网络节点 | |
CN113115361B (zh) | 以太网帧头压缩处理方法、装置、芯片及计算机程序 | |
WO2021012260A1 (zh) | 用于传输数据的方法、发送端设备和接收端设备 | |
EP4199580A1 (en) | Packet loss indication method and related device | |
CN114365470B (zh) | 用于传输以太网压缩包的方法和设备 | |
WO2017185368A1 (zh) | 一种信令传输方法和设备 | |
WO2017177438A1 (zh) | 一种控制信息的传输方法及装置 | |
WO2021087729A1 (zh) | 一种指示解压缩对象的方法及装置、通信设备 | |
CN116491219A (zh) | 一种通信方法及装置 | |
WO2019136933A1 (zh) | 中继传输的方法和中继节点 | |
WO2022027341A1 (zh) | 无线通信方法和终端设备 | |
WO2018120475A1 (zh) | 一种消息应答方法及无线网络设备 | |
CN113678501B (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 |