CN109428916B - 数据传输方法和装置、终端及服务器 - Google Patents
数据传输方法和装置、终端及服务器 Download PDFInfo
- Publication number
- CN109428916B CN109428916B CN201710743834.5A CN201710743834A CN109428916B CN 109428916 B CN109428916 B CN 109428916B CN 201710743834 A CN201710743834 A CN 201710743834A CN 109428916 B CN109428916 B CN 109428916B
- Authority
- CN
- China
- Prior art keywords
- packet
- data
- terminal
- address
- data transmission
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- 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/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
- H04W28/065—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- 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/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/22—Parsing or analysis of headers
-
- 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/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/321—Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
-
- 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/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/326—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- 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
-
- 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
-
- 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/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种数据传输方法和装置、终端及服务器,该方法包括:在到达组包点之前,缓存上层应用产生的数据IP包;在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;将新的IP包发送给代理服务器。通过本发明的方案,能够显著减小冗余数据的发送、提高传输效率,降低发射功率,从而降低终端功耗,非常适合于对功耗要求苛刻,对时延不敏感的NB‑IoT终端。
Description
技术领域
本发明涉及数据通信领域,尤指一种数据传输方法和装置、终端及服务器。
背景技术
物联网是当前通信技术发展的重大趋势。近年来,无论是3GPP等大型规范组织,还是各国网络运营商,终端厂商,都开始“向低端挖掘”,寻求低速率,低带宽,低耗电的技术方向,eMTC和NB-IoT协议是厂商追寻的热点。
物联网对终端功耗的要求非常苛刻,尤其是NB-IoT对终端功耗的目标是基于5000mAh的电池,使用寿命达到10年。因此提高数据传输效率,降低功耗,延长终端设备的电池使用时间,是一个重要的研究方向。
物联网终端功耗工作环境的特点决定了终端上的设计追求之一就是实现在实现相同的功能的前提下,发送最少的数据。物联网终端,尤其是基于NB-IoT协议的终端,通常工作的场景是非移动性,安装于隐蔽位置。这种工作环境的信号强度和质量一般比较差,发送数据对终端的代价是比普通数据产品要高的。
此外,物联网应用场景的的数据包具有不连续,字节小的特点,且NB-IoT对数据传输时延的要求非常宽松,它适用于速率在250kbps一下,时延容忍度达到10秒的场景,是典型的窄带应用场景。
如图1A所示,为现有技术中的符合3GPP标准的数据传输过程。如图1A所示,UE上的APP应用程序产生IP数据包,经过PDCP、RLC、MAC和PHY最终以物理层传输块的形式发往E-NodeB基站,再由E-NodeB基基站发往核心网和Services即应用服务器。其中终端侧的方案如图1B所示,待发送的三个数据包IP-1,IP-2和IP-3先进入PDCP层,在PDCP层报头压缩等处理后,加入PDCP头部后再进入RLC层,在RLC层进行分割等处理并加上RLC头部,然后进入MAC层,在MAC层处理并增加MAC帧头部,最后进入PHY物理层形成物理层传输块,然后通过空口发出。三个数据包依次通过该流程发出。
3GPP标准里的现有数据传输方案,如果应用在NB-IOT物联网场景下,将会导致终端发送时在无线层的各层添加的包头冗余数据过多,冗余数据在物理层传输块中所占比例大,发送这部分冗余数据会造成一部分不必要的功率消耗,因此并不适用于对终端功耗要求极为苛刻的NB-IOT场景。
发明内容
为了解决上述问题,本发明提出了一种数据传输方法和装置、终端及服务器,能够解决由于冗余数据过多所造成的功耗较大的问题。
为了解决上述技术问题,本发明提出了一种数据传输方法,所述方法包括:
在到达组包点之前,缓存上层应用产生的数据IP包;
在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;
将新的IP包发送给代理服务器。
本发明实施例中,所述新的IP包的长度小于或等于1480字节。
本发明实施例中,所述组包点设置为0.5~10秒。
设置在终端上的数据传输方法,所述方法包括:
接收终端发送的IP包;
解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;并将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
本发明实施例中,所述方法还包括:在转发所述IP包之后,在转发映射表中添加一条映射表项;
所述映射表项包括源IP地址、目的IP地址、源端口号、目的端口号和传输层协议类型。
本发明实施例中,在收到应用服务器下发的数据时,根据所述映射表查找对应的目的IP地址,并将收到的数据转发给目的IP地址对应的终端。
设置在终端上的数据传输装置,设置在终端上,所述装置包括:
缓存单元,用于在到达组包点之前,缓存上层应用产生的数据IP包;
封装单元,用于在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;
发送单元,用于将新的IP包发送给代理服务器。
本发明实施例中,所述新的IP包的长度小于或等于1480字节。
本发明实施例中,所述组包点设置为0.5~10秒。
为了解决上述技术问题,本发明还提出了一种终端,所述终端包括上述任一设置在终端上的数据传输装置。
为了解决上述技术问题,本发明还提出了一种数据传输装置,所述装置包括:
接收单元,用于接收终端发送的IP包;
解析单元,用于解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;
转发单元,用于将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
本发明实施例中,所述装置还包括:
映射单元,用于在转发单元转发所述IP包之后,在转发映射表中添加一条映射表项;所述映射表项包括源IP地址、目的IP地址、源端口号、目的端口号和传输层协议类型。
本发明实施例中,所述转发单元还用于在收到应用服务器下发的数据时,根据所述映射表查找对应的目的IP地址,并将收到的数据转发给目的IP地址对应的终端。
为了解决上述技术问题,本发明还提出了一种服务器,所述服务器包括上述任一设置在服务器上的数据传输装置。
与现有技术相比,本发明提供的技术方案包括:在到达组包点之前,缓存上层应用产生的数据IP包;在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;将新的IP包发送给代理服务器。通过本发明的方案,能够显著减小冗余数据的发送、提高传输效率,降低发射功率,从而降低终端功耗,非常适合于对功耗要求苛刻,对时延不敏感的NB-IoT终端。
附图说明
下面对本发明实施例中的附图进行说明,实施例中的附图是用于对本发明的进一步理解,与说明书一起用于解释本发明,并不构成对本发明保护范围的限制。
图1A为现有技术中的符合3GPP标准的数据传输过程;
图1B为现有技术中终端侧的方案示意图;
图2为本发明实施例提供的一种数据传输方法的流程图;
图3为本发明实施例提供的另一种数据传输方法的流程图;
图4A为本发明实施例提供的又一种数据传输方法的流程图;
图4B为本发明实施例提供的终端对原始数据包进行组包的过程示意图;
图4C为本发明实施例提供的代理服务器解析大包IP包的过程示意图;
图5A为本发明实施例提供的终端的一个组包点周期的处理流程示意图;
图5B为本发明实施例提供的代理服务器的处理流程示意图。
具体实施方式
为了便于本领域技术人员的理解,下面结合附图对本发明作进一步的描述,并不能用来限制本发明的保护范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的各种方式可以相互组合。
参见图2,本发明提出了一种数据传输方法,所述方法包括:
步骤110,终端在到达组包点之前,缓存上层应用产生的数据IP包;
步骤120,终端在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;
其中,终端将缓存的数据IP包作为新的IP包中的Payload数据负载;
步骤130,终端发送新的IP包。
其中,所述组包点设置为10S;新的IP包的长度设置为小于或等于1480字节。如果Payload数据负载大于1480字节,可以将缓存的数据IP封装成多个IP包,每个IP包的长度均小于或等于1480字节。
通过本发明的方案,能够显著减小冗余数据的发送、提高传输效率,降低发射功率,从而降低终端功耗,非常适合于对功耗要求苛刻,对时延不敏感的NB-IoT终端。具体具有以下优势:
(1)减少传输数据量带来的好处,即降功率和省电。
(2)组新包后,不产生冗余信息。由于Payload数据的每个IP包头中均带有表示IP包总长度的字段,代理服务器的解包模块可以通过读取这个字段来进行解包,因此本方案无需增加任何的额外冗余信息。
(3)具有良好的协议兼容性。本方案是针对NB-IoT的补充和优化。主要利用了NB-IoT终端对时延不敏感的特性而提出。尤其适合于对时延不敏感,对功耗和待机时间敏感的NB-IoT应用场景。无需修改NB-IoT协议,无需增加无线网络侧的网元,仅添加的代理服务器也是属于应用层的,即应用场景中的角色,因此方案的发布和应用不需要3GPP等协议组织推动,不需要运营商有额外投入,仅终端OEM厂商就可部署。因此该优化方案的应用可行度高,实现容易。
参见图3,本发明提出了一种数据传输方法,所述方法包括:
步骤210,代理服务器接收终端发送的IP包;
步骤220,代理服务器解析收到的IP包,在收的IP包的Payload数据负载包括多个IP包的情况下,将Payload数据负载中分割为多个IP包;
步骤230,代理服务器将分割得到的各个IP包分别转发到各个IP包对应的应用服务器中。
在步骤220之后,还包括:在映射表中添加一条映射记录;
所述映射记录包括源IP地址、目的IP地址,端口号和传输层协议类型。
本发明实施例,代理服务器在收到应用服务器下发的数据时,根据所述映射表查找对应的终端,并将收到的数据转发给对应的终端。
下面结合具体的实施场景进行说明。
参见图4A,本发明提出了一种数据传输方法,其中展示了系统中多个实体之间的交互图。其中终端指的是NB-IOT终端,例如抄表器,定位器等;代理服务器和应用服务器是和终端配套的,应用厂商维护的普通服务器,可以灵活部署在Internet上任意位置,和无线运营商网络无关。图4A中描述了终端发送数据包,代理服务器转发,以及应用服务器将下行响应数据发回终端的过程。
如图4A所示,本发明提出的数据传输方法包括:
步骤310、终端以1秒为周期,将应用层产生的IP包,待进入NB-IoT协议栈的PDCP层之前,先行缓存起来。
将应用层产生的IP包缓存起来,是为了到周期(即组包点)时,执行组包动作;
步骤320、终端判断到达组包点,将缓存的IP包数据按照预设的长度上限,进行组包。
如图4B所示,为终端对原始数据包进行组包的过程示意图;如图所示,组包含有两个过程,缓冲和封装。图中以应用程序待发送的三个IP包为例进行说明。三个IP包产生的时刻分别是0.2秒,0.4秒和0.6秒(均采用相对时刻),组包周期是1秒,即每秒组包一次并发送一次数据。这三个IP包将被缓存起来,到组包点即1秒的时刻时,三个IP包被作为payload数据封装在新的数据包IP-*中。新的IP包IP-*的目的地址被填充为5.5.5.6即代理服务器的IP地址。三个IP包在Payload数据体中的填充情况为紧密连接填充,不附加任何的额外数据和补充位。在组包后,IP-*这个数据包将被通过NB-IoT协议栈发送给代理服务器。
优选地,长度上限设置为1480字节。考虑到MTU(最大不分片情况下,发送的IP包的总长度)一般为1500字节,而IP包头部为20字节,将缓存的IP包数据以1480字节为上限,进行组包。如果所有IP包总长度小于1480,就以将所有IP包的实际长度为新IP包的负载长度,以代理服务器的IP地址为目的地址,组新的IP包。如果缓存的IP包总数据大于1480,就将缓存的包分为几个集合,每个集合总长度不超过1480,每个集合形成一个单独的IP大包,包头中的目的地址填充为代理服务器的IP地址。
步骤330、终端将组包之后的IP包发送给代理服务器。
步骤340、代理服务器收到上行大包后,执行IP包的解析操作,即解析取出大包的Payload部分,将Payload部分内部的多个原始IP小包取出来;得到组包之前的各个IP包。
如图4C所示为代理服务器解析大包IP包的过程示意图,如图所示,代理服务器收到终端发来的IP-*数据包后,先解析数据包,即将Payload数据部分解析成原始的IP-1,IP-2和IP-3数据包,再根据其各自的目的地址,转发到这3个数据包各自对应的应用服务器上。在转发一个数据包时,会记录源、目的IP和端口,及传输层协议类型,形成转发映射表,目的是为了下行的数据流转发时对照。服务器下行的数据先发到代理服务器,代理服务器的转发模块查询映射表,然后将数据包直接转发给对应终端,下行数据流的情况在图中用虚线标记。
本发明实施例中,将组包之后的IP包称为大包,将组包之前,或者解析之后的IP包称为小包。
步骤350、根据源、目的IP地址和端口号,以及传输层协议类型,缓存一个转发映射表。
如表1所示,为转发映射表结构的结构示意图:
源IP地址1 | 目的IP地址1 | 源端口号1 | 目的端口号1 | 传输层协议1 |
源IP地址2 | 目的IP地址2 | 源端口号2 | 目的端口号2 | 传输层协议2 |
… | … | … | … | … |
源IP地址N | 目的IP地址N | 源端口号N | 目的端口号N | 传输层协议N |
表1转发映射表结构的结构示意图
步骤360、将IP小包转发给应用服务器。
步骤370、接收到应用服务器发送的下行数据
步骤380、在接收到应用服务器发送的下行数据后,查找这个转发表来将下行数据转发给终端。
其中,服务器不对下行的数据进行组包,避免终端进行解包的计算带来额外功耗。
如图5A所示,为本发明提供的数据传输过程中,终端的一个组包点周期的处理流程:从图中可以看到终端判断到组包点后,依次从缓存队列中取出尽可能多的,总大小不超过1480的IP数据包进行组包并发送到NB-IOT协议栈的过程,如图5A所示,该流程包括:
步骤410、终端接收上层应用发送的数据包;
该数据包为IP包;
步骤420、终端判断时间是否到达组包点;在到达时,执行步骤430,在没有到达时,执行步骤440;
步骤430、缓存该数据包;
步骤440、从缓存的数据包中,依次取出尽可能多的M个数据包,M个数据包的总和小于或者等于1480字节;
步骤450、新建一个IP包,目的IP地址设置为代理服务器的IP地址,将这M个包拼接起来放入新建的IP包的数据部分;
步骤460、将新建的IP包通过NB-IOT无线协议栈发送至代理服务器;
步骤470、确认数据包的缓存队列是否已空,如果已经为空,则执行步骤480,如果没有为空,继续执行步骤440;
步骤480、组包周期结束,重新开始下一个组包周期。
如图5B所示,为本发明提供的代理服务器的处理流程。无论是终端发向应用服务器的上行包,还是应用服务器回复给终端的下行包,都会先发送到代理服务器,然后由代理服务器进行转发。由于上行的数据包是自终端发来,是经过了组包处理的,其Payload部分是多个,或者至少一个IP包,即Payload部分开始的20个字节一定是一个IP包头结构的数据体。因此代理服务器根据解析收到的IP包的Payload的格式,就能够判断是上行或是下行的数据包。如果该IP包的Payload是由子IP包组成的,则解析Payload部分,生成多个子IP包,也就是原始上行的IP包,发给各自对应的目的应用服务器,同时将源、目的IP地址和端口号,以及传输层协议类型记录在映射表中。如果该IP包的Payload部分不是IP包结构,说明是应用服务器发向终端的原始下行包,代理服务器直接根据包的源、目的IP地址、端口号和传输层协议类型查找映射表,找到服务器本来要发此IP包给的那个终端的IP地址,将包直接发给终端。
如图5B所示,为代理服务器的处理流程示意图,该过程包括:
步骤510、代理服务器接收TCP IP协议栈发送的数据包;
步骤520、代理服务器解析payload数据,判断是否是IP包头部格式,从而判断payload数据是否由多个IP包组成;如果是,执行步骤530;如果不是,执行步骤560;
如果payload数据是由多个IP包组成,则说明是终端发给应用服务器的数据,需要进行IP包的解析操作,如果不是由多个IP包组成,则说明是应用服务器发送给终端的数据,不需要进行IP包的解析操作,直接转发给终端就可以了。
步骤530、代理服务器根据IP包头部的IP包长度等信息,将payload部分解析为多个子IP包;
步骤540、代理服务器将各个IP包发送至相应的应用服务器;
步骤550、将各个IP包的源IP地址、目的IP地址,源端口号、目的端口号和传输层协议类型记录在转发映射表的表项中;
步骤560、根据IP包的源IP地址和源端口号、目的端口号和传输层协议类型查找转发映射表,找到相应的目的IP地址,将IP包发送给目的IP地址对应的终端。
为了更好的理解本发明提出的数据传输方案,下面以一个较为典型的例子场景来辅助解释本发明。
本例以一个智能运动手环为例子进行说明。该手环基于NB-IOT协议,具有基本的计步等功能,特点是充电后使用时间长。它有典型的NB-IOT特点,即对时延不敏感,对功耗敏感。那么可以采用本优化方案来传输数据。在这个场景中,涉及到的“终端”指的就是手环,“代理服务器”和“应用服务器”由手环厂商部署在Internet上即可。计步器当检测到震动后,进行统计步数数据和GPS位置经纬度数据,组成一个UDP包并将其发送到代理服务器上,然后通过代理服务器转发给应用服务器。震动的发生则是不规律的。假定某时间段内,平每秒走2步,每步产生一个UDP包。而计步器的组包周期为5秒,那么每个组包周期内将会产生10个UDP包。如果按照现有技术,这离散产生的10个UDP包将会分别经过NB-IOT无线协议栈,形成如下10个物理帧,这10个物理帧中共含有MAC帧头、RLC包头和PDCP包头各10个。
而采用了本方案后,这个周期内的数据量将会被缓存后在组包点进行组包,新的数据包经过无线协议栈后,仅生成1个物理帧,含有MAC帧头、RLC包头和PDCP包头各1个。如果将含有用户数据的IP包视为有效数据,无线协议栈的这三种头部视为冗余的话,该场景采用本方案后,冗余数据减少了90%。在手环长年累月的使用中,其少发送的数据总量将会是非常巨大的,传输效率的提升也会越来越明显。而由于手环产生的数据量比较小,方案在代理服务器侧产生的解包压力对于服务器来说是完全可以承受的。而终端侧的组包点之间时延,对手环这种场景来说也是完全可以接收的。
基于与上述实施例相同或相似的构思,本发明实施例还提供一种第一数据传输装置,设置在终端上,上述第一数据传输装置包括:
缓存单元,用于在到达组包点之前,缓存上层应用产生的数据IP包;
封装单元,用于在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;
发送单元,用于将新的IP包发送给代理服务器。
本发明实施例中,所述新的IP包的长度小于或等于1480字节。
本发明实施例中,所述组包点设置为0.5~10秒。
基于与上述实施例相同或相似的构思,本发明实施例还提供一种终端,所述终端包括本发明实施例提供的任一第一数据传输装置。
基于与上述实施例相同或相似的构思,本发明实施例还提供一种第二数据传输装置,设置在服务器上,上述第二数据传输装置包括:
接收单元,用于接收终端发送的IP包;
解析单元,用于解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;
转发单元,用于将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
本发明实施例中,所述第二数据传输装置还包括:
映射单元,用于在转发单元转发所述IP包之后,在转发映射表中添加一条映射表项;所述映射表项包括源IP地址、目的IP地址、源端口号、目的端口号和传输层协议类型。
本发明实施例中,所述转发单元还用于在收到应用服务器下发的数据时,根据所述映射表查找对应的目的IP地址,并将收到的数据转发给目的IP地址对应的终端。
基于与上述实施例相同或相似的构思,本发明实施例还提供一种服务器,所述服务器包括本发明实施例提供的任一第二数据传输装置。
需要说明的是,以上所述的实施例仅是为了便于本领域的技术人员理解而已,并不用于限制本发明的保护范围,在不脱离本发明的发明构思的前提下,本领域技术人员对本发明所做出的任何显而易见的替换和改进等均在本发明的保护范围之内。
Claims (14)
1.一种数据传输方法,其特征在于,所述方法包括:
在到达组包点之前,缓存上层应用产生的数据IP包;
在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;
将新的IP包发送给代理服务器;
其中,所述代理服务器用于接收终端发送的IP包;解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;并将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
2.根据权利要求1所述的数据传输方法,其特征在于,
所述新的IP包的长度小于或等于1480字节。
3.根据权利要求1所述的数据传输方法,其特征在于,
所述组包点设置为0.5~10秒。
4.一种数据传输方法,其特征在于,所述方法包括:
代理服务器接收终端发送的IP包;
所述代理服务器解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;并将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
5.根据权利要求4所述的数据传输方法,其特征在于,所述方法还包括:在转发所述IP包之后,在转发映射表中添加一条映射表项;
所述映射表项包括源IP地址、目的IP地址、源端口号、目的端口号和传输层协议类型。
6.根据权利要求5所述的数据传输方法,其特征在于,
所述代理服务器在收到应用服务器下发的数据时,根据所述映射表查找对应的目的IP地址,并将收到的数据转发给目的IP地址对应的终端。
7.一种数据传输装置,设置在终端上,其特征在于,所述装置包括:
缓存单元,用于在到达组包点之前,缓存上层应用产生的数据IP包;
封装单元,用于在到达组包点之后,将缓存的数据IP包作为数据负载,封装在新的IP包中;将所述新的IP包中的目的地址设置为代理服务器地址;
发送单元,用于将新的IP包发送给代理服务器;
其中,所述代理服务器用于接收终端发送的IP包;解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;并将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
8.根据权利要求7所述的数据传输装置,其特征在于,
所述新的IP包的长度小于或等于1480字节。
9.根据权利要求7所述的数据传输装置,其特征在于,
所述组包点设置为0.5~10秒。
10.一种终端,其特征在于,所述终端包括如权利要求7~9中任一项所述的数据传输装置。
11.一种数据传输装置,设置在代理服务器上,其特征在于,所述装置包括:
接收单元,用于接收终端发送的IP包;
解析单元,用于解析收到的IP包,在收到的IP包的数据负载包括多个IP包的情况下,将数据负载中解析为多个IP包;
转发单元,用于将解析得到的各个IP包分别转发到各个IP包对应的应用服务器中。
12.根据权利要求11所述的数据传输装置,其特征在于,所述装置还包括:
映射单元,用于在转发单元转发所述IP包之后,在转发映射表中添加一条映射表项;所述映射表项包括源IP地址、目的IP地址、源端口号、目的端口号和传输层协议类型。
13.根据权利要求12所述的数据传输装置,其特征在于,
所述转发单元还用于在收到应用服务器下发的数据时,根据所述映射表查找对应的目的IP地址,并将收到的数据转发给目的IP地址对应的终端。
14.一种代理服务器,其特征在于,所述服务器包括如权利要求11~13中任一项所述的数据传输装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710743834.5A CN109428916B (zh) | 2017-08-25 | 2017-08-25 | 数据传输方法和装置、终端及服务器 |
PCT/CN2018/082639 WO2019037439A1 (zh) | 2017-08-25 | 2018-04-11 | 数据传输方法和装置、终端及服务器 |
US16/641,237 US11297154B2 (en) | 2017-08-25 | 2018-04-11 | Data transmission method and device, terminal and server |
EP18849175.7A EP3675458A4 (en) | 2017-08-25 | 2018-04-11 | DATA TRANSMISSION PROCESS AND DEVICE, TERMINAL, AND SERVER |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710743834.5A CN109428916B (zh) | 2017-08-25 | 2017-08-25 | 数据传输方法和装置、终端及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109428916A CN109428916A (zh) | 2019-03-05 |
CN109428916B true CN109428916B (zh) | 2022-02-22 |
Family
ID=65438370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710743834.5A Active CN109428916B (zh) | 2017-08-25 | 2017-08-25 | 数据传输方法和装置、终端及服务器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11297154B2 (zh) |
EP (1) | EP3675458A4 (zh) |
CN (1) | CN109428916B (zh) |
WO (1) | WO2019037439A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11805081B2 (en) * | 2019-03-04 | 2023-10-31 | Intel Corporation | Apparatus and method for buffer management for receive segment coalescing |
US11436111B2 (en) * | 2019-10-03 | 2022-09-06 | Cisco Technology, Inc. | Highly-available distributed network address translation (NAT) architecture with failover solutions |
CN113452686B (zh) * | 2021-06-23 | 2022-10-18 | 中移(杭州)信息技术有限公司 | 数据处理方法、装置、代理服务器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1848172A1 (en) * | 2006-04-19 | 2007-10-24 | Nokia Siemens Networks Gmbh & Co. Kg | Method and machine for aggregating a plurality of data packets into a unified transport data packet |
CN101150497A (zh) * | 2006-09-20 | 2008-03-26 | 华为技术有限公司 | 移动通信中多数据包传输的方法、系统及设备 |
CN107040474A (zh) * | 2016-02-03 | 2017-08-11 | 中兴通讯股份有限公司 | 数据包发送方法、接收方法、发送装置及接收装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2512093B1 (en) * | 2000-04-26 | 2019-12-04 | VirnetX Inc. | Improvements to an agile network protocol for secure communications with assured system availability |
US20020136218A1 (en) | 2001-03-23 | 2002-09-26 | Cardoso Augusto C. | Method and apparatus for receiving interleaved streams of packets through a circular buffer |
US7269171B2 (en) | 2002-09-24 | 2007-09-11 | Sun Microsystems, Inc. | Multi-data receive processing according to a data communication protocol |
CN100450016C (zh) * | 2005-06-03 | 2009-01-07 | 华为技术有限公司 | 通信网络中在线维护的实现方法 |
US7797406B2 (en) * | 2006-07-27 | 2010-09-14 | Cisco Technology, Inc. | Applying quality of service to application messages in network elements based on roles and status |
JP4623177B2 (ja) * | 2008-09-17 | 2011-02-02 | 富士ゼロックス株式会社 | 情報処理システム |
CN101635715B (zh) | 2009-05-31 | 2012-09-12 | 飞天诚信科技股份有限公司 | 提高网络应用安全性的方法和系统 |
CN102958108B (zh) * | 2011-08-26 | 2015-03-18 | 华为技术有限公司 | 用于数据传输的方法、分流点设备、用户终端和系统 |
WO2014139094A1 (zh) * | 2013-03-12 | 2014-09-18 | 华为技术有限公司 | 一种通信方法、装置及系统 |
WO2017142363A1 (ko) * | 2016-02-19 | 2017-08-24 | 엘지전자 주식회사 | 서비스 요청 전송 및 사용자기기, 그리고 서비스 요청 수신 및 기지국 |
US10084752B2 (en) * | 2016-02-26 | 2018-09-25 | Microsoft Technology Licensing, Llc | Hybrid hardware-software distributed threat analysis |
US11604345B2 (en) | 2019-01-28 | 2023-03-14 | Stanley Electric Co., Ltd. | Apparatuses and methods for backscattering elimination via spatial and temporal modulations |
-
2017
- 2017-08-25 CN CN201710743834.5A patent/CN109428916B/zh active Active
-
2018
- 2018-04-11 US US16/641,237 patent/US11297154B2/en active Active
- 2018-04-11 EP EP18849175.7A patent/EP3675458A4/en active Pending
- 2018-04-11 WO PCT/CN2018/082639 patent/WO2019037439A1/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1848172A1 (en) * | 2006-04-19 | 2007-10-24 | Nokia Siemens Networks Gmbh & Co. Kg | Method and machine for aggregating a plurality of data packets into a unified transport data packet |
CN101150497A (zh) * | 2006-09-20 | 2008-03-26 | 华为技术有限公司 | 移动通信中多数据包传输的方法、系统及设备 |
CN107040474A (zh) * | 2016-02-03 | 2017-08-11 | 中兴通讯股份有限公司 | 数据包发送方法、接收方法、发送装置及接收装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3675458A1 (en) | 2020-07-01 |
WO2019037439A1 (zh) | 2019-02-28 |
US11297154B2 (en) | 2022-04-05 |
CN109428916A (zh) | 2019-03-05 |
EP3675458A4 (en) | 2021-08-25 |
US20200228619A1 (en) | 2020-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113411313B (zh) | 数据传输方法、装置和系统 | |
CN106716951B (zh) | 用于优化隧道流量的方法和装置 | |
US10785680B2 (en) | Methods and apparatus for optimizing tunneled traffic | |
KR101298407B1 (ko) | 데이터 패킷의 송신 방법 및 장치, 데이터 패킷의 수신 방법 및 장치 | |
EP3651438B1 (en) | Data transmission based on application- and protocol-adaptive compression strategies | |
CN109428916B (zh) | 数据传输方法和装置、终端及服务器 | |
CN111064629B (zh) | 用于测量时延的方法和装置 | |
WO2015196393A1 (zh) | 一种数据传输方法及设备 | |
EP3413521B1 (en) | Data packet sending method, data packet receiving method, data packet sending device and data packet receiving device | |
US10764411B2 (en) | Stream control transmission protocol SCTP-based communications method and system, and apparatus | |
CN101860904A (zh) | 基于数据包ip头压缩技术实现校验和计算的方法 | |
WO2009033371A1 (fr) | Système et appareil de remplissage d'unité de données de protocole (pdu) et son procédé de traitement correspondant | |
WO2020253157A1 (zh) | Volte数据的传输方法、装置、接入网设备以及存储介质 | |
WO2022042351A1 (zh) | 接口数据的处理方法、发送端设备和接收端设备 | |
CN106993311B (zh) | 基站数据优化传输方法与系统 | |
CN110611548B (zh) | 数据传输方法、设备、发送设备、接收设备及存储介质 | |
US10582410B2 (en) | Predicting downlink throughput | |
EP3340545B1 (en) | Methods and apparatus for optimizing tunneled traffic | |
US20160149855A1 (en) | Service processing method, system, and relevant device | |
CN114079675B (zh) | 报文处理方法、装置、终端设备及移动宽带上网设备 | |
WO2023030440A1 (zh) | 应用于媒体接入控制层mac的数据处理方法及装置 | |
CN110495210B (zh) | 分组数据汇聚协议协议数据单元预处理 | |
US20230328587A1 (en) | Multi-technology multi-user implementation for lower mac protocol processing | |
WO2021152363A2 (en) | Layer 2 uplink data inline processing using integrated circuits | |
WO2013090992A1 (en) | Improvements in wireless networks |
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 |