CN103973645A - 一种数据传输方法和相关装置 - Google Patents
一种数据传输方法和相关装置 Download PDFInfo
- Publication number
- CN103973645A CN103973645A CN201310036734.0A CN201310036734A CN103973645A CN 103973645 A CN103973645 A CN 103973645A CN 201310036734 A CN201310036734 A CN 201310036734A CN 103973645 A CN103973645 A CN 103973645A
- Authority
- CN
- China
- Prior art keywords
- data
- protocol
- head
- length
- 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.)
- Granted
Links
Classifications
-
- 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/38—Flow control; Congestion control by adapting coding or compression rate
-
- 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
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- 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
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
本发明实施例公开了一种数据传输方法和相关装置,用于实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。本发明实施例方法包括:对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷;使用所述传输网络协议头部对所述压缩后的传输网络协议负荷进行封装,得到IP压缩数据包;向核心网中或基站中的解码端设备发送所述IP压缩数据包。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种数据传输方法和相关装置。
背景技术
为了保障移动业务发展所需的带宽,基站的部署也越来越密集,回程链路(Backhaul)对带宽需求不断增加,Backhaul的扩容跟不上移动流量的增长速度,Backhaul的能力成为制约移动宽带发展的关键瓶颈。随着运营成本压力的逐步增加和数据业务发展带来的带宽压力,Backhaul的数据传输成为运营商最为关注的热点问题。
为了实现站点扩容,并优化Backhaul的传输,可以对Backhaul进行物理扩容以增加传输资源,然而物理扩容会带来成本上升,因此压缩Backhaul上传输的数据成为一种优化无线传输系统的首选方法。
在现有无线网络的协议栈中,有两种数据压缩机制:
1)、无线接口协议结构的分组数据会聚协议(PDCP,Packet DataConvergence Protocol)层提供了针对其上层传输的网际协议(IP,InternetProtocol)数据流的“头部压缩”,例如进行头部压缩的IP数据流主要为传输控制协议/网际协议(TCP/IP,Transmission Control Protocol/Internet Protocol)或实时传输协议(RTP,Real-time Transport Protocol)/用户数据报协议(UDP,User Datagram Protocol)/网际协议(IP,Internet Protocol),TS25.323标准中提到的头部压缩算法有IP头部压缩(IP Header Compression)算法和鲁棒性头部压缩(ROHC,Robust Header Compression)算法。
2)、在用户数据应用层提供有数据压缩,这取决于应用层本身的配置。
本发明的发明人在实现本发明的过程中发现,对于方法1),PDCP层只能提供针对IP数据流的头部压缩,也就是仅仅压缩用户数据的协议头部,在负荷(Payload)较小时会取得比较好的效果,当Payload较大时,其压缩效果有限。对于方法2),并不是所有的数据应用层都配置有数据压缩。
综上,以上两种数据压缩方法都是针对单个用户的数据,其压缩效果依赖于业务类型(如Payload大小,应用层如何配置等),整体上对数据压缩的效果有限,因此,如何提高对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量成为业界讨论的一个难题。
发明内容
本发明实施例提供了一种数据传输方法和相关装置,用于实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
本发明实施例提供以下技术方案:
第一方面,本发明实施例提供了一种数据传输方法,包括:
对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷;
使用所述传输网络协议头部对所述压缩后的传输网络协议负荷进行封装,得到IP压缩数据包;
向核心网或基站发送所述IP压缩数据包。
结合第一方面,在第一方面的第一种可能的实现方式中,所述传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部;
所述对接收到的网际协议IP数据包进行解析,得到传输网络协议头部,包括:
获取完整的传输网络IP分组数据;
根据所述传输网络IP分组数据的头部确定传输网络IP协议头部和所述传输网络IP协议头部的长度;
根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型确定传输网络传输层协议头部和传输网络传输层协议头部的长度;
根据所述传输网络IP协议头部和所述传输网络传输层协议头部获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部。
结合第一方面,在第一方面的第二种可能的实现方式中,所述对接收到的网际协议IP数据包进行解析,得到传输网络协议头部,包括:
获得传输隧道协议的协议类型并根据所述传输隧道协议的协议类型计算传输隧道协议固定头部的长度;
根据所述传输隧道协议的协议类型判断所述传输隧道协议头部是否存在可选字段;
若不存在可选字段,根据所述传输隧道协议的固定头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
若存在可选字段,根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在扩展头部,若存在可选字段但不存在扩展头部,根据所述传输隧道协议的固定头部的长度和可选字段的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度,若存在可选字段并且存在扩展头部,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和扩展头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
根据所述传输网络IP分组数据和所述传输隧道协议头部的长度确定所述传输隧道协议头部。
结合第一方面,在第一方面的第三种可能的实现方式中,所述用户数据协议头部包括用户数据IP协议头部的长度、用户数据传输层协议头部,
所述对接收到的网际协议IP数据包进行解析,得到用户数据协议头部,包括:
获取到完整的用户数据IP分组数据;
根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
根据所述用户数据IP分组数据头部的协议类型字段确定用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部,根据所述用户数据传输层协议头部获取用户数据传输层协议头部的长度;
根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部。
结合第一方面或第一方面的第一种或第二种或第三种可能的实现方式,在第四种可能的实现方式中,所述对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷,包括:
对所述传输隧道协议头部、所述用户数据协议头部进行头部压缩,得到头部压缩的第一结果;
对所述用户应用层数据进行压缩,得到压缩后的用户应用层数据;
对所述头部压缩的第一结果和所述压缩后的用户应用层数据进行编码,得到所述压缩后的传输网络协议负荷。
结合第一方面或第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述使用所述传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包,之后还包括:
判断所述IP压缩数据包的长度是否大于下层协议的最大传输单元的长度,若所述IP压缩数据包的长度大于下层协议的最大传输单元的长度,对所述IP压缩数据包进行IP分片,得到分片后的IP压缩数据包,所述下层协议包括直接用来传输IP压缩数据包的协议;
则所述向核心网或基站发送所述IP压缩数据包,包括:
向核心网或基站发送所述分片后的IP压缩数据包。
第二方面,本发明实施例还提供了一种数据传输方法,包括:对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
对所述用户应用层数据进行压缩,得到压缩后的用户数据协议负荷;
使用所述用户数据协议头部、所述传输隧道协议头部和所述传输网络协议头部对所述压缩后的用户数据协议负荷进行封装,得到IP压缩数据包;
向核心网或基站发送所述IP压缩数据包。
第三方面,本发明实施例还提供了一种数据传输方法,包括:
获取媒体接入控制协议数据单元MAC PDU;
对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC、分组数据汇聚协议PDCP进行解码,得到分组数据汇聚协议协议数据单元PDCP PDU;
使用用户数据协议头部对所述PDCP PDU进行解码,得到解码数据;
对所述解码数据进行压缩,得到压缩数据;
依次按照所述用户数据协议头部、PDCP、RLC、MAC对所述压缩数据进行封装,得到封装数据;
向核心网中或基站发送所述封装数据。
结合第三方面,在第三方面的第一种可能的实现方式中,所述获取媒体接入控制协议数据单元MAC PDU,包括:
接收Iub封装数据;
对所述接收到的Iub封装数据按照Iub接口协议进行解码,得到MACPDU;
或,
接收所述基站的协议处理模块或者无线网络控制器RNC的协议处理模块发送的MAC PDU。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述对接收到的Iub封装数据按照Iub接口协议进行解码,得到所述MACPDU,包括:
当所述Iub封装数据是存在IP分片的IP数据包时,对所述存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
对所述传输网络IP分组数据按照网际协议IP、用户数据报协议UDP进行解码,得到UDP负载;
对所述UDP负载按照成帧协议FP进行解码,得到所述MAC PDU。
结合第三方面,在第三方面的第三种可能的实现方式中,所述对所述MACPDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC和分组数据汇聚协议PDCP解码,得到分组数据汇聚协议协议数据单元PDCP PDU,包括:
对所述MAC PDU进行MAC层解码,得到RLC PDU;
对所述RLC PDU进行RLC层解码,然后对解码后的RLC PDU进行PDCP解码重组,得到PDCP PDU。
第四方面,本发明实施例还提供了一种数据传输方法,包括:
获取媒体接入控制协议数据单元MAC PDU;
对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC进行解码,得到解码数据;
对所述解码数据进行压缩,得到压缩数据;
依次按照RLC、MAC对所述压缩数据进行封装,得到封装数据;
向核心网中或基站发送所述封装数据。
第五方面,本发明实施例还提供了一种数据传输方法,包括:
接收网际协议IP压缩数据包;
对所述IP压缩数据包进行传输网络协议头部、传输隧道协议头部、用户数据协议头部解码,得到压缩后的用户数据协议负荷;
对所述压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据;
用所述传输网络协议头部、所述传输隧道协议头部、所述用户数据协议头部对所述用户应用层数据进行封装,得到IP数据包;
向核心网或基站发送所述IP数据包。
第六方面,本发明实施例还提供了一种数据传输设备,包括:IP数据包解析单元、压缩单元、封装单元和发送单元,其中,
所述IP数据包解析单元,用于对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
所述压缩单元,用于对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷;
所述封装单元,用于使用所述传输网络协议头部对所述压缩后的传输网络协议负荷进行封装,得到IP压缩数据包;
所述发送单元,用于向核心网中或基站中的解码端设备发送所述IP压缩数据包。
第七方面,本发明实施例还提供了一种数据传输设备,包括:IP数据包解析单元、压缩单元、封装单元和发送单元,其中,
IP数据包解析单元,用于对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
压缩单元,用于对所述用户应用层数据进行压缩,得到压缩后的用户数据协议负荷;
封装单元,用于使用所述用户数据协议头部、所述传输隧道协议头部和所述传输网络协议头部对所述压缩后的用户数据协议负荷进行封装,得到IP压缩数据包;
发送单元,用于向核心网中或基站中的解码端设备发送所述IP压缩数据包。
从以上技术方案可以看出,本发明实施例具有以下优点:
在本发明提供的一实施例中,对接收到的IP数据包进行解析,得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,再用传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包,通过这优化方式可以实现对用户应用层数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
在本发明提供的另一实施例中,对接收到的IP数据包进行解析,得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后对用户应用层数据进行压缩,再用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包,通过这优化方式可以实现对用户应用层数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
在本发明提供的另一实施例中,首先获取到MAC PDU,然后对MAC PDU依次按照MAC、RLC、PDCP进行解码,得到PDCP PDU,并使用用户数据协议头部对PDCP PDU进行解码,得到解码数据,再对解码数据进行压缩,得到压缩数据,之后再依次对压缩数据按照用户数据协议头部、PDCP、RLC、MAC进行封装,得到封装数据,通过这种优化方式可以实现对解码数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
在本发明提供的另一实施例中,首先获取到MAC PDU,然后对MAC PDU依次按照MAC、RLC进行解码,得到解码数据,再对解码数据进行压缩,得到压缩数据,之后再依次对压缩数据按照RLC、MAC进行封装,得到封装数据,通过这种优化方式可以实现对解码数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据传输方法的流程方框示意图;
图2为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图3为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图4为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图5为本发明实施例提供的第一数据传输设备和第二数据传输设备进行交互的一种示意图;
图6为本发明实施例提供的第一数据传输设备和第二数据传输设备进行交互的另一种示意图;
图7为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图8为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图9为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图10为本发明实施例提供的另一种数据传输方法的流程方框示意图;
图11为本发明实施例提供的第一数据传输设备和第二数据传输设备进行交互的另一种示意图;
图12为本发明实施例提供的第一数据传输设备和第二数据传输设备进行交互的另一种示意图;
图13为本发明实施例提供的一种数据传输设备的结构组成示意图;
图14为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图15为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图16为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图17为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图18为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图19为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图20为本发明实施例提供的另一种数据传输设备的结构组成示意图;
图21为本发明实施例提供的一种数据传输系统的结构组成示意图;
图22为本发明实施例提供的数据传输系统的一种应用场景示意图;
图23为本发明实施例提供的数据传输系统的另一种应用场景示意图;
图24为本发明实施例提供的数据传输系统的另一种应用场景示意图;
图25为本发明实施例提供的数据传输系统的另一种应用场景示意图。
具体实施方式
本发明实施例提供了一种数据传输方法和相关装置,用于实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中,回程链路(Backhaul)的两端都部署有本发明实施例提供的数据传输设备,在一个完整的数据传输过程中,在其中一个数据传输方向上,回程链路一端的数据传输设备(也称之为编码端设备)用于实现对传输的数据的去重,回程链路的另一端的数据传输设备(也称之为解码端设备)用于实现对传输的数据的还原,这两个数据传输设备分别部署在整个回程链路的两端,用于实现在回程链路上传输的数据的压缩,以提高Backhaul的吞吐量。需要指出的是,在回程链路两端部署的任一个数据传输设备上同时实现了去重和还原两个功能,以对另一个方向上数据传输实现同样的优化效果。本发明实施例提供的数据传输设备具体可以是一个单独的优化设备,也可以是一个集成在网元上的模块,接下来分别描述在一个完整的数据传输过程中,用于实现数据去重的数据传输设备和用于实现数据还原的数据传输设备具体是如何实现本发明的,后续将数据去重和数据还原分别以单独的实施例的方式进行描述。
首先介绍本发明实施例对于数据去重的实现方式,本发明实施例提供的一种数据传输方法,请参阅图1所示,包括:
101、数据传输设备对接收到的网际协议(IP,Internet Protocol)数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据。
在本发明实施例中,用于实现对数据去重的数据传输设备(也称之为编码端设备)部署在Backhaul的一端,首先对在Backhaul上传输的标准IP数据包进行解析,依次可以得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据。
需要说明的是,在本发明实施例中,传输网络协议头部指的是使用协议类型为传输网络协议的头部数据,在本发明实施例中可以简称为传输网络协议头部,传输隧道协议头部指的是使用协议类型为传输隧道协议的数据头部,用户数据协议头部指的是使用协议类型为用户数据协议的数据头部,将传输网络协议、传输隧道协议、用户数据协议这三个对应的数据头部从标准的IP数据包中切片掉之后,IP数据包中剩余的数据就是用户应用层数据了。
可选的,传输网络协议头部可以包括:传输网络IP协议头部、传输网络传输层协议头部,其中传输网络协议可以包括传输网络IP协议和传输网络传输层协议,传输网络IP协议头部指的是使用协议类型为传输网络层的IP协议的数据头部,传输网络传输层协议头部指的是使用协议类型为传输网络层的传输层协议的数据头部。
可选的,传输隧道协议头部可以包括:通用分组无线服务技术隧道协议用户面(GTP-U,GPRS Tunnelling Protocol-User)协议头部,传输隧道协议具体指的是GTP-U协议,GTP-U协议头部指的是使用协议类型为GTP-U协议的数据头部。
可选的,用户数据协议头部可以包括:传输隧道协议所承载的用户数据IP协议头部、用户数据传输层协议头部,用户数据协议可以包括用户数据IP协议和用户数据传输层协议,用户数据IP协议头部指的是使用协议类型为无线网络层的用户数据的IP协议的数据的头部,用户数据传输层协议头部指的是使用协议类型为无线网络层的用户数据的传输层协议的数据头部。
可选的,用户应用层数据可以包括:用户数据传输层协议的负荷(Payload)。
在本发明实施例中,数据传输设备根据协议栈结构对标准的IP数据包进行解析,依次将IP数据包中的传输网络协议头部、传输隧道协议头部、用户数据协议头部切为一个部分,例如可以统称之为头部组块,数据传输设备将IP数据包中切片后剩余的数据切为一个部分,作为用户应用层数据。
需要说明的是,对于步骤101而言,数据传输设备对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,其含义也可以等同的解释为以下四个步骤:
A1、数据传输设备对接收到的网际协议IP数据包进行解析,得到传输网络协议头部;
A2、数据传输设备对接收到的网际协议IP数据包进行解析,得到传输隧道协议头部;
A3、数据传输设备对接收到的网际协议IP数据包进行解析,得到用户数据协议头部;
A4、数据传输设备对接收到的网际协议IP数据包进行解析,得到用户应用层数据。
对于步骤A1,作为其中一种可实现的方式是,数据传输设备对接收到的IP数据包进行解析,得到传输网络协议头部,具体可以包括如下步骤:
A11、数据传输设备接收到IP数据包存在IP分片时,对存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
A12、数据传输设备根据传输网络IP分组数据的头部获取传输网络IP协议头部和传输网络IP协议头部的长度;
A13、数据传输设备根据传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据传输网络传输层协议的协议类型获取传输网络传输层协议头部和传输网络传输层协议头部的长度。进一步,具体的再根据传输网络传输层协议的协议类型获取传输网络传输层协议头部和对应的字段,根据传输网络传输层协议头部和对应的字段获取传输网络传输层协议头部的长度。
A14、数据传输设备根据传输网络IP协议头部和传输网络传输层协议头部获取传输网络协议头部的长度,其中,传输网络协议头部的长度是传输网络IP协议头部的长度加上传输网络传输层协议头部的长度。
A15、根据传输网络IP分组数据和传输网络协议头部的长度获取传输网络协议头部,其中,传输网络协议头部是从传输网络IP分组数据的开头到长度为传输网络协议头部的长度对应的数据。
对于步骤A11,数据传输设备判断接收到的IP数据包是否存在IP分片,当IP数据包存在IP分片时,数据传输设备对IP数据包进行IP分片重组,获取到了完整的传输网络IP分组数据,其中,传输网络IP分组数据指的是数据传输设备对标准的IP数据包进行分片重组后得到的结果,对IP数据包进行分片重组的实现方式具体可参见现有技术,此处不再赘述。
对于步骤A12,数据传输设备对传输网络IP分组数据的头部按照协议栈结构的特征进行解析,可以获取到传输网络IP协议头部和传输网络IP协议头部的长度,然后通过步骤A13数据传输设备又获取到了传输网络传输层协议头部的长度,步骤A14中,数据传输设备分别获取到传输网络IP协议头部的长度和传输网络传输层协议头部的长度之后,数据传输设备将传输网络IP协议头部的长度加上传输网络传输层协议头部的长度之和作为传输网络协议头部的长度,最后通过步骤A15、根据传输网络IP分组数据和传输网络协议头部的长度获取传输网络协议头部,从传输网络IP分组数据的开头到长度为传输网络协议头部的长度对应的数据为传输网络协议头部。
对于步骤A2、作为其中一种可实现的方式是,数据传输设备对接收到的网际协议IP数据包进行解析,得到传输隧道协议头部,在具体实现时,可以包括如下步骤:
A21、数据传输设备根据传输隧道协议的协议类型计算传输隧道协议的固定头部的长度;
A22、数据传输设备根据传输隧道协议的协议类型对应的字段判断传输隧道协议头部是否存在可选字段;
A23、若不存在可选字段,数据传输设备根据传输隧道协议的固定头部的长度获取传输隧道协议头部的长度,传输隧道协议头部的长度为传输隧道协议头部的长度;
A24、若存在可选字段,数据传输设备根据传输隧道协议的协议类型对应的字段判断传输隧道协议头部是否存在扩展头部;
A25、若传输隧道协议头部不存在扩展头部,数据传输设备根据传输隧道协议的固定头部的长度和可选字段的长度获取传输隧道协议头部的长度,其中,传输隧道协议头部的长度为传输隧道协议的固定头部的长度加上可选字段的长度;
A26、若传输隧道协议头部存在扩展头部,数据传输设备根据传输隧道协议的固定头部的长度、可选字段的长度和扩展头部的长度获取传输隧道协议头部的长度,其中,传输隧道协议头部的长度为传输隧道协议的固定头部的长度加上可选字段的长度再加上扩展头部的长度;
A27、数据传输设备根据传输网络IP分组数据和传输隧道协议头部的长度获取传输隧道协议头部,其中,传输隧道协议头部是从传输网络IP分组数据中的传输网络协议头部之后开始到长度为传输隧道协议头部的长度对应的数据。
对于步骤A21,数据传输设备首先计算出传输隧道协议的固定头部,然后步骤A22判断是否存在可选字段,步骤A24在存在可选字段的情况下判断传输隧道协议头部是否存在扩展头部,最后将固定头部加上可选字段加上扩展头部,得到传输隧道协议头部的长度,若不存在扩展头部,将固定头部加上可选字段,得到传输隧道协议头部的长度,若不存在可选字段,则固定头部的长度就是传输隧道协议头部的长度。
需要说明的是,本发明实施例中,数据传输设备获取传输隧道协议头部的长度还有其它实现方式,此处只是说明,不作限定。在获取到传输隧道协议头部的长度之后,从传输网络IP分组数据中的传输网络协议头部之后开始到长度为传输隧道协议头部的长度对应的数据作为传输隧道协议头部。此处需要指明的是,本发明实施例中,传输隧道协议仍然承载有数据,对传输隧道协议承载的数据进行解析,就能够得到用户数据协议头部和用户应用层数据。
需要说明的是,在实际应用中,传输网络传输层协议的协议类型具体可以为传输控制协议(TCP,Transmission Control Protocol)或用户数据报协议(UDP,User Datagram Protocol),传输隧道协议的协议类型具体可以为通用分组无线服务技术(GPRS,General Packet Radio Service)隧道协议用户面(GTP-U,GPRS Tunnelling Protocol-User),在后续实施例中将结合具体的协议类型对本发明进行描述。
需要说明的是,本发明实施例中,通过步骤A1、A2数据传输设备得到传输隧道协议头部之后,在传输隧道协议中仍然承载有数据,称之为传输隧道协议承载的数据,数据传输设备对传输隧道协议承载的数据进行解析,就能够得到用户数据协议头部和用户应用层数据,也就是对于步骤A3,作为其中一种可实现的方式是,数据传输设备对接收到的网际协议IP数据包进行解析,得到用户数据协议头部,具体可以包括如下步骤:
A31、数据传输设备接收到传输隧道协议承载的数据存在IP分片时,对传输隧道协议承载的数据进行IP分片重组,获取到完整的用户数据IP分组数据。
A32、数据传输设备根据用户数据IP分组数据的头部获取用户数据IP协议头部的长度。
A33、数据传输设备根据用户数据IP分组数据头部的协议类型字段获取用户数据传输层协议的协议类型,根据用户数据传输层协议的协议类型获取用户数据传输层协议头部和对应的字段,根据用户数据传输层协议头部和对应的字段获取用户数据传输层协议头部的长度。
A34、数据传输设备根据用户数据IP协议头部的长度和用户数据传输层协议头部的长度获取用户数据协议头部的长度,其中,用户数据协议头部的长度是用户数据IP协议头部的长度加上用户数据传输层协议头部的长度。
A35、数据传输设备根据传输网络IP分组数据和用户数据协议头部的长度获取用户数据协议头部,其中,用户数据协议头部是从传输网络IP分组数据中的传输隧道协议头部之后开始到长度为用户数据协议头部的长度对应的数据。
需要说明的是,本发明实施例中,通过步骤A1、A2、A3数据传输设备分别解析出传输网络协议头部、传输隧道协议头部、用户数据协议头部之后,对于步骤A4,作为其中一种可实现的方式是,数据传输设备对接收到的网际协议IP数据包进行解析,得到用户应用层数据,具体可以包括如下步骤:
数据传输设备根据传输网络IP分组数据和用户数据协议头部获取用户应用层数据,其中,用户应用层数据是从传输网络IP分组数据中的用户数据协议头部之后开始到传输网络IP分组数据的结尾对应的数据。
当步骤101执行完成之后,本发明实施例中,数据传输设备可以执行步骤102,接下来对102进行详细说明。
102、数据传输设备对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,得到压缩后的传输网络协议负荷。
在本发明实施例中,数据传输设备通过对IP数据包的协议栈结构的解析得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后数据传输设备将对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,得到压缩后的传输网络协议负荷。
需要说明的是,在本发明实施例中,数据传输设备对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,得到压缩后的传输网络协议负荷,包括如下步骤:
B1、数据传输设备对传输隧道协议头部、用户数据协议头部进行头部压缩,得到头部压缩的第一结果;
B2、数据传输设备对用户应用层数据进行压缩,得到压缩后的用户应用层数据;
B3、数据传输设备对头部压缩的第一结果和压缩后的用户应用层数据进行编码,得到压缩后的传输网络协议负荷。
也就是说,在步骤B1中,数据传输设备先对传输隧道协议头部、用户数据协议头部进行头部压缩,然后通过步骤B2对用户应用层数据进行压缩,步骤B3中数据传输设备对B1和B2分别进行压缩后的结果放在一起进行编码,得到压缩后的传输网络协议负荷。
需要说明的是,在本发明实施例中,通过步骤102在得到IP压缩数据包之后,本发明实施例中还可以包括如下步骤:数据传输设备判断IP压缩数据包的长度是否大于下层协议的最大传输单元的长度,若IP压缩数据包的长度大于下层协议的最大传输单元的长度,则对IP压缩数据包进行IP分片,得到分片后的IP压缩数据包。本发明实施例中提出的下层协议指的是直接用来传输IP压缩数据包的协议。若对IP压缩数据包进行了分片,则本发明实施例中后续步骤104具体可以为:向核心网或基站发送分片后的IP压缩数据包。
103、数据传输设备使用传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包。
本发明实施例中,步骤101中获取到传输网络协议头部之后,此处在数据传输设备获取到压缩后的传输网络协议负荷之后,数据传输设备使用传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包。
104、数据传输设备向核心网或基站发送IP压缩数据包。
在此处描述的本发明实施例中,具体的可以是数据传输设备向核心网中或基站中的解码端设备发送IP压缩数据包,数据传输设备作为编码端设备,获取到IP压缩数据包之后,将IP压缩数据包发送给解码端设备,则编码端设备发送的是已经经过压缩的IP压缩数据包,故可以减少传输链路中的数据量。
在前述本发明提供的实施例中,对接收到的IP数据包进行解析,得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,再用传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包,通过这优化方式可以实现对用户应用层数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
前述实施例介绍了本发明提供的一种数据传输方法,接下来介绍本发明实施例提供的另一种数据传输方法,如图2所示,主要可以包括如下步骤:
201、数据传输设备对接收到的IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据。
此处描述的步骤201和前述实施例中描述的步骤101相同,同样可以具体解析为前述的步骤A1、A2、A3、A4,此处不再赘述,具体描述请参阅前述实施例的说明。
202、数据传输设备对用户应用层数据进行压缩,得到压缩后的用户数据协议负荷。
在步骤201中数据传输设备获取到应用层数据之后,数据传输设备对用户应用层数据进行压缩。
在本发明实施例中,步骤102和步骤202都是对IP数据包进行解析之后的结果进行压缩的,实现的是对数据传输的优化。与步骤102不同的,在步骤202中,数据传输设备对用户应用层数据进行压缩,压缩后的用户数据协议负荷,而步骤102中是将传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,得到压缩后的传输网络协议负荷。
通过步骤步骤202的压缩能够实现对用户应用层数据进行压缩,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
需要说明的是,在本发明实施例中,数据传输设备对用户应用层数据进行压缩,得到压缩后的用户数据协议负荷,作为其中一种实现方式,主要包括如下步骤:
C1、数据传输设备判断用户数据传输层协议是否为传输控制协议(TCP,Transmission Control Protocol),若是,获取用户应用层数据,其中,用户应用层数据是指TCP会话重组后的的数据负载(Payload);
C2、数据传输设备对用户应用层数据进行切片,得到多个的用户应用层数据片段;
C3、数据传输设备分别对切片后得到的每一个用户应用层数据片段生成一个数字摘要;
C4、数据传输设备生成码本,其中,码本包括每一个数字摘要与每一个用户应用层数据片段、以及每一个数字摘要与每一个用户应用层数据片段的索引结构;
C5、数据传输设备将码本发送到使用该码本进行解码的解码端设备,在实施中该步骤是可选的步骤;
C6、数据传输设备根据该码本判断多个的用户应用层数据片段中是否存在重复的用户应用层数据片段;
C7、若存在重复的用户应用层数据片段,数据传输设备用重复的用户应用层数据片段对应的数字摘要代替重复的用户应用层数据片段;
C8、数据传输设备将重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段进行编码,得到压缩后的用户应用层数据。
对于步骤C1,还可以包括:若用户数据传输层协议不是TCP,获取用户应用层数据,其中,用户应用层数据是指从传输网络IP分组数据中的用户数据协议头部之后开始到传输网络IP分组数据的结尾对应的数据。
对于步骤C2,数据传输设备对用户应用层数据进行切片,就可以得到多个的用户应用层数据片段,接下来步骤C3对每一个用户应用层数据片段生成一个数字摘要,其中,数字摘要也可以称之为指纹,数字摘要包括了用户应用层数据片段的所有数据信息,若两个用户应用层数据片段对应的数字摘要完全相同,则这两个用户应用层数据片段也是完全相同的,对于步骤C4数据传输设备生成的码本中包括了每一个数字摘要、每一个用户应用层数据片段、每一个数字摘要与每一个用户应用层数据片段的索引结构,其中,索引结构就是数字摘要与用户应用层数据片段的一一对应关系。步骤C5是数据传输设备将生成的码本同步到传输链路另一端的另一数据传输设备(也称之为解码端设备),以使传输链路两端的两个数据传输设备的码本保持完全相同,在数据传输设备侧对数据去重之后,在另一数据传输设备对数据进行还原。步骤C6是数据传输设备根据索引结构判断是否存在重复的用户应用层数据片段,若有重复的用户应用层数据片段,步骤C7用与重复的用户应用层数据片段对应的数字摘要代替重复的用户应用层数据片段,步骤C8将重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段进行编码,得到IP压缩数据包,重复的用户应用层数据片段各自对应的数字摘要是完全相同的,未重复的用户应用层数据片段指的是各自对应的数字摘要各不相同的用户应用层数据片段。
203、数据传输设备使用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包。
本发明实施例中,步骤201中获取到用户数据协议头部、传输隧道协议头部和传输网络协议头部之后,此处在数据传输设备获取到压缩后的用户数据协议负荷之后,数据传输设备使用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包。
204、数据传输设备向核心网或基站发送IP压缩数据包。
在此处描述的本发明实施例中,具体的可以是数据传输设备向核心网中或基站中的解码端设备发送IP压缩数据包,数据传输设备作为编码端设备,获取到IP压缩数据包之后,将IP压缩数据包发送给解码端设备,则编码端设备发送的是已经经过压缩的IP压缩数据包,故可以减少传输链路中的数据量。
在前述本发明提供的实施例中,对接收到的IP数据包进行解析,得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后对用户应用层数据进行压缩,再用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包,通过这优化方式可以实现对用户应用层数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
以上实施例介绍了在一个完整的数据传输过程中,回程链路一端的数据传输设备用于实现对传输的数据的去重,接下来介绍位于回程链路另一端的数据传输设备用于实现对传输的数据的还原,请参阅图3所示,本发明实施例提供的一种数据传输方法,图3所示的数据还原方法与前述图1所示的数据压缩方法相对应,如图3所示,具体可以包括:
301、数据传输设备接收IP压缩数据包。
在本发明实施例中,此处描述的数据传输设备和前述实施例介绍的数据传输设备位于同一条传输链路上,当同一条传输链路的一端的数据传输设备发送IP压缩数据包时,该传输链路的另一端的数据传输设备首先需要接收该IP压缩数据包,也就是说,传输链路的一端的数据传输设备进行数据的去重后,该传输链路的另一端的数据传输设备接收该IP压缩数据包则需要进行数据的还原,具体实现对数据的还原过程请参阅后续描述。
需要说明的是,数据传输设备接收到的是IP压缩数据包,数据传输设备执行步骤302至步骤305,此处实施例中,在进行还原的时候也就需要执行与去重方法相对应的还原方法。
302、数据传输设备对IP压缩数据包按照传输网络协议头部进行解码,得到压缩后的传输网络协议负荷。
在本发明实施例中,数据传输设备对IP压缩数据包按照传输网络协议头部进行解码,就可以得到压缩后的传输网络协议负荷,需要说明的是,在这里描述的解码的过程与前述实施例中介绍的压缩的过程是相反的,部署在同一传输链路两端的两个数据传输设备是相互知悉对端的数据传输设备是如何对数据处理的,也就是说,在同一传输链路的一端的数据传输设备如何对数据压缩,则相应的,对端的数据传输设备就需要采用相反的手段对数据进行解压缩。
需要说明的是,可选的是,传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部。传输隧道协议头部包括:GTP-U协议头部;用户数据协议头部包括:传输隧道协议所承载的用户数据IP协议头部、用户数据传输层协议头部。用户应用层数据包括:用户数据传输层协议的负荷Payload。
需要说明的是,在本发明实施例中,步骤202数据传输设备对IP压缩数据包按照传输网络协议头部进行解码,得到压缩后的传输网络协议负荷,可以包括如下步骤:
D1、数据传输设备对IP压缩数据包进行解析,获取传输网络IP协议头部的长度和对应的字段;
D2、数据传输设备根据传输网络IP协议头部的长度和对应的字段获取传输网络传输层协议头部的长度;
D3、数据传输设备根据传输网络IP协议头部的长度和传输网络传输层协议头部的长度获取传输网络协议头部的长度,其中,传输网络协议头部的长度为传输网络IP协议头部的长度加上传输网络传输层协议头部的长度;
D4、数据传输设备将从IP压缩数据包的开头到传输网络协议头部的长度对应的数据截去,得到压缩后的传输网络协议负荷。
需要说明的是,步骤D4中对IP压缩数据包而言,从IP压缩数据包的开头到传输网络协议头部的长度对应的数据截去,则对IP压缩数据包中所剩下的数据就可以称之为压缩后的传输网络协议负荷了。
303、数据传输设备对压缩后的传输网络协议负荷进行解压缩,依次得到传输隧道协议头部、用户数据协议头部和用户应用层数据。
在本发明实施例中,通过步骤302数据传输设备对IP压缩数据包按照传输网络协议头部进行解码之后,得到了压缩后的传输网络协议负荷,接下来再对压缩后的传输网络协议负荷进行解压缩,依次就可以得到传输隧道协议头部、用户数据协议头部和用户应用层数据。
需要说明的是,在本发明实施例中,数据传输设备对压缩后的传输网络协议负荷进行解压缩,依次得到传输隧道协议头部、用户数据协议头部和用户应用层数据,可以包括如下步骤:
E1、数据传输设备按照传输隧道协议头部、用户数据协议头部依次对压缩后的传输网络协议负荷进行头部解压缩,得到解压缩后的传输隧道协议头部、解压缩后的用户数据协议头部以及压缩后的用户应用层数据;
E2、数据传输设备对压缩后的用户应用层数据进行解压缩,得到用户应用层数据。
也就是说,对于步骤E1,压缩后的传输网络协议负荷进行头部解压缩之后,得到了压缩后的用户应用层数据,然后再执行步骤E2,对压缩后的用户应用层数据进行解压缩,得到了用户应用层数据。
需要说明的是,数据传输设备对压缩后的用户应用层数据进行解压缩,得到用户应用层数据,具体可以包括如下步骤:
F1、数据传输设备接收编码端设备发送的码本,其中,该码本包括:每一个数字摘要与每一个用户应用层数据片段、以及每一个数字摘要与每一个用户应用层数据片段的索引结构;
F2、数据传输设备根据该码本判断压缩后的用户应用层数据中是否存在重复的用户应用层数据片段;
F3、若存在,数据传输设备将压缩后的用户应用层数据解码为重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段,然后执行步骤F4;
F4、数据传输设备将解码得到的重复的用户应用层数据片段对应的数字摘要还原为重复的用户应用层数据片段;
F5、数据传输设备将重复的用户应用层数据片段、未重复的用户应用层数据片段进行组合,得到用户应用层数据。
需要说明的是,对于步骤F1,数据传输设备从与该数据传输设备属于同一传输链路的另一数据传输设备(也称之为编码端设备)接收到码本,同一传输链路两端的数据传输设备中保持了码本的同步,则另一数据传输设备根据码本对传输的数据进行去重,此处的数据传输设备根据该码本对传输的数据进行还原。对于步骤F2,数据传输设备根据该码本就可以判断一下在压缩后的用户应用层数据中是否存在有数字摘要,若在IP压缩数据包中存在有数字摘要,则可以说明,在IP压缩数据包中存在有重复的用户应用层数据片段,若在IP压缩数据包中没有存在数字摘要,则说明在IP压缩数据包中没有存在重复的用户应用层数据片段。
对于步骤F4,数据传输设备根据码本将IP压缩数据包中存在的数字摘要还原为其对应的用户应用层数据片段,则数据传输设备将IP压缩数据包还原为两个部分:1、根据数字摘要还原的用户应用层数据片段(也就是重复的用户应用层数据片段),2、未被还原的用户应用层数据片段(也就是未重复的用户应用层数据片段)。
对于步骤F5,数据传输设备将重复的用户应用层数据片段、未重复的用户应用层数据片段进行组合,得到用户应用层数据,由于在前述实施例中将用户应用层数据进行了切片,故此处需要对用户应用层数据片段进行重新组合,以得到用户应用层数据。
304、数据传输设备使用传输网络协议头部对传输隧道协议头部、用户数据协议头部和用户应用层数据进行封装,得到IP数据包。
在本发明实施例中,通过步骤303对压缩后的传输网络协议负荷进行解压缩,依次得到了传输隧道协议头部、用户数据协议头部和用户应用层数据,然后通过步骤304的方式使用传输网络协议头部对传输隧道协议头部、用户数据协议头部和用户应用层数据进行封装,就可以得到IP数据包了。
通过步骤302至304中的描述,数据传输设备实现了对IP压缩数据包的还原,得到了IP数据包。
305、数据传输设备向核心网或基站发送IP数据包。
在本发明实施例中,数据传输设备作为解码端设备,通过传输链路接收到编码端设备发送的IP压缩数据包之后,通过步骤302至304对IP压缩数据包进行了还原,得到了IP数据包,然后将IP数据包发送到核心网或者基站。
在本发明提供的实施例中,数据传输设备接收到IP压缩数据包之后,然后按照传输网络协议头部对IP压缩数据包进行解码,得到压缩后的传输网络协议负荷,再对压缩后的传输网络协议负荷进行解压缩,得到了传输隧道协议头部、用户数据协议头部和用户应用层数据,最后用传输网络协议头部对传输隧道协议头部、用户数据协议头部和用户应用层数据进行封装,得到IP数据包,通过如上实现方式,实现了对IP压缩数据包还原,得到了IP数据包,实现了对传输链路上传输的压缩数据包的还原,故可以提高Backhaul的吞吐量。
以上实施例介绍了位于回程链路另一端的数据传输设备用于实现对传输的数据的还原,请参阅图4所示,本发明实施例提供的另一种数据传输方法,图4所示的数据还原方法与前述图2所示的数据压缩方法相对应,如图4所示,具体可以包括:
401、数据传输设备接收IP压缩数据包。
402、数据传输设备对IP压缩数据包按照传输网络协议头部、传输隧道协议头部、用户数据协议头部进行解码,得到压缩后的用户数据协议负荷。
在本发明实施例中,数据传输设备对IP压缩数据包按照传输网络协议头部、传输隧道协议头部、用户数据协议头部进行解码,得到压缩后的用户数据协议负荷进行解码,就可以得到压缩后的用户数据协议负荷,需要说明的是,在这里描述的解码的过程与前述实施例中介绍的压缩的过程是相反的,部署在同一传输链路两端的两个数据传输设备是相互知悉对端的数据传输设备是如何对数据处理的,也就是说,在同一传输链路的一端的数据传输设备如何对数据压缩,则相应的,对端的数据传输设备就需要采用相反的手段对数据进行解压缩。
需要说明的是,可选的是,传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部。传输隧道协议头部包括:GTP-U协议头部;用户数据协议头部包括:传输隧道协议所承载的用户数据IP协议头部、用户数据传输层协议头部。用户应用层数据包括:用户数据传输层协议的负荷Payload。
403、数据传输设备对压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据。
需要说明的是,数据传输设备对压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据,具体可以包括如下步骤:
G1、数据传输设备接收编码端设备发送的码本,其中,该码本包括:每一个数字摘要与每一个用户应用层数据片段、以及每一个数字摘要与每一个用户应用层数据片段的索引结构;
G2、数据传输设备根据该码本判断压缩后的用户数据协议负荷中是否存在重复的用户应用层数据片段;
G3、若存在,数据传输设备将压缩后的用户数据协议负荷解码为重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段,然后执行步骤G4;
G4、数据传输设备将解码得到的重复的用户应用层数据片段对应的数字摘要还原为重复的用户应用层数据片段;
G5、数据传输设备将重复的用户应用层数据片段、未重复的用户应用层数据片段进行组合,得到用户应用层数据。
404、数据传输设备使用传输网络协议头部、传输隧道协议头部、用户数据协议头部对用户应用层数据进行封装,得到IP数据包。
需要说明的是,步骤404中数据传输设备对用户应用层数据依次使用传输网络协议头部、传输隧道协议头部、用户数据协议头部进行封装是与步骤402的解码过程是相反的。
405、数据传输设备向核心网或基站发送IP数据包。
在数据传输设备将接收到的IP压缩数据包还原为IP数据包之后,数据传输设备将IP数据包向核心网或者基站发送。在图2中所示的实施例中,若步骤204中向核心网中解码端设备发送IP压缩数据包,则此处数据传输设备继续向核心网发送该IP数据包,若步骤204中向基站中的解码端设备发送IP压缩数据包,则此处数据传输设备继续向基站发送该IP数据包。
在本发明实施例中,若数据传输设备接收到的是IP压缩数据包,则数据传输设备首先对IP压缩数据包依次按照传输网络协议头部、传输隧道协议头部和用户数据协议头部进行解码,得到压缩后的用户数据协议负荷,需要说明的是,在这里描述的解码的过程与前述实施例中介绍的编码的过程是相反的,去封装的过程与前述实施例中介绍的封装的过程也是相反的,部署在同一传输链路两端的两个数据传输设备是相互知悉对端的数据传输设备是如何对数据处理的,也就是说,在同一传输链路的一端的数据传输设备如何对数据压缩,则相应的,对端的数据传输设备就需要采用相反的手段对数据进行解压缩。
需要说明的是,在本发明如图2所示的实施例中数据传输设备将IP数据包进行压缩,然后在传输链路进行传输,然后发送到本发明如图4所示的实施例中的另一数据传输设备,由该另一数据传输设备进行还原,整个过程经过了“压缩数据-传输数据-还原数据”这一完整的过程。
在本发明提供的实施例中,数据传输设备接收到压缩数据包之后,然后对IP压缩数据包依次按照传输网络协议头部、传输隧道协议头部和用户数据协议头部进行解码,得到压缩后的用户数据协议负荷,然后对压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据,再依次按照用户数据协议头部、传输隧道协议头部和传输网络协议头部对所述用户应用层数据进行封装,得到IP数据包。通过如上实现方式,实现了对IP压缩数据包还原,得到IP数据包,实现了对传输链路上传输的压缩数据包的还原,故可以提高Backhaul的吞吐量。
针对前述如图1和图3、图2和图4所示的实施例,下面以一个实际的应用场景进行详细说明,接下来描述一个完整的在Backhaul上传输数据的过程,请参阅图5所示的第一数据传输设备和第二数据传输设备进行数据交互的示意图,需要说明的是,第一数据传输设备具体可以指的是如图1所示的实施例中描述的数据传输设备,第二数据传输设备具体可以指的是如图3所示的实施例中描述的数据传输设备,此处为了区别图1和图3中分别的描述的是部署在Backhaul两端的两个数据传输设备,故分别采用第一和第二以作区别。部署在Backhaul上一端的是第一数据传输设备,部署在Backhaul上另一端的是第二数据传输设备,第一数据传输设备用于实现数据的压缩,第二数据传输设备用于实现数据的还原。另外,第一数据传输设备具体也可以指的是如图2所示的实施例中描述的数据传输设备,第二数据传输设备具体也可以指的是如图4所示的实施例中描述的数据传输设备,此处仅作说明。
第一数据传输设备首先对服务通用分组无线服务技术支持节点(SGSN,Serving GPRS Support Node)或网关通用分组无线服务技术支持节点(GGSN,Gateway GPRS Support Node)或服务网关(S-GW,Serving GateWay)接收到的IP数据包进行IP解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据。
其中,传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部;传输隧道协议头部具体指的是通用分组无线服务技术隧道协议用户面GTP-U协议头部;用户数据协议头部包括:传输隧道协议所承载的用户数据IP协议头部、用户数据传输层协议头部;用户应用层数据具体指的是用户数据传输层协议的负荷Payload。
本发明实施例中,第一数据传输设备将传输隧道协议头部、用户数据协议头部和用户应用层数据作为优化对象,第一数据传输设备对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,再用传输网络协议头部进行封装,得到IP压缩数据包。其中,传输网络传输层协议的协议类型为UDP、传输隧道协议的协议类型为GTP-U,传输网络IP协议的协议类型为IP,第一数据传输设备对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,可以包括的算法为如下步骤:
第一数据传输设备接收到存在IP分片的IP数据包时,对存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据。
第一数据传输设备从传输网络IP分组数据中获取到传输网络IP协议头部,传输网络IP协议包括了物理层数据和数据链路层数据,然后根据传输网络IP分组数据获取到传输网络传输层协议的协议类型为UDP,然后执行如下算法,
1、初始化:定义指针ptr指向传输网络传输层协议头部UDP Payload,定义协议头长度len=0;
2、对GTP-U头部切片,
2.1)、定义GTP-U头部长度gtp_hlen=0;
2.2)、GTP-U包括了8字节固定头部:gtp_hlen+=8;
2.3)、根据GTP-U的头部格式中的E、S或PN标志位,判断是否有可选字段,若有E、S或PN标志位为1表示有4字节的可选字段:gtp_hlen+=4;
2.4)、若有可选字段,根据E标志位和Next Extension Header Type字段判断是否有扩展头部,若有扩展头部,执行2.5步,否则跳至第3步;
2.5)、根据扩展头部中的Extension Header Length字段进行切片:gtp_hlen+=(Extension Header Length*4),读取(ptr+len-1)处的Next ExtensionHeader Type字段,若非0,则循环执行步骤2.4,直到Next Extension Header Type字段为0。此时,得到GTP-U头部长度gtp_hlen。
2.6)、len+=gtp_hlen;
3、对GTP-U承载的IP数据包进行IP切片重组后,得到完整的用户数据IP分组数据,根据用户数据IP分组数据头部的Header Length字段,对用户数据IP分组数据的头部进行切片:len+=(Header Length*4);
根据GTP-U承载的用户数据IP协议头部中的协议类型,若用户数据传输层协议是TCP,根据Data Offset字段对TCP头部切片:len+=(Data Offset*4);若用户数据传输层协议是UDP,固定8字节切片:len+=8;
将从指针ptr开始,长度为len的数据作为一个头部组块,该头部组块包括了传输网络协议头部、传输隧道协议头部、用户数据协议头部,也就是说从指针(ptr+len)往后为用户数据传输层协议的负荷(Payload)。
第一数据传输设备获取到用户应用层数据之后,包括两种处理方式:1)和2),接下来分别进行详细说明。
1)、第一数据传输设备可以对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,得到了如图5中所示的压缩后的传输网络协议负荷,然后再用传输网络协议头部进行封装,得到IP压缩数据包,其实现算法包括如下步骤:
1、第一数据传输设备对传输隧道协议头部、用户数据协议头部进行头部压缩,得到头部压缩的结果;
2、将用户应用层数据进行切片,得到N(N为自然数)个用户应用层数据片段为:Data1、Data2、….、DataN;
3、为每一个用户应用层数据片段生成数字摘要,即为Data1生成数字摘要Fingerprint1,为Data2生成数字摘要Fingerprint2,…,为DataN生成数字摘要FingerprintN;
4、生成码本,在该码本中记载了Data1、Data2、….、DataN,Fingerprint1、Fingerprint2、…、FingerprintN,以及Data1、Data2、….、DataN和Fingerprint1、Fingerprint2、…、FingerprintN的索引结构;
5、将该码本同步发送到第二数据传输设备中,以使第二数据传输设备在对数据进行还原时使用该码本;
6、根据数字摘要与用户应用层数据片段的索引结构判断Data1、Data2、….、DataN中有没有重复的用户应用层数据片段,假设Data1与Data2是重复的,则使用Fingerprint1代替Data1与Data2。
7、将Fingerprint1和Data3、….、DataN(即未重复的用户应用层数据片段)进行编码,得到压缩后的用户应用层数据。
2)、第一数据传输设备对用户应用层数据进行压缩,得到了如图6中所示的压缩后的用户数据协议负荷,再用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包。第一数据传输设备对用户应用层数据进行压缩,其实现算法包括如下步骤:
首先,维护一个表格,每行包括以下字段:
传输网络IP协议头部;
传输网络传输层协议头部;
GTP-U协议头部及长度;
用户应用层的源IP地址、目的IP地址、IP标识;
其次,实现的算法包括如下步骤:
1、初始化:
1)每输入一个IP数据包,进行IP分片重组;
2)在表格中新增一行;
3)定义指针ptr指向传输网络层的传输网络IP协议头部;
2、根据传输网络IP协议头部的Header Length字段,将传输网络IP协议头部保存在表格的“传输网络IP协议头部”字段中;若传输网络传输层协议的协议类型为UDP,指针ptr后移(Header Length*4)字节,执行下一步;
3、将8个字节的UDP数据头部保存在表格的“传输网络传输层协议头部”字段,若UDP源端口号或目的端口号为2132,指针ptr后移8字节,执行下一步;
4、解析GTP-U协议头部,并得到GTP-U的头部长度gtp_hlen(计算方式如前述实施例中的描述);将GTP-U的头部保存在表格的“GTP-U协议头部及长度”字段中;指针ptr后移gtp_hlen字节;
5、此时指针ptr已指向用户应用层的IP分组数据的头部,读取用户应用层的源IP地址、目的IP地址、IP标识,保存至表格的“用户应用层的源IP地址、目的IP地址、IP标识”字段;
6、从指针ptr开始至数据结尾的部分为用户应用层数据,对用户应用层数据进行压缩,得到压缩后的用户数据协议负荷(其实现方式与前述的对用户应用层数据进行压缩的方式相类似);
7、将指针ptr指向压缩后的用户数据协议负荷,读取用户应用层的源IP地址、目的IP地址、IP标识,查找表格的“源IP地址、目的IP地址、IP标识”字段,得到传输网络层的GTP-U协议头部、传输网络传输层协议头部、传输网络IP协议头部。第一数据传输设备用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包,具体为如下3个步骤:
a、添加GTP-U协议头部,重新计算Total Length字段;
b、添加传输网络传输层协议头部,重新计算Length字段和Checksum;
c、添加传输网络IP协议头部字段,重新计算Total Length和HeaderChecksum字段;
在压缩后的用户数据协议负荷上添加完GTP-U协议头部、传输网络传输层协议头部、传输网络IP协议头部字段之后,就可以得到IP压缩数据包了。
8、清除已经重新封装完毕的表格项。
第二数据传输设备的实现方式与前述的第一数据传输设备恰好是相反的处理过程,此处不再赘述。
以上实施例介绍了本发明提供的一种数据传输方法,接下来介绍本发明实施例提供的另一种数据传输方法,在一个完整的数据传输过程中,回程链路一端的数据传输设备用于实现对传输的数据的去重,回程链路的另一端的数据传输设备用于实现对传输的数据的还原,这两个数据传输设备分别部署在整个回程链路的两端,用于实现在回程链路上传输的数据的压缩,以提高Backhaul的吞吐量,接下来分别描述在一个完整的数据传输过程中,用于实现数据去重的数据传输设备和用于实现数据还原的数据传输设备具体是如何实现本发明的,后续将数据去重和数据还原分别以单独的实施例的方式进行描述。
请参阅图7所示,本发明实施例提供的数据传输方法,包括:
701、获取媒体接入控制协议数据单元MAC PDU。
在本发明实施例中,具体的一种方式可以为数据传输设备获取按照Iub接口协议解码后的Uu接口媒体接入控制协议数据单元(MAC PDU,MediumAccess Control Protocol Data Unit),用于实现对数据去重的数据传输设备部署在传输链路的一端,数据传输设备首先获取Uu接口MAC PDU,Uu接口MACPDU为连接Iub接口所使用的协议进行解码得到的数据,其中,连接Iub接口所使用的协议具体可以为:IP、UDP、成帧协议(FP,Frame Protocol)等。
需要说明的是,在本发明实施例中,对于步骤501,数据传输设备获取按照Iub接口协议解码后的MAC PDU,作为可实现的一种方式,具体可以包括:
H1、数据传输设备对接收到的Iub封装数据按照Iub接口协议进行解码,得到MAC PDU;
或,
H2、数据传输设备从基站的协议处理模块或者无线网络控制器(RNC,Radio Network Controller)的协议处理模块接收MAC PDU。
需要说明的是,对于步骤H2,若数据传输设备从基站的协议处理模块接收到MAC PDU,此时,数据传输设备部署在基站内部,且可以部署在基站内部的Iub接口协议处理模块和Uu接口协议处理模块之间,由于基站已经按照Iub接口协议对数据进行了解码,故数据传输设备就可以直接从基站处接收到MAC PDU。若数据传输设备从无线网络控制器接收到到MAC PDU,则数据传输设备与无线网络控制器相连接,数据传输设备就可以从无线网络控制器的协议处理模块中接收到MAC PDU。
在本发明实施例中,需要说明的是,Iub封装数据指的是按照Iub接口协议解码后得到的数据。对于步骤H1数据传输设备对接收到的Iub封装数据按照Iub接口协议进行解码,得到MAC PDU,作为可实现的另一种方式,具体可以包括:
I1、当Iub封装数据是存在IP分片的IP数据包时,数据传输设备对IP数据包进行IP分片重组,得到完整的传输网络IP分组数据;
I2、数据传输设备对传输网络IP分组数据按照网际协议(IP,InternetProtocol)、用户数据报协议(UDP,User Datagram Protocol)进行解码,得到UDP负载;
I3、数据传输设备对UDP负载按照成帧协议(FP,Frame Protocol)进行解码,得到MAC PDU。
需要说明的是,在本发明实施例中,步骤701中数据传输设备获取到按照Iub接口协议解码后的MAC PDU,本发明实施例中提供对MAC PDU的处理具体请参见如下步骤702至704的描述。
702、对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC、分组数据汇聚协议PDCP进行解码,得到分组数据汇聚协议协议数据单元PDCP PDU。
数据传输设备对MAC PDU依次按照MAC、无线链路控制RLC、分组数据汇聚协议PDCP进行解码,得到分组数据汇聚协议协议数据单元(PDCPPDU,Packet Data Convergence Protocol Protocol Data Unit)。
数据传输设备获取到MAC PDU之后,按照Uu接口协议进行解码,得到PDCP PDU,需要说明的是,在本发明实施例中,数据传输设备对MAC PDU依次按照MAC、RLC和PDCP解码,得到PDCP PDU,具体可以包括如下步骤:
J1、数据传输设备对MAC PDU进行MAC层解码,得到RLC PDU;
J2、数据传输设备对RLC PDU进行RLC层解码,然后对解码后的RLCPDU进行PDCP解码重组,得到PDCP PDU。
其中,RLC PDU指的是按照MAC协议对MAC PDU进行解码得到的数据,PDCP PDU指的是按照RLC协议对RLC PDU进行解码并重组后得到的数据。
对于步骤J1,数据传输设备根据MAC协议的协议栈结构对MAC PDU进行解码,得到的是RLC PDU,步骤J2中也是依据各自协议的协议栈结构进行解码后得到的结果。
需要说明的是,若MAC PDU承载的数据被加密,数据传输设备对MACPDU进行MAC层解码之后,对MAC PDU承载的数据进行解密,然后再执行步骤J2。若RLC PDU承载的数据被加密,数据传输设备对RLC PDU进行RLC层解码之后,对RLC PDU承载的数据进行解密,数据传输设备对RLC解码数据进行解密之后再执行步骤703。
703、使用用户数据协议头部对所述PDCP PDU进行解码,得到解码数据。
具体可以为数据传输设备使用用户数据协议头部对PDCP PDU进行解码,得到Uu解码数据。
其中,用户数据协议头部具体可以包括:传输隧道协议所承载的用户数据IP协议头部、用户数据传输层协议头部。
Uu解码数据为连接Uu接口所使用的协议进行解码得到的数据,其中,连接Uu接口所使用的协议具体可以为:媒体接入控制协议(MAC,MediumAccess Control)、无线链路控制协议(RLC,Radio Link Control)、分组数据汇聚协议(PDCP,Packet Data Convergence Protocol)等。
需要说明的是,在本发明实施例中,步骤703具体可以包括如下步骤:
K1、数据传输设备对PDCP PDU进行上层协议头部解压缩,得到用户数据IP分组数据;
K2、数据传输设备对用户数据IP分组数据的用户数据IP协议头部、用户数据传输层协议头部进行解码,得到解码数据。
对于步骤K1,数据传输设备对PDCP PDU进行上层协议头部解压缩,得到用户数据IP分组数据,步骤K2中也是依据各自协议的协议栈结构进行解码后得到的结果。
704、对所述解码数据进行压缩,得到压缩数据。
具体的数据传输设备对Uu解码数据进行压缩,得到Uu压缩数据。
在本发明实施例中,数据传输设备在得到解码数据之后,数据传输设备可以对解码数据进行压缩,以得到压缩数据,在传输链路中数据传输设备对解码数据的压缩能够提高链路的吞吐量。
需要说明的是,对于步骤704,数据传输设备对解码数据进行压缩,得到压缩数据,具体可以包括如下步骤:
L1、数据传输设备对解码数据进行切片,得到多个的解码数据片段;
L2、数据传输设备对切片后得到的每一个解码数据片段生成数数字摘要;
L3、数据传输设备根据解码数据片段和数字摘要生成码本,其中,码本包括每一个数字摘要与每一个解码数据片段、以及每一个数字摘要与每一个解码数据片段的索引结构;
L4、数据传输设备将码本发送到与数据传输设备属于同一传输链路的另一数据传输设备,该另一数据传输设备是使用该码本进行解码的解码端设备;
L5、数据传输设备根据该码本判断多个的解码数据片段中是否存在重复的解码数据片段;
L6、若存在,数据传输设备用重复的解码数据片段对应的数字摘要代替重复的解码数据片段;
L7、数据传输设备将重复的解码数据对应的数字摘要和未重复的解码数据片段进行编码,得到压缩数据。
需要说明的是,在步骤J3中,数据传输设备需要将生成的码本同步发送到传输链路的对端的数据传输设备,以使两个数据传输设备中保存的码本是完全相同的,在数据传输设备侧对数据去重之后,在另一数据传输设备侧使用码本对数据进行还原。
705、依次按照所述用户数据协议头部、PDCP、RLC、MAC对所述压缩数据进行封装,得到封装数据。
具体的,数据传输设备对压缩数据按照用户数据协议头部、PDCP、RLC、MAC进行封装,得到Uu封装数据。
在本发明实施例中,数据传输设备对解码数据进行压缩得到压缩数据之后,按照用户数据协议头部的协议栈结构对压缩数据再进行封装和依次按照PDCP、RLC、MAC进行封装,得到Uu封装数据。根据前述的介绍,数据传输设备对MAC PDU依次进行MAC、RLC、PDCP的解码,此处就可以按照相反的方式进行封装。
706、数据传输设备向核心网或基站发送封装数据。
需要说明的是,所述封装数据可以是Uu封装数据。数据传输设备向核心网中或基站中的解码端设备发送封装数据在本发明实施例中,数据传输设备向核心网中或基站中的解码端设备发送Uu封装数据具体可以包括:数据传输设备对Uu封装数据进行Iub接口协议的封装,得到Iub封装数据,或者,数据传输设备将Uu封装数据发送到基站的协议处理模块或者RNC的协议处理模块。
需要说明的是,数据传输设备对Uu封装数据进行Iub接口协议的封装,得到Iub封装数据,包括:
数据传输设备对Uu封装数据按照成帧协议FP进行封装,得到FP封装数据;
数据传输设备对FP封装数据按照用户数据报协议UDP、网际协议IP进行封装,得到传输网络IP分组数据;
判断传输网络IP分组数据的长度是否大于下层协议的最大传输单元的长度,若传输网络IP分组数据的长度大于下层协议的最大传输单元的长度,对传输网络IP分组数据进行IP分片,得到分片后的IP分组数据,分片后的IP分组数据就是Iub封装数据,若传输网络IP分组数据的长度小于或者等于下层协议的最大传输单元的长度,传输网络IP分组数据就是Iub封装数据。
需要说明的是,在本发明实施例中,若已经对RLC PDU承载的数据进行了解密,数据传输设备先对RLC PDU承载的数据进行加密之后,再进行RLC封装;若已经对MAC PDU承载的数据进行了解密,数据传输设备先对MAC PDU承载的数据进行加密之后,再进行MAC封装。
在本发明提供的实施例中,首先获取到Iub接口协议解码后的MAC PDU,然后对MAC PDU依次按照MAC、RLC、PDCP进行解码,并使用用户数据协议头部对PDCP PDU进行解码,得到解码数据,再对解码数据进行压缩,得到压缩数据,之后再依次对压缩数据按照用户数据协议头部、PDCP、RLC、MAC进行封装,得到Uu封装数据,通过这种优化方式可以实现对解码数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
前述实施例介绍了本发明提供的一种数据传输方法,接下来介绍本发明实施例提供的另一种数据传输方法,如图8所示,主要可以包括如下步骤:
801、数据传输设备获取媒体接入控制协议数据单元(MAC PDU,MediumAccess Control Protocol Data Unit)。
步骤801与前述实施例中的步骤701相类此,此处再赘述。
802、数据传输设备对MAC PDU依次按照MAC、RLC进行解码,得到解码数据。
数据传输设备获取到MAC PDU之后,按照Uu接口协议进行解码得到解码数据,解码数据为连接Uu接口所使用的协议进行解码得到的数据,其中,连接Uu接口所使用的协议具体可以为:媒体接入控制协议(MAC,MediumAccess Control)、无线链路控制协议(RLC,Radio Link Control)。
需要说明的是,在本发明实施例中,数据传输设备对MAC PDU依次按照MAC、RLC解码,得到解码数据,具体可以包括如下步骤:
M1、数据传输设备对MAC PDU进行MAC层解码,得到RLC PDU;
M2、数据传输设备对RLC PDU进行RLC层解码,得到解码数据。
其中,RLC PDU指的是按照MAC协议对MAC PDU进行解码得到的数据。
对于步骤M1,数据传输设备根据MAC协议的协议栈结构对MAC PDU进行解码,得到的是RLC PDU,步骤M2也是依据各自协议的协议栈结构进行解码后得到的结果。
需要说明的是,若MAC PDU承载的数据被加密,数据传输设备对MACPDU进行MAC层解码之后,对MAC PDU承载的数据进行解密,然后再执行步骤M2。若RLC PDU承载的数据被加密,数据传输设备对RLC PDU进行RLC层解码之后,对RLC PDU承载的数据进行解密,数据传输设备对RLC解码数据进行解密之后才能得到解码数据。
803、数据传输设备对解码数据进行压缩,得到压缩数据。
在本发明实施例中,数据传输设备在得到解码数据之后,数据传输设备可以对解码数据进行压缩,以得到压缩数据,在传输链路中数据传输设备对解码数据的压缩能够提高链路的吞吐量。
需要说明的是,对于步骤802,数据传输设备对解码数据进行压缩,得到压缩数据,具体可以包括如下步骤:
N1、数据传输设备对解码数据进行切片,得到多个的解码数据片段;
N2、数据传输设备对切片后得到的每一个解码数据片段生成数数字摘要;
N3、数据传输设备生成码本,其中,码本包括每一个数字摘要与每一个解码数据片段、以及每一个数字摘要与每一个解码数据片段的索引结构;
N4、数据传输设备将码本发送到与数据传输设备属于同一传输链路的另一数据传输设备,该另一数据传输设备为使用码本进行解码的解码端设备;
N5、数据传输设备根据每一个数字摘要与每一个解码数据片段的索引结构判断是否存在重复的解码数据片段;
N6、若存在,数据传输设备用重复的解码数据片段对应的数字摘要代替重复的解码数据片段;
N7、数据传输设备将重复的解码数据对应的数字摘要和未重复的解码数据片段进行编码,得到压缩数据。
需要说明的是,在步骤N3中,数据传输设备需要将生成的码本同步发送到传输链路的对端的数据传输设备,以使两个数据传输设备中保存的码本是完全相同的,在数据传输设备侧对数据去重之后,在另一数据传输设备对数据进行还原。
804、数据传输设备对压缩数据按照RLC、MAC进行封装,得到封装数据。
在本发明实施例中,数据传输设备对解码数据进行压缩得到压缩数据之后,按照PDCP、RLC、MAC进行封装,得到Uu封装数据。根据前述的介绍,数据传输设备对MAC PDU依次进行MAC、RLC的解码,此处就可以按照相反的方式进行封装。
805、数据传输设备向核心网中或基站中的解码端设备发送封装数据。
需要说明的是,在本发明实施例中,数据传输设备向核心网中或基站中的解码端设备发送Uu封装数据具体可以包括:数据传输设备对Uu封装数据进行Iub接口协议的封装,得到Iub封装数据,或者,数据传输设备将Uu封装数据发送到基站的协议处理模块或者RNC的协议处理模块。
需要说明的是,数据传输设备对Uu封装数据进行Iub接口协议的封装,得到Iub封装数据,包括:
数据传输设备对Uu封装数据按照成帧协议FP进行封装,得到FP封装数据;
数据传输设备对FP封装数据按照用户数据报协议UDP、网际协议IP进行封装,得到传输网络IP分组数据;
判断传输网络IP分组数据的长度是否大于下层协议的最大传输单元的长度,若传输网络IP分组数据的长度大于下层协议的最大传输单元的长度,对传输网络IP分组数据进行IP分片,得到分片后的IP分组数据,分片后的IP分组数据就是Iub封装数据,若传输网络IP分组数据的长度小于或者等于下层协议的最大传输单元的长度,传输网络IP分组数据就是Iub封装数据。
需要说明的是,在本发明实施例中,若已经对RLC PDU承载的数据进行了解密,数据传输设备先对RLC PDU承载的数据进行加密之后,再进行RLC封装;若已经对MAC PDU承载的数据进行了解密,数据传输设备先对MAC PDU承载的数据进行加密之后,再进行MAC封装。
在本发明提供的实施例中,数据传输设备首先获取到Iub接口协议解码后的MAC PDU,然后对MAC PDU依次按照MAC、RLC进行解码,得到解码数据,再对解码数据进行压缩,得到压缩数据,之后再依次对压缩数据按照RLC、MAC进行封装,得到Uu封装数据,这种优化方式可以实现对解码数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
以上实施例介绍了在一个完整的数据传输过程中,回程链路一端的数据传输设备用于实现对传输的数据的去重,接下来介绍位于回程链路另一端的数据传输设备用于实现对传输的数据的还原,请参阅图9所示,本发明实施例提供的一种数据传输方法与前述图7所示的实施例相对应,包括:
901、数据传输设备获取封装数据。
在本发明实施例中,具体的,用于数据还原的数据传输设备首先从传输链路上接收到Uu封装数据,Uu封装数据的介绍请参阅如图7所示的实施例中相应的介绍说明。
需要说明的是,在本发明实施例中,数据传输设备获取Uu封装数据,可以包括:数据传输设备接收无线网络控制器(RNC,Radio Network Controller)发送的IP数据包;数据传输设备对IP数据包按照Iub接口协议进行解码,得到Uu封装数据。
902、数据传输设备对封装数据依次按照MAC、RLC、PDCP和用户数据协议头部进行解码,得到压缩数据。
具体的,数据传输设备接收到Uu封装数据之后,按照前述实施例中步骤705对Uu压缩数据的封装方式,此处采用与封装方法相反的方式对Uu封装数据进行去封装,就可以得到Uu压缩数据。
903、数据传输设备对压缩数据进行解压缩,得到解码数据。
数据传输设备按照前实施例中步骤704中对解码数据进行压缩的方式相反的方式,此处数据传输设备对压缩数据进行解压缩,就可以得到解码数据。
需要说明的是,在本发明实施例中,作为其中的一种实现方式,数据传输设备对压缩数据进行解压缩,得到解码数据,具体可以包括如下步骤:
O1、数据传输设备从与数据传输设备属于同一传输链路的另一数据传输设备接收到码本,其中,码本包括每一个数字摘要与每一个解码数据片段、以及每一个数字摘要与每一个解码数据的索引结构,该另一数据传输设备为编码端设备;
O2、数据传输设备根据该码本判断压缩数据中是否存在重复的解码数据片段;
O3、若存在,数据传输设备将压缩数据解码为重复的解码数据片段对应的数字摘要和未重复的解码数据片段;
O4、数据传输设备将解码得到的重复的解码数据片段对应的数字摘要还原为重复的解码数据片段;
O5、数据传输设备将重复的解码数据片段、未重复的解码数据片段进行组合,得到解码数据。
此处步骤O1至O5描述的对数据的还原过程是与前述实施例中描述的对数据的压缩过程是相反的,由于数据传输设备是知悉同一传输链路的另一数据传输设备是如何进行数据压缩的,故此处的数据传输设备就可以采用相反的方式对数据进行还原。
904、数据传输设备对解码数据按照用户数据协议头部进行封装,得到分组数据汇聚协议协议数据单元PDCP PDU。
905、数据传输设备依次按照PDCP、RLC、MAC对PDCP PDU进行封装,得到MAC PDU。
906、数据传输设备向核心网或基站发送MAC PDU。
在本发明实施例中,数据传输设备作为解码端设备,通过传输链路接收到编码端设备发送的Uu封装数据之后,通过步骤902至905对Uu封装数据进行了还原,得到了MAC PDU,然后将MAC PDU发送到核心网或者基站。
在本发明提供的实施例中,数据传输设备首先获取到Uu封装数据,数据传输设备依次按照MAC、RLC、PDCP和用户数据协议头部进行解码,得到压缩数据,然后对压缩数据进行解压缩,得到解码数据,最后用用户数据协议头部、PDCP、RLC、MAC进行封装,得到了MAC PDU,由于将Uu封装数据还原为MAC PDU,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
接下来介绍位于回程链路另一端的数据传输设备用于实现对传输的数据的还原,请参阅图10所示,本发明实施例提供的一种数据传输方法与前述图8所示的实施例相对应,包括:
1001、数据传输设备获取封装数据。
步骤1001与前述实施例中步骤901相类似,此处不再赘述。
1002、数据传输设备对封装数据依次按照媒体接入控制协议MAC、无线链路控制协议RLC进行解码,得到压缩数据。
具体的,数据传输设备接收到Uu封装数据之后,按照前述实施例中步骤804对Uu压缩数据的封装方式,此处采用与封装方法相反的方式对Uu封装数据进行去封装,就可以得到Uu压缩数据。
1003、数据传输设备对压缩数据进行解压缩,得到解码数据。
数据传输设备按照前实施例中步骤803中对解码数据进行压缩的方式相反的方式,此处数据传输设备对压缩数据进行解压缩,就可以得到解码数据。
需要说明的是,在本发明实施例中,作为其中的一种实现方式,数据传输设备对压缩数据进行解压缩,得到解码数据,具体可以包括如下步骤:
P1、数据传输设备从与数据传输设备属于同一传输链路的另一数据传输设备接收到码本,其中,码本包括每一个数字摘要与每一个解码数据片段、以及每一个数字摘要与每一个解码数据的索引结构,另一数据传输设备为编码端设备;
P2、数据传输设备根据该码本判断压缩数据中是否存在重复的解码数据片段;
P3、若存在,数据传输设备将压缩数据解码为重复的解码数据片段对应的数字摘要和未重复的解码数据片段;
P4、数据传输设备将解码得到的重复的解码数据片段对应的数字摘要还原为重复的解码数据片段;
P5、数据传输设备将重复的解码数据片段、未重复的解码数据片段进行组合,得到用户应用层数据。
此处步骤P1至P5描述的对数据的还原过程是与前述实施例中描述的对数据的压缩过程是相反的,由于数据传输设备是知悉同一传输链路的另一数据传输设备是如何进行数据压缩的,故此处的数据传输设备就可以采用相反的方式对数据进行还原。
1004、数据传输设备对解码数据依次按照RLC、MAC进行封装,得到MAC PDU。
数据传输设备按照使用Uu接口的协议栈结构,数据传输设备对解码数据进行封装,得到MAC PDU。
1005、数据传输设备向核心网或基站发送MAC PDU。
在本发明提供的实施例中,数据传输设备首先获取到封装数据,数据传输设备依次按照MAC、RLC进行解码,得到压缩数据,然后对压缩数据进行解压缩,得到解码数据,最后用RLC、MAC进行封装,得到了MAC PDU。由于将Uu封装数据还原为MAC PDU,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
针对前述图7和图9、图8和图10所示的实施例,下面以一个实际的应用场景进行详细说明,接下来描述一个完整的在Backhaul上传输数据的过程,请参阅图11所示的第一数据传输设备和第二数据传输设备进行数据交互的示意图,需要说明的是,第一数据传输设备具体可以指的是如图7所示的实施例中描述的数据传输设备,第二数据传输设备具体可以指的是如图9所示的实施例中描述的数据传输设备,此处为了区别图7和图9中分别的描述的是部署在Backhaul两端的两个数据传输设备,故分别采用第一和第二以作区别。部署在Backhaul上一端的是第一数据传输设备,部署在Backhaul上另一端的是第二数据传输设备,第一数据传输设备用于实现数据的压缩,第二数据传输设备用于实现数据的还原。另外,第一数据传输设备具体也可以指的是如图8所示的实施例中描述的数据传输设备,第二数据传输设备具体也可以指的是如图10所示的实施例中描述的数据传输设备,此处仅作说明。
第一数据传输设备首先对RNC接收到的IP数据包进行IP分片重组,得到传输网络IP分组数据,Phy表示物理层数据,Data Link表示数据链路层数据。本发明实施例中,第一数据传输设备将传输网络层的传输网络IP分组数据作为优化对象,第一数据传输设备解析传输网络IP分组数据,假设Iub接口协议为IP、UDP和FP,Uu接口协议为MAC、RLC和PDCP,可以包括的算法为如下步骤:
首先要建立RLC PDU链表,
算法步骤:
1、解析IP/UDP协议,得到UDP负载;
2、根据3GPP TS25.434标准,对UDP负载进行FP协议的解码,得到一个MAC PDU,若MAC层有加密,则完成解密;
3、根据3GPP TS25.321标准,对MAC PDU进行MAC层解码,得到RLCPDU;
4、根据3GPP TS25.322标准,若RLC层有加密,则完成RLC解密,得到解密后的RLC PDU;
5、将RLC PDU放入RLC链表;
6、循环执行步骤2至步骤5,直到解码完整个FP数据帧;
7、从RLC PDU链表取出RLC PDU,完成重组,得到PDCP PDU;
8、根据3GPP TS25.323标准,解码PDCP PDU,完成上层协议头部解压缩,得到用户数据IP分组数据;
9、对用户数据IP分组数据的用户数据IP协议头部、用户数据传输层协议头部进行解码,得到解码数据;
10、对解码数据进行压缩,得到压缩数据,即图11中所示的优化数据;
11、逐层调用PDCP、RLC、MAC封装模块,完成Uu接口协议封装,得到Uu封装数据,并释放RLC链表;
12、根据步骤2中FP协议帧格式和FP格式表格,重新封装FP数据帧;
13、封装UDP、IP协议,并重新计算Length、Checksum字段;
14、重新将数据发送到Backhaul上。
第二数据传输设备的实现方式与前述的第一数据传输设备恰好是相反的处理过程,此处不再赘述。
下面以另一个实际的应用场景进行详细说明,请参阅图12所示,以模块形式将第一数据传输设备部署在RNC内部的Iub接口协议处理模块和Uu接口协议处理模块之间,第一数据传输设备以用户应用层数据作为内容编码的优化对象,因基站处已经处理了Iub接口协议,故第一数据传输设备只需要对Uu接口协议提供适配,另外,仍然需要解决加密问题,具体可以参阅前述算法的步骤3~8,以及前述算法的步骤11至13。此处介绍的方法需要修改基站的结构,但是相对于前述实施例,减少了对Iub接口协议的解析和封装,但仍然需要从RNC获取密钥解密Uu接口协议MAC/RLC层的加密。
第二数据传输设备的实现方式与前述的第一数据传输设备恰好是相反的处理过程,此处不再赘述。
接下来介绍另一应用场景,将无线网络层解密后的RLC PDU作为内容编码对象,以RLC PDU作为原始数据进行去重、编码,对应前述实施例,第一数据传输设备的实现方式分别做如下描述:
1)、去重算法执行前述实施例的步骤1~至4,得到解密后的RLC PDU,直接将RLC PDU进行去重、编码后再完成MAC层、FP帧、UDP/IP的封装。
2)、去重算法执行前述实施例的步骤3~4,得到解密后的RLC PDU,直接将RLC PDU进行去重、编码后再完成MAC层的封装。
第二数据传输设备的实现方式与前述的第一数据传输设备恰好是相反的处理过程,此处不再赘述。
以上实施例描述的是本发明实施例提供的数据传输方法,接下来介绍本发明实施例提供的数据传输设备,请参阅图13所示,数据传输设备1300,包括:IP数据包解析单元1301、压缩单元1302、封装单元1303和发送单元1304,其中,
IP数据包解析单元1301,用于对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
压缩单元1302,用于对所述传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,得到压缩后的传输网络协议负荷;
封装单元1303,用于使用传输网络协议头部对所述压缩后的传输网络协议负荷进行封装,得到IP压缩数据包;
发送单元1304,用于向核心网或基站发送所述IP压缩数据包。
需要说明的是,对于本发明实施例提供的IP数据包解析单元1301,作为其中一种可实现的方式,包括(未在图13中示出):
第一分片重组子单元,用于若IP数据包存在IP分片时,对存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
第一获取子单元,用于根据传输网络IP分组数据的头部获取传输网络IP协议头部和传输网络IP协议头部的长度;
第二获取子单元,用于根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型获取传输网络传输层协议头部传输网络传输层协议头部的长度;进一步具体的可以是根据所述传输网络传输层协议的协议类型获取传输网络传输层协议头部和对应的字段,根据所述传输网络传输层协议头部和对应的字段获取传输网络传输层协议头部的长度
第三获取子单元,用于根据所述传输网络IP协议头部的长度和所述传输网络传输层协议头部的长度获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
第四获取子单元,用于根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部,所述传输网络协议头部是从所述传输网络IP分组数据的开头到长度为所述传输网络协议头部的长度对应的数据。
需要说明的是,对于本发明实施例提供的IP数据包解析单元1301,作为其中另一种可实现的方式,还包括(未在图13中示出):
计算子单元,用于根据传输隧道协议的协议类型计算传输隧道协议的固定头部的长度;
第一判断子单元,用于根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在可选字段;
第五获取子单元,用于当不存在可选字段时,根据所述传输隧道协议的固定头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
第二判断子单元,用于当存在可选字段时,根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在扩展头部;
第六获取子单元,用于当不存在扩展头部时,根据所述传输隧道协议的固定头部的长度和可选字段的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度;
第七获取子单元,用于当存在扩展头部时,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和所述扩展头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
第八获取子单元,用于根据所述传输网络IP分组数据和所述传输网络协议头部获取所述传输隧道协议头部,所述所述传输隧道协议头部是从所述传输网络IP分组数据中的所述传输网络协议头部之后开始到长度为所述传输隧道协议头部的长度对应的数据。
需要说明的是,对于本发明实施例提供的IP数据包解析单元1301,作为其中另一种可实现的方式,还包括(未在图13中示出):
第二分片重组子单元,用于当传输隧道协议承载的数据存在IP分片时,对所述传输隧道协议承载的数据进行IP分片重组,获取到完整的用户数据IP分组数据;
第九获取子单元,用于根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
第十获取子单元,用于根据所述用户数据IP分组数据头部的协议类型字段获取用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部和对应的字段,根据所述用户数据传输层协议头部和对应的字段获取用户数据传输层协议头部的长度;
第十一获取子单元,用于根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
第十二获取子单元,用于根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部,所述用户数据协议头部是从所述传输网络IP分组数据中的所述传输隧道协议头部之后开始到长度为所述用户数据协议头部的长度对应的数据。
需要说明的是,对于本发明实施例提供的压缩单元1302,作为其中一种可实现的方式,包括(未在图13中示出):
第一压缩子单元,用于对所述传输隧道协议头部、所述用户数据协议头部进行头部压缩,得到头部压缩的结果;
第二压缩子单元,用于对所述用户应用层数据进行压缩,得到压缩后的用户应用层数据;
编码子单元,用于对所述头部压缩的结果和所述压缩后的用户应用层数据进行编码,得到所述压缩后的传输网络协议负荷。
需要说明的是,对于本发明实施例提供的数据传输设备1300,作为其中一种可实现的方式,还可以包括(未在图13中示出):
判断单元,用于判断所述IP压缩数据包的长度是否大于下层协议的最大传输单元的长度;
分片单元,用于当所述IP压缩数据包的长度大于下层协议的最大传输单元的长度,对所述IP压缩数据包进行IP分片,得到分片后的IP压缩数据包;
所述发送单元,具体用于向核心网或基站发送所述分片后的IP压缩数据包。
在本发明提供的实施例中,IP数据包解析单元对接收到的IP数据包进行解析,得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后压缩单元对传输隧道协议头部、用户数据协议头部和用户应用层数据进行压缩,封装单元再用传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包,通过这优化方式可以实现对用户应用层数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
前述实施例介绍了本发明提供的一种数据传输设备,接下来介绍本发明实施例提供的另一种数据传输设备,如图14所示,数据传输设备1400,包括:IP数据包解析单元1401、压缩单元1402、封装单元1403和发送单元1404,其中,
IP数据包解析单元1401,用于对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
压缩单元1402,用于对所述用户应用层数据进行压缩,得到压缩后的用户数据协议负荷;
封装单元1403,用于使用所述用户数据协议头部、所述传输隧道协议头部和所述传输网络协议头部对所述压缩后的用户数据协议负荷进行封装,得到IP压缩数据包;
发送单元1404,用于向核心网或基站发送所述IP压缩数据包。
需要说明的是,对于本发明实施例提供的IP数据包解析单元1401,作为其中一种可实现的方式,包括(未在图14中示出):
第一分片重组子单元,用于若IP数据包存在IP分片时,对存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
第一获取子单元,用于根据传输网络IP分组数据的头部获取传输网络IP协议头部和传输网络IP协议头部的长度;
第二获取子单元,用于根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型获取传输网络传输层协议头部和对应的字段,根据所述传输网络传输层协议头部和对应的字段获取传输网络传输层协议头部的长度;
第三获取子单元,用于根据所述传输网络IP协议头部的长度和所述传输网络传输层协议头部的长度获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
第四获取子单元,用于根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部,所述传输网络协议头部是从所述传输网络IP分组数据的开头到长度为所述传输网络协议头部的长度对应的数据。
需要说明的是,对于本发明实施例提供的IP数据包解析单元1401,作为其中另一种可实现的方式,还包括(未在图14中示出):
计算子单元,用于根据传输隧道协议的协议类型计算传输隧道协议的固定头部的长度;
第一判断子单元,用于根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在可选字段;
第五获取子单元,用于当不存在可选字段时,根据所述传输隧道协议的固定头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
第二判断子单元,用于当存在可选字段时,根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在扩展头部;
第六获取子单元,用于当不存在扩展头部时,根据所述传输隧道协议的固定头部的长度和可选字段的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度;
第七获取子单元,用于当存在扩展头部时,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和所述扩展头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
第八获取子单元,用于根据所述传输网络IP分组数据和所述传输网络协议头部获取所述传输隧道协议头部,所述所述传输隧道协议头部是从所述传输网络IP分组数据中的所述传输网络协议头部之后开始到长度为所述传输隧道协议头部的长度对应的数据。
需要说明的是,对于本发明实施例提供的IP数据包解析单元1401,作为其中另一种可实现的方式,还包括(未在图14中示出):
第二分片重组子单元,用于当传输隧道协议承载的数据存在IP分片时,对所述传输隧道协议承载的数据进行IP分片重组,获取到完整的用户数据IP分组数据;
第九获取子单元,用于根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
第十获取子单元,用于根据所述用户数据IP分组数据头部的协议类型字段获取用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部和对应的字段,根据所述用户数据传输层协议头部和对应的字段获取用户数据传输层协议头部的长度;
第十一获取子单元,用于根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
第十二获取子单元,用于根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部,所述用户数据协议头部是从所述传输网络IP分组数据中的所述传输隧道协议头部之后开始到长度为所述用户数据协议头部的长度对应的数据。
需要说明的是,对于本发明实施例提供的压缩单元1402,作为其中一种可实现的方式,包括(未在图14中示出):
第三判断子单元,用于判断所述用户数据传输层协议是否为传输控制协议TCP;
第十三获取子单元,用于当所述用户数据传输层协议是TCP时,获取用户应用层数据,所述用户应用层数据是指TCP会话重组后的的数据负载Payload;
切片子单元,用于对所述用户应用层数据进行切片,得到多个的用户应用层数据片段;
摘要生成子单元,用于分别对切片后得到的每一个用户应用层数据片段生成一个数字摘要;
码本生成子单元,用于根据所述用户应用层数据和所述数字摘要生成码本,所述码本包括每一个数字摘要与每一个用户应用层数据片段、以及所述每一个数字摘要与每一个用户应用层数据片段的索引结构;
码本发送子单元,用于将所述码本发送到使用所述码本进行解码的解码端设备,实践中码本发送子单元为可选的组成部分;
第四判断子单元,用于根据所述码本判断所述多个的用户应用层数据片段中是否存在重复的用户应用层数据片段;
替换子单元,用于当所述多个的用户应用层数据片段中存在重复的用户应用层数据片段时,用所述重复的用户应用层数据片段对应的数字摘要代替所述重复的用户应用层数据片段;
编码子单元,用于将所述重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段进行编码,得到压缩后的用户数据协议负荷。
在本发明提供的另一实施例中,IP数据包解析单元对接收到的IP数据包进行解析,得到了传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据,然后压缩单元对用户应用层数据进行压缩,再用用户数据协议头部、传输隧道协议头部和传输网络协议头部对压缩后的用户数据协议负荷进行封装,得到IP压缩数据包,通过这优化方式可以实现对用户应用层数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
接下来介绍本发明实施例提供的另一种数据传输设备,请参阅图15所示,数据传输设备1500,包括:获取单元1501、第一解码单元1502、第二解码单元1503、压缩单元1504、封装单元1505和发送单元1506,其中,
所述获取单元1501,用于获取按照Iub接口协议解码后的媒体接入控制协议数据单元MAC PDU;
第一解码单元1502,用于对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC、分组数据汇聚协议PDCP进行解码,得到分组数据汇聚协议协议数据单元PDCP PDU;
第二解码单元1503,用于使用用户数据协议头部对PDCP PDU进行解码,得到解码数据;
压缩单元1504,用于对所述解码数据进行压缩,得到压缩数据;
封装单元1505,用于对所述压缩数据按照所述用户数据协议头部、PDCP、RLC、MAC进行封装,得到Uu封装数据;
发送单元1506,用于向核心网或基站发送所述Uu封装数据。
需要说明的是,对于本发明实施例提供的获取单元1501,作为其中一种可实现的方式,包括(未在图15中示出):
第一解码子单元,用于对接收到的Iub封装数据按照Iub接口协议进行解码,得到所述MAC PDU;
或,
接收子单元,用于从基站的协议处理模块或者无线网络控制器RNC的协议处理模块接收所述MAC PDU。
需要说明的是,对于本发明实施例提供的解码子单元,作为其中一种可实现的方式,包括(未在图15中示出):
分片重组模块,用于当所述Iub封装数据是存在IP分片的IP数据包时,对所述存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
第一解码模块,用于对所述传输网络IP分组数据按照网际协议IP、用户数据报协议UDP进行解码,得到UDP负载;
第二解码模块,用于对所述UDP负载按照成帧协议FP进行解码,得到所述MAC PDU。
需要说明的是,对于本发明实施例提供的第一解码单元1502,作为另一种可实现的方式,包括(未在图15中示出):
第二解码子单元,用于对所述MAC PDU进行MAC层解码,得到RLCPDU;
解码重组子单元,用于对所述RLC PDU进行RLC层解码之后,对解码后的RLC PDU进行重组,得到PDCP PDU。
需要说明的是,对于本发明实施例提供的第二解码单元1503,作为另一种可实现的方式,包括(未在图15中示出):
第三解码子单元,用于对所述PDCP PDU进行上层协议头部解压缩,得到用户数据IP分组数据,所述用户数据IP分组数据包括:用户数据IP协议头部、用户数据传输层协议头部;
第四解码子单元,用于对用户数据IP协议头部、用户数据传输层协议头部进行解码,得到所述解码数据。
需要说明的是,对于本发明实施例提供的数据传输设备1500,作为另一种可实现的方式,还可以包括(未在图15中示出):
第一解密单元,用于所述第二解码子单元对所述MAC PDU进行MAC层解码之后,当所述MAC PDU承载的数据被加密时,对所述MAC PDU承载的数据进行解密;
第二解密单元,用于所述解码重组子单元对所述RLC PDU进行RLC层解码之后,当所述RLC PDU承载的数据被加密时,对所述RLC PDU承载的数据进行解密。
需要说明的是,对于本发明实施例提供的压缩单元1502,作为其中一种可实现的方式,还可以包括(未在图15中示出):
切片子单元、摘要生成子单元、码本生成子单元、码本发送子单元、判断子单元、替换子单元和编码子单元,其中,
所述切片子单元,用于对所述解码数据进行切片,得到多个的解码数据片段;
所述摘要生成子单元,用于分别对切片后得到的每一个解码数据片段生成数字摘要;
所述码本生成子单元,用于生成码本,所述码本包括每一个数字摘要与每一个解码数据片段、以及所述每一个数字摘要与每一个解码数据片段的索引结构;
所述码本发送子单元,用于将所述码本发送到使用所述码本进行解码的解码端设备,在本实施例中该子单元为可选的部分;
所述判断子单元,用于根据所述码本判断是否存在重复的解码数据片段;
所述替换子单元,用于当存在重复的解码数据片段时,用重复的解码数据片段对应的数字摘要代替所述重复的解码数据片段;
所述编码子单元,用于将所述重复的解码数据片段对应的数字摘要和未重复的解码数据片段进行编码,得到压缩数据。
在本发明提供的实施例中,首先获取单元获取到Iub接口协议解码后的MAC PDU,然后第一解码单元对MAC PDU依次按照MAC、RLC、PDCP进行解码,第二解码单元使用用户数据协议头部对PDCP PDU进行解码,得到解码数据,压缩单元再对解码数据进行压缩,得到压缩数据,之后封装单元再依次对压缩数据按照用户数据协议头部、PDCP、RLC、MAC进行封装,得到Uu封装数据,通过这种优化方式可以实现对解码数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
接下来介绍本发明实施例提供的另一种数据传输设备,如图16所示,数据传输设备1600,包括:获取单元1601、解码单元1602、压缩单元1603、封装单元1604和发送单元1605,其中,
所述获取单元1601,用于获取按照Iub接口协议解码后的Uu接口媒体接入控制协议数据单元MAC PDU;
所述解码单元1602,用于对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC进行解码,得到解码数据;
所述压缩单元1603,用于对所述解码数据进行压缩,得到压缩数据;
所述封装单元1604,用于依次按照RLC、MAC对所述压缩数据进行封装,得到Uu封装数据;
所述发送单元1605,用于向核心网中或基站中的解码端设备发送所述Uu封装数据。
需要说明的是,对于本发明实施例提供的解码单元1601,作为其中一种可实现的方式,包括(未在图16中示出):
第一解码子单元,用于对所述MAC PDU进行MAC层解码,得到RLCPDU;
第二解码子单元,用于对所述RLC PDU进行RLC层解码,得到所述解码数据。
需要说明的是,对于本发明实施例提供的压缩单元1603,作为其中一种可实现的方式,还可以包括(未在图16中示出):切片子单元、摘要生成子单元、码本生成子单元、码本发送子单元、判断子单元、替换子单元和编码子单元,其中,
所述切片子单元,用于对所述解码数据进行切片,得到多个的解码数据片段;
所述摘要生成子单元,用于分别对切片后得到的每一个解码数据片段生成数字摘要;
所述码本生成子单元,用于生成码本,所述码本包括每一个数字摘要与每一个解码数据片段、以及所述每一个数字摘要与每一个解码数据片段的索引结构;
所述码本发送子单元,用于将所述码本发送到使用所述码本进行解码的解码端设备;
所述判断子单元,用于根据所述码本判断是否存在重复的解码数据片段;
所述替换子单元,用于当存在重复的解码数据片段时,用重复的解码数据片段对应的数字摘要代替所述重复的解码数据片段;
所述编码子单元,用于将所述重复的解码数据片段对应的数字摘要和未重复的解码数据片段进行编码,得到压缩数据。
在本发明提供的实施例中,获取单元首先获取到Iub接口协议解码后的MAC PDU,然后解码单元对MAC PDU依次按照MAC、RLC进行解码,得到解码数据,压缩单元再对解码数据进行压缩,得到压缩数据,之后封装单元再依次对压缩数据按照RLC、MAC进行封装,得到Uu封装数据,通过这种优化方式可以实现对解码数据的压缩,故可以提高Backhaul上传输的数据的压缩量以提高Backhaul的吞吐量。
以上实施例介绍了在一个完整的数据传输过程中,回程链路一端的数据传输设备用于实现对传输的数据的去重,接下来介绍位于回程链路另一端的数据传输设备用于实现对传输的数据的还原,请参阅图17所示,本发明实施例提供的一种数据传输设备1700,图17所示的数据传输设备实现的数据还原方法与前述图13所示的数据传输设备实现的数据压缩方法相对应,如图17所示,具体可以包括:接收单元1701、解码单元1702、解压缩单元1703、封装单元1704、发送单元1705,其中,
所述接收单元1701,用于接收网际协议IP压缩数据包;
所述解码单元1702,用于对IP压缩数据包按照传输网络协议头部进行解码,得到压缩后的传输网络协议负荷;
所述解压缩单元1703,用于对压缩后的传输网络协议负荷进行解压缩,依次得到传输隧道协议头部、用户数据协议头部和用户应用层数据;
所述封装单元1704,用于使用所述传输网络协议头部对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行封装,得到IP数据包;
所述发送单元1705,用于向核心网或基站发送所述IP数据包。
需要说明的是,对于本发明实施例提供的解压缩单元1703,作为其中一种可实现的方式,包括(未在图17中示出):
第一解压缩子单元,用于按照所述传输隧道协议头部、用户数据协议头部依次对所述压缩后的传输网络协议负荷进行头部解压缩,得到解压缩后的传输隧道协议头部、解压缩后的用户数据协议头部以及压缩后的用户应用层数据;
第二解压缩子单元,用于对所述压缩后的用户应用层数据进行解压缩,得到用户应用层数据。
需要说明的是,对于本发明实施例提供的解码单元1702,作为其中一种可实现的方式,包括(未在图17中示出):
解析子单元,用于对所述IP压缩数据包进行解析,获取传输网络IP协议头部的长度和对应的字段;
第一获取子单元,用于根据所述传输网络IP协议头部的长度和对应的字段获取传输网络传输层协议头部的长度;
第二获取子单元,用于根据所述传输网络IP协议头部的长度和所述传输网络传输层协议头部的长度获取所述传输网络协议头部的长度,所述传输网络协议头部的长度为所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
第三获取子单元,用于将从所述第一IP压缩数据包的开头到长度为所述传输网络协议头部的长度对应的数据截去,得到压缩后的传输网络协议负荷。
在本发明提供的实施例中,接收单元接收到IP压缩数据包之后,然后解码单元按照传输网络协议头部对IP压缩数据包进行解码,得到压缩后的传输网络协议负荷,解压缩单元再对压缩后的传输网络协议负荷进行解压缩,得到了传输隧道协议头部、用户数据协议头部和用户应用层数据,封装单元最后用传输网络协议头部对传输隧道协议头部、用户数据协议头部和用户应用层数据进行封装,得到IP数据包,通过如上实现方式,实现了对IP压缩数据包还原,得到了IP数据包,实现了对传输链路上传输的压缩数据包的还原,故可以提高Backhaul的吞吐量。
接下来介绍位于回程链路另一端的数据传输设备用于实现对传输的数据的还原,请参阅图18所示,本发明实施例提供的一种数据传输设备1800,图18所示的数据传输设备实现的数据还原方法与前述图14所示的数据传输设备实现的数据压缩方法相对应,如图18所示,具体可以包括:接收单元1801、解码单元1802、解压缩单元1803、封装单元1804、发送单元1805,其中,
所述接收单元1801,用于接收网际协议IP压缩数据包;
所述解码单元1802,用于对所述IP压缩数据包按照传输网络协议头部、传输隧道协议头部、用户数据协议头部进行解码,得到压缩后的用户数据协议负荷;
所述解压缩单元1803,用于对所述压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据;
所述封装单元1804,用于使用所述传输网络协议头部、所述传输隧道协议头部、所述用户数据协议头部对所述用户应用层数据进行封装,得到IP数据包;
所述发送单元1805,用于向核心网或基站发送所述IP数据包。
需要说明的是,对于本发明实施例提供的解压缩单元1803,作为其中一种可实现的方式,包括(未在图18中示出):
接收子单元,用于接收编码端设备发送的码本,所述码本包括每一个数字摘要与每一个用户应用层数据片段、以及所述每一个数字摘要与每一个用户应用层数据片段的索引结构;
判断子单元,用于根据所述码本判断所述压缩后的用户数据协议负荷中是否存在重复的用户应用层数据片段;
解码子单元,用于当存在重复的用户应用层数据片段时,将所述压缩后的用户数据协议负荷解码为重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段;
还原子单元,用于将解码得到的重复的用户应用层数据片段对应的数字摘要还原为重复的用户应用层数据片段;
组合子单元,用于将所述重复的用户应用层数据片段、所述未重复的用户应用层数据片段进行组合,得到用户应用层数据。
在本发明提供的实施例中,数据传输设备接收到IP压缩数据包之后,然后依次按照传输网络协议头部、传输隧道协议头部和用户数据协议头部进行解码,得到压缩后的用户数据协议负荷,然后对压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据,再依次按照用户数据协议头部、传输隧道协议头部和传输网络协议头部对所述用户应用层数据进行封装,得到IP数据包。通过如上实现方式,实现了对IP压缩数据包还原得到IP数据包,实现了对传输链路上传输的压缩数据包的还原,故可以提高Backhaul的吞吐量。
接下来介绍本发明实施例提供的另一种数据传输设备,请参阅图19所示,本发明实施例提供的一种数据传输设备1900,图19所示的数据传输设备实现的数据还原方法与前述图15所示的数据传输设备实现的数据压缩方法相对应,如图19所示,具体可以包括:获取单元1901、解码单元1902、解压缩单元1903、第一封装单元1904、第二封装单元1905、发送单元1906,其中,
所述获取单元1901,用于获取Uu封装数据;
所述解码单元1902,用于对所述Uu封装数据依次按照媒体接入控制协议MAC、无线链路控制协议RLC、分组数据汇聚协议PDCP和用户数据协议头部进行解码,得到压缩数据;
所述解压缩单元1903,用于对所述压缩数据进行解压缩,得到解码数据;
所述第一封装单元1904,用于对所述解码数据按照所述用户数据协议头部进行封装,得到分组数据汇聚协议协议数据单元PDCP PDU;
所述第二封装单元1905,用于依次按照PDCP、RLC、MAC对PDCP PDU进行封装,得到Uu接口媒体介入控制协议数据单元MAC PDU;
所述发送单元1906,用于向核心网或基站发送所述MAC PDU。
需要说明的是,对于本发明实施例提供的解压缩单元1903,作为其中一种可实现的方式,还可以包括(未在图19中示出):
接收子单元,用于接收编码端设备发送的码本,所述码本包括每一个数字摘要与每一个解码数据片段、以及所述每一个数字摘要与每一个解码数据片段的索引结构;
判断子单元,用于根据所述码本判断所述压缩数据中是否存在重复的解码数据片段;
解码子单元,用于当存在重复的解码数据片段时,将所述压缩数据解码为重复的解码数据片段对应的数字摘要、未重复的解码数据片段;
还原子单元,用于将解码得到的重复的解码数据片段对应的数字摘要还原为重复的解码数据片段;
组合子单元,用于将重复的解码数据片段、未重复的解码数据片段进行组合,得到解码数据。
在本发明提供的实施例中,数据传输设备首先获取到Uu封装数据,依次按照MAC、RLC、PDCP和用户数据协议头部进行解码,得到压缩数据,然后对压缩数据进行解压缩,得到解码数据,最后用用户数据协议头部、PDCP、RLC、MAC进行封装,得到了MAC PDU,由于将Uu封装数据还原为MACPDU,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
接下来介绍本发明实施例提供的另一种数据传输设备,请参阅图20所示,本发明实施例提供的一种数据传输设备2000,图20所示的数据传输设备实现的数据还原方法与前述图16所示的数据传输设备实现的数据压缩方法相对应,如图20所示,具体可以包括:获取单元2001、解码单元2002、解压缩单元2003、封装单元2004、发送单元2005,其中,
所述获取单元2001,用于获取Uu封装数据;
所述解码单元2002,用于对所述Uu封装数据依次按照媒体接入控制协议MAC、无线链路控制协议RLC进行解码,得到压缩数据;
所述解压缩单元2003,用于对所述压缩数据进行解压缩,得到解码数据;
所述封装单元2004,用于对所述解码数据按照所述RLC、所述MAC进行封装,得到Uu接口媒体介入控制协议数据单元MAC PDU;
所述发送单元2005,用于向核心网或基站发送所述MAC PDU。
需要说明的是,对于本发明实施例提供的解压缩单元2003,作为其中一种可实现的方式,还可以包括(未在图20中示出):
接收子单元,用于接收编码端设备发送的码本,所述码本包括每一个数字摘要与每一个解码数据片段、以及所述每一个数字摘要与每一个解码数据片段的索引结构;
判断子单元,用于根据所述码本判断所述压缩数据中是否存在重复的解码数据片段;
解码子单元,用于当存在重复的解码数据片段时,将所述压缩数据解码为重复的解码数据片段对应的数字摘要、未重复的解码数据片段;
还原子单元,用于将解码得到的重复的解码数据片段对应的数字摘要还原为重复的解码数据片段;
组合子单元,用于将重复的解码数据片段、未重复的解码数据片段进行组合,得到解码数据。
在本发明提供的实施例中,数据传输设备首先获取到封装数据,数据传输设备依次按照MAC、RLC进行解码,得到压缩数据,然后对压缩数据进行解压缩,得到解码数据,最后用RLC、MAC进行封装,得到了MAC PDU。由于将Uu封装数据还原为MAC PDU,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
接下来,请参阅本发明实施例提供的数据传输系统,如图21所示,数据传输系统2100包括:第一数据传输设备2101和第二数据传输设备2102,其中,
所述第一数据传输设备2101通过传输链路与所述第二数据传输设备2102连接;
所述第一数据传输设备2101如图13所述的数据传输设备1300、所述第二数据传输设备2102如图17所述的数据传输设备1700,所述第一数据传输设备2100为编码端设备,所述第一数据传输设备2101将压缩得到的IP压缩数据包通过所述传输链路传输到所述第二数据传输设备2102,所述第二数据传输设备2102为核心网中或基站中的解码端设备。
请参阅本发明实施例提供的另一种数据传输系统,数据传输系统包括:第一数据传输设备和第二数据传输设备,其中,
所述第一数据传输设备通过传输链路与所述第二数据传输设备连接;
所述第一数据传输设备如图14所述的数据传输设备1400、所述第二数据传输设备如图18所述的数据传输设备1800,所述第一数据传输设备为编码端设备,所述第一数据传输设备将压缩得到的IP压缩数据包通过所述传输链路传输到所述第二数据传输设备,所述第二数据传输设备为核心网中或基站中的解码端设备。
请参阅本发明实施例提供的另一种数据传输系统,数据传输系统包括:第一数据传输设备和第二数据传输设备,其中,
所述第一数据传输设备通过传输链路与所述第二数据传输设备连接;
所述第一数据传输设备如图15所述的数据传输设备1500、所述第二数据传输设备如图19所述的数据传输设备1900,所述第一数据传输设备为编码端设备,所述第一数据传输设备将Uu封装数据通过所述传输链路传输到所述第二数据传输设备,所述第二数据传输设备为核心网中或基站中的解码端设备。
请参阅本发明实施例提供的另一种数据传输系统,数据传输系统包括:第一数据传输设备和第二数据传输设备,其中,
所述第一数据传输设备通过传输链路与所述第二数据传输设备连接;
所述第一数据传输设备如图16所述的数据传输设备1600、所述第二数据传输设备如图20所述的数据传输设备2000,所述第一数据传输设备为编码端设备,所述第一数据传输设备将Uu封装数据通过所述传输链路传输到所述第二数据传输设备,所述第二数据传输设备为核心网中或基站中的解码端设备。
例如,前述图13的实施例所示的第一数据传输设备2101和如前述图17的实施例所示的第二数据传输设备2102,或,如前述图14的实施例所示的第一数据传输设备和如前述图18的实施例所示的第二数据传输设备。
具体的,所述第二数据传输设备与基站连接,所述第一数据传输设备和网关通用分组无线服务技术支持节点GGSN连接,和/或所述第二数据传输设备和服务通用分组无线服务技术支持节点SGSN连接;所述传输链路为Iub和/或Iu-PS接口链路,如图22所示中给出了传输链路为Iu-PS接口链路的情况。
具体的,第二数据传输设备与基站连接,所述第一数据传输设备和服务网关S-GW连接;所述传输链路为S1-u接口链路,如图23所示。
具体的,所述第二数据传输设备与基站连接或第二数据传输设备集成到基站内部,所述第一数据传输设备和无线网络控制器RNC连接或第一数据传输设备集成到RNC内部,所述RNC通过传输链路与所述第一数据传输设备连接,如图24所示。
具体的,第一数据传输设备和无线网络控制器RNC连接,或第一数据传输设备集成到RNC内部,第二数据传输设备集成到终端设备内部,终端设备与基站之间通过空口连接,如图25所示。
需要说明的是,本发明实施例中描述的传输链路上可以安装有交换机、路由器等节点设备,本发明实施例中描述的传输链路包括但不限于无线链路或有线链路,直连链路或经过交换机、路由器、或其他网元连接的链路。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明前述所示的方法实施例中的叙述,此处不再赘述。
在本发明提供的实施例中,第一数据传输设备对接收到的IP数据包进行解析,然后获取到IP压缩数据包,然后发送到第二数据传输设备,由第二数据传输设备进行还原,两种实现方式都可以对无线网络用户数据进行压缩,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
第一数据传输设备对获取Iub接口协议解码后的MAC PDU,然后获取到了Uu封装数据,然后发送给第二数据传输设备,由第二数据传输设备进行还原,两种实现方式都可以对无线网络用户数据进行压缩,故可以实现对Backhaul上传输的数据进行压缩以提高Backhaul的吞吐量。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种数据传输方法和相关装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (36)
1.一种数据传输方法,其特征在于,包括:
对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷;
使用所述传输网络协议头部对所述压缩后的传输网络协议负荷进行封装,得到IP压缩数据包;
向核心网或基站发送所述IP压缩数据包。
2.根据权利要求1所述的方法,其特征在于,所述传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部;
所述对接收到的网际协议IP数据包进行解析,得到传输网络协议头部,包括:
获取完整的传输网络IP分组数据;
根据所述传输网络IP分组数据的头部确定传输网络IP协议头部和所述传输网络IP协议头部的长度;
根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型确定传输网络传输层协议头部和传输网络传输层协议头部的长度;
根据所述传输网络IP协议头部和所述传输网络传输层协议头部获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部。
3.根据权利要求1所述的方法,其特征在于,所述对接收到的网际协议IP数据包进行解析,得到传输隧道协议头部,包括:
获得传输隧道协议的协议类型并根据所述传输隧道协议的协议类型计算传输隧道协议固定头部的长度;
根据所述传输隧道协议的协议类型判断所述传输隧道协议头部是否存在可选字段;
若不存在可选字段,根据所述传输隧道协议的固定头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
若存在可选字段,根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在扩展头部,若存在可选字段但不存在扩展头部,根据所述传输隧道协议的固定头部的长度和可选字段的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度,若存在可选字段并且存在扩展头部,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和扩展头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
根据所述传输网络IP分组数据和所述传输隧道协议头部的长度确定所述传输隧道协议头部。
4.根据权利要求1所述的方法,其特征在于,所述用户数据协议头部包括用户数据IP协议头部的长度、用户数据传输层协议头部,
所述对接收到的网际协议IP数据包进行解析,得到用户数据协议头部,包括:
获取到完整的用户数据IP分组数据;
根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
根据所述用户数据IP分组数据头部的协议类型字段确定用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部,根据所述用户数据传输层协议头部获取用户数据传输层协议头部的长度;
根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部。
5.根据权利要求1-4任一权利要求所述的方法,其特征在于,所述对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷,包括:
对所述传输隧道协议头部、所述用户数据协议头部进行头部压缩,得到头部压缩的第一结果;
对所述用户应用层数据进行压缩,得到压缩后的用户应用层数据;
对所述头部压缩的第一结果和所述压缩后的用户应用层数据进行编码,得到所述压缩后的传输网络协议负荷。
6.根据权利要求1或5所述的方法,其特征在于,所述使用所述传输网络协议头部对压缩后的传输网络协议负荷进行封装,得到IP压缩数据包,之后还包括:
判断所述IP压缩数据包的长度是否大于下层协议的最大传输单元的长度,若所述IP压缩数据包的长度大于下层协议的最大传输单元的长度,对所述IP压缩数据包进行IP分片,得到分片后的IP压缩数据包,所述下层协议包括直接用来传输IP压缩数据包的协议;
则所述向核心网或基站发送所述IP压缩数据包,包括:
向核心网或基站发送所述分片后的IP压缩数据包。
7.一种数据传输方法,其特征在于,包括:
对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
对所述用户应用层数据进行压缩,得到压缩后的用户数据协议负荷;
使用所述用户数据协议头部、所述传输隧道协议头部和所述传输网络协议头部对所述压缩后的用户数据协议负荷进行封装,得到IP压缩数据包;
向核心网或基站发送所述IP压缩数据包。
8.根据权利要求7所述的方法,其特征在于,所述传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部;
所述对接收到的网际协议IP数据包进行解析,得到传输网络协议头部,包括:
获取到完整的传输网络IP分组数据;
根据所述传输网络IP分组数据的头部获取传输网络IP协议头部和所述传输网络IP协议头部的长度;
根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型获取传输网络传输层协议头部和对应的字段,根据所述传输网络传输层协议头部和对应的字段获取传输网络传输层协议头部的长度;
根据所述传输网络IP协议头部和所述传输网络传输层协议头部获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部,所述传输网络协议头部是从所述传输网络IP分组数据的开头到长度为传输网络协议头部的长度对应的数据。
9.根据权利要求7所述的方法,其特征在于,所述对接收到的网际协议IP数据包进行解析,得到传输隧道协议头部,包括:
获得传输隧道协议的协议类型并根据所述传输隧道协议的协议类型计算传输隧道协议的固定头部的长度;
根据所述传输隧道协议的协议类型判断所述传输隧道协议头部是否存在可选字段;
若不存在可选字段,根据所述传输隧道协议的固定头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
若存在可选字段,根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在扩展头部,若存在可选字段但不存在扩展头部,根据所述传输隧道协议的固定头部的长度和可选字段的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度,若存在可选字段并且存在扩展头部,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和扩展头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
根据所述传输网络IP分组数据和所述传输隧道协议头部的长度获取所述传输隧道协议头部。
10.根据权利要求8所述的方法,其特征在于,所述用户数据协议头部包括用户数据IP协议头部的长度、用户数据传输层协议头部,
所述对接收到的网际协议IP数据包进行解析,得到用户数据协议头部,包括:
获取到完整的用户数据IP分组数据;
根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
根据所述用户数据IP分组数据头部的协议类型字段确定用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部,根据所述用户数据传输层协议头部获取用户数据传输层协议头部的长度;
根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部。
11.根据权利要求7-10任一权利要求所述的方法,其特征在于,所述对所述用户应用层数据进行压缩,得到压缩后的用户数据协议负荷,包括:
判断所述用户数据传输层协议是否为传输控制协议TCP,若是,获取用户应用层数据,所述用户应用层数据为TCP会话重组后的的数据负载Payload;
对所述用户应用层数据进行切片,得到多个的用户应用层数据片段;
分别对切片后得到的每一个用户应用层数据片段生成一个数字摘要;
根据所述用户应用层数据和所述数字摘要生成码本,所述码本包括每一个数字摘要与每一个用户应用层数据片段、以及所述每一个数字摘要与每一个用户应用层数据片段的索引结构;
根据所述码本判断所述多个的用户应用层数据片段中是否存在重复的用户应用层数据片段,若存在,用所述重复的用户应用层数据片段对应的数字摘要代替所述重复的用户应用层数据片段;
将所述重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段进行编码,得到压缩后的用户数据协议负荷。
12.一种数据传输方法,其特征在于,包括:
获取媒体接入控制协议数据单元MAC PDU;
对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC、分组数据汇聚协议PDCP进行解码,得到分组数据汇聚协议协议数据单元PDCP PDU;
使用用户数据协议头部对所述PDCP PDU进行解码,得到解码数据;
对所述解码数据进行压缩,得到压缩数据;
依次按照所述用户数据协议头部、PDCP、RLC、MAC对所述压缩数据进行封装,得到封装数据;
向核心网中或基站发送所述封装数据。
13.根据权利要求12所述的方法,其特征在于,所述获取媒体接入控制协议数据单元MAC PDU,包括:
接收Iub封装数据;
对所述接收到的Iub封装数据按照Iub接口协议进行解码,得到MACPDU;
或,
接收所述基站的协议处理模块或者无线网络控制器RNC的协议处理模块发送的MAC PDU。
14.根据权利要求13所述的方法,其特征在于,所述对接收到的Iub封装数据按照Iub接口协议进行解码,得到所述MAC PDU,包括:
当所述Iub封装数据是存在IP分片的IP数据包时,对所述存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
对所述传输网络IP分组数据按照网际协议IP、用户数据报协议UDP进行解码,得到UDP负载;
对所述UDP负载按照成帧协议FP进行解码,得到所述MAC PDU。
15.根据权利要求12所述的方法,其特征在于,所述对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC和分组数据汇聚协议PDCP解码,得到分组数据汇聚协议协议数据单元PDCP PDU,包括:
对所述MAC PDU进行MAC层解码,得到RLC PDU;
对所述RLC PDU进行RLC层解码,然后对解码后的RLC PDU进行PDCP解码重组,得到PDCP PDU。
16.根据权利要求15所述的方法,其特征在于,所述使用用户数据协议头部对所述PDCP PDU进行解码,得到解码数据,包括:
对所述PDCP PDU进行上层协议头部解压缩,得到用户数据IP分组数据,所述用户数据IP分组数据包括:用户数据IP协议头部、用户数据传输层协议头部;
对所述用户数据IP协议头部、用户数据传输层协议头部进行解码,得到所述解码数据。
17.根据权利要求12-16任一权利要求所述的方法,其特征在于,所述对所述解码数据进行压缩,得到压缩数据,包括:
对所述解码数据进行切片,得到多个的解码数据片段;
分别对切片后得到的每一个解码数据片段生成数字摘要;
根据所述解码数据片段和所述数字摘要生成码本,所述码本包括每一个数字摘要与每一个解码数据片段、以及所述每一个数字摘要与每一个解码数据片段的索引结构;
根据所述码本判断所述多个的解码数据片段中是否存在重复的解码数据片段,若存在,用重复的解码数据片段对应的数字摘要代替所述重复的解码数据片段;
将所述重复的解码数据片段对应的数字摘要和未重复的解码数据片段进行编码,得到压缩数据。
18.一种数据传输方法,其特征在于,包括:
获取媒体接入控制协议数据单元MAC PDU;
对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC进行解码,得到解码数据;
对所述解码数据进行压缩,得到压缩数据;
依次按照RLC、MAC对所述压缩数据进行封装,得到封装数据;
向核心网中或基站发送所述封装数据。
19.根据权利要求18所述的方法,其特征在于,所述对所述MAC PDU依次按照媒体接入控制协议MAC、无线链路控制协议RLC进行解码,得到解码数据,包括:
对所述MAC PDU进行MAC层解码,得到RLC PDU;
对所述RLC PDU进行RLC层解码,得到所述解码数据。
20.根据权利要求18-19任一权利要求所述的方法,其特征在于,所述对所述解码数据进行压缩,得到压缩数据,包括:
对所述解码数据进行切片,得到多个的解码数据片段;
分别对切片后得到的每一个解码数据片段生成数字摘要;
根据所述解码数据片段和所述数字摘要生成码本,所述码本包括每一个数字摘要与每一个解码数据片段、以及所述每一个数字摘要与每一个解码数据片段的索引结构;
根据所述码本判断所述多个的解码数据片段中是否存在重复的解码数据片段,若存在,用重复的解码数据片段对应的数字摘要代替所述重复的解码数据片段;
将所述重复的解码数据片段对应的数字摘要和未重复的解码数据片段进行编码,得到压缩数据。
21.一种数据传输方法,其特征在于,包括:
接收网际协议IP压缩数据包;
对所述IP压缩数据包进行传输网络协议头部解码,得到压缩后的传输网络协议负荷;
对所述压缩后的传输网络协议负荷进行解压缩,依次得到传输隧道协议头部、用户数据协议头部和用户应用层数据;
使用所述传输网络协议头部对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行封装,得到IP数据包;
向核心网或基站发送所述IP数据包。
22.根据权利要求21所述的方法,其特征在于,所述传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部,
所述对所述IP压缩数据包进行传输网络协议头部解码,得到压缩后的传输网络协议负荷,包括:
对所述IP压缩数据包进行解析,获取所述传输网络IP协议头部的长度和对应的字段;
根据所述传输网络IP协议头部的长度和对应的字段获取传输网络传输层协议头部的长度;
根据所述传输网络IP协议头部的长度和所述传输网络传输层协议头部的长度获取所述传输网络协议头部的长度,所述传输网络协议头部的长度为所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
将从所述IP压缩数据包截去所述传输网络协议头部后得到压缩后的传输网络协议负荷。
23.根据权利要求21或22任一权利要求所述的方法,其特征在于,所述对所述压缩后的传输网络协议负荷进行解压缩,依次得到传输隧道协议头部、用户数据协议头部和用户应用层数据,包括:
按照所述传输隧道协议头部、用户数据协议头部依次对所述压缩后的传输网络协议负荷进行头部解压缩,得到解压缩后的传输隧道协议头部、解压缩后的用户数据协议头部以及压缩后的用户应用层数据;
对所述压缩后的用户应用层数据进行解压缩,得到用户应用层数据。
24.一种数据传输方法,其特征在于,包括:
接收网际协议IP压缩数据包;
对所述IP压缩数据包进行传输网络协议头部、传输隧道协议头部、用户数据协议头部解码,得到压缩后的用户数据协议负荷;
对所述压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据;
用所述传输网络协议头部、所述传输隧道协议头部、所述用户数据协议头部对所述用户应用层数据进行封装,得到IP数据包;
向核心网或基站发送所述IP数据包。
25.根据权利要求24所述的方法,其特征在于,所述对所述压缩后的用户数据协议负荷进行解压缩,得到用户应用层数据,包括:
接收编码端设备发送的码本,所述码本包括每一个数字摘要与每一个用户应用层数据片段、以及所述每一个数字摘要与每一个用户应用层数据片段的索引结构;
根据所述码本判断所述压缩后的用户数据协议负荷中是否存在重复的用户应用层数据片段;
若存在,将所述压缩后的用户数据协议负荷解码为重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段;
将解码得到的重复的用户应用层数据片段对应的数字摘要还原为重复的用户应用层数据片段;
将所述重复的用户应用层数据片段、所述未重复的用户应用层数据片段进行组合,得到用户应用层数据。
26.一种数据传输设备,其特征在于,包括:IP数据包解析单元、压缩单元、封装单元和发送单元,其中,
所述IP数据包解析单元,用于对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
所述压缩单元,用于对所述传输隧道协议头部、所述用户数据协议头部和所述用户应用层数据进行压缩,得到压缩后的传输网络协议负荷;
所述封装单元,用于使用所述传输网络协议头部对所述压缩后的传输网络协议负荷进行封装,得到IP压缩数据包;
所述发送单元,用于向核心网中或基站发送所述IP压缩数据包。
27.根据权利要求26所述的数据传输设备,其特征在于,所述传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部,所述IP数据包解析单元包括:
第一分片重组子单元,用于若所述IP数据包存在IP分片时,对存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
第一获取子单元,用于根据传输网络IP分组数据的头部确定传输网络IP协议头部和传输网络IP协议头部的长度;
第二获取子单元,用于根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型确定传输网络传输层协议头部传输网络传输层协议头部的长度;
第三获取子单元,用于根据所述传输网络IP协议头部的长度和所述传输网络传输层协议头部的长度获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
第四获取子单元,用于根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部。
28.根据权利要求27所述的数据传输设备,其特征在于,所述IP数据包解析单元包括:
计算子单元,用于根据传输隧道协议的协议类型计算传输隧道协议的固定头部的长度;
第一判断子单元,用于根据所述传输隧道协议的协议类型判断所述传输隧道协议头部是否存在可选字段;
第五获取子单元,用于当不存在可选字段时,根据所述传输隧道协议的固定头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
第二判断子单元,用于当存在可选字段时,根据所述传输隧道协议的协议类型判断所述传输隧道协议头部是否存在扩展头部;
第六获取子单元,用于当不存在扩展头部时,根据所述传输隧道协议的固定头部的长度和可选字段的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度;
第七获取子单元,用于当存在扩展头部时,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和扩展头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
第八获取子单元,用于根据所述传输网络IP分组数据和所述传输隧道协议头部的长度获取所述传输隧道协议头部,所述所述传输隧道协议头部是从所述传输网络IP分组数据中的所述传输网络协议头部之后开始到长度为所述传输隧道协议头部的长度对应的数据。
29.根据权利要求27所述的数据传输设备,其特征在于,所述用户数据协议头部包括用户数据IP协议头部的长度、用户数据传输层协议头部,
所述IP数据包解析单元包括:
第二分片重组子单元,用于当传输隧道协议承载的数据存在IP分片时,对所述传输隧道协议承载的数据进行IP分片重组,获取到完整的用户数据IP分组数据;
第九获取子单元,用于根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
第十获取子单元,用于根据所述用户数据IP分组数据头部的协议类型字段获取用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部和对应的字段,根据所述用户数据传输层协议头部和对应的字段获取用户数据传输层协议头部的长度;
第十一获取子单元,用于根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
第十二获取子单元,用于根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部,所述用户数据协议头部是从所述传输网络IP分组数据中的所述传输隧道协议头部之后开始到长度为所述用户数据协议头部的长度对应的数据。
30.根据权利要求26-29任一权利要求所述的数据传输设备,其特征在于,所述压缩单元,包括:
第一压缩子单元,用于对所述传输隧道协议头部、所述用户数据协议头部进行头部压缩,得到头部压缩的第一结果;
第二压缩子单元,用于对所述用户应用层数据进行压缩,得到压缩后的用户应用层数据;
编码子单元,用于对所述头部压缩的第一结果和所述压缩后的用户应用层数据进行编码,得到所述压缩后的传输网络协议负荷。
31.根据权利要求26或30所述的数据传输设备,其特征在于,所述数据传输设备,还包括:
判断单元,用于判断所述IP压缩数据包的长度是否大于下层协议的最大传输单元的长度;
分片单元,用于当所述IP压缩数据包的长度大于下层协议的最大传输单元的长度,对所述IP压缩数据包进行IP分片,得到分片后的IP压缩数据包,所述下层协议包括直接用来传输IP压缩数据包的协议;
所述发送单元,具体用于向核心网或基站发送所述分片后的IP压缩数据包。
32.一种数据传输设备,其特征在于,包括:IP数据包解析单元、压缩单元、封装单元和发送单元,其中,
IP数据包解析单元,用于对接收到的网际协议IP数据包进行解析,得到传输网络协议头部、传输隧道协议头部、用户数据协议头部和用户应用层数据;
压缩单元,用于对所述用户应用层数据进行压缩,得到压缩后的用户数据协议负荷;
封装单元,用于使用所述用户数据协议头部、所述传输隧道协议头部和所述传输网络协议头部对所述压缩后的用户数据协议负荷进行封装,得到IP压缩数据包;
发送单元,用于向核心网中或基站发送所述IP压缩数据包。
33.根据权利要求32所述的数据传输设备,其特征在于,所述传输网络协议头部包括:传输网络IP协议头部、传输网络传输层协议头部;
所述IP数据包解析单元包括:
第一分片重组子单元,用于若所述IP数据包存在IP分片时,对存在IP分片的IP数据包进行IP分片重组,获取到完整的传输网络IP分组数据;
第一获取子单元,用于根据传输网络IP分组数据的头部获取传输网络IP协议头部和传输网络IP协议头部的长度;
第二获取子单元,用于根据所述传输网络IP分组数据的头部的协议类型字段判断传输网络传输层协议的协议类型,然后再根据所述传输网络传输层协议的协议类型获取传输网络传输层协议头部和对应的字段,根据所述传输网络传输层协议头部和对应的字段获取传输网络传输层协议头部的长度;
第三获取子单元,用于根据所述传输网络IP协议头部的长度和所述传输网络传输层协议头部的长度获取所述传输网络协议头部的长度,所述传输网络协议头部的长度是所述传输网络IP协议头部的长度加上所述传输网络传输层协议头部的长度;
第四获取子单元,用于根据所述传输网络IP分组数据和所述传输网络协议头部的长度获取所述传输网络协议头部,所述传输网络协议头部是从所述传输网络IP分组数据的开头到长度为所述传输网络协议头部的长度对应的数据。
34.根据权利要求33所述的数据传输设备,其特征在于,所述IP数据包解析单元包括:
计算子单元,用于获得传输隧道协议的协议类型并根据传输隧道协议的协议类型计算传输隧道协议的固定头部的长度;
第一判断子单元,用于根据所述传输隧道协议的协议类型段判断所述传输隧道协议头部是否存在可选字段;
第五获取子单元,用于当不存在可选字段时,根据所述传输隧道协议的固定头部的长度确定传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度;
第二判断子单元,用于当存在可选字段时,根据所述传输隧道协议的协议类型对应的字段判断所述传输隧道协议头部是否存在扩展头部;
第六获取子单元,用于当不存在扩展头部时,根据所述传输隧道协议的固定头部的长度和可选字段的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度;
第七获取子单元,用于当存在扩展头部时,根据所述传输隧道协议的固定头部的长度、所述可选字段的长度和扩展头部的长度获取传输隧道协议头部的长度,所述传输隧道协议头部的长度为所述传输隧道协议的固定头部的长度加上所述可选字段的长度再加上所述扩展头部的长度;
第八获取子单元,用于根据所述传输网络IP分组数据和所述传输隧道协议头部的长度获取所述传输隧道协议头部。
35.根据权利要求33所述的数据传输设备,其特征在于,所述用户数据协议头部包括用户数据IP协议头部的长度、用户数据传输层协议头部,
所述IP数据包解析单元包括:
第二分片重组子单元,用于当传输隧道协议承载的数据存在IP分片时,对所述传输隧道协议承载的数据进行IP分片重组,获取到完整的用户数据IP分组数据;
第九获取子单元,用于根据所述用户数据IP分组数据的头部获取用户数据IP协议头部的长度;
第十获取子单元,用于根据所述用户数据IP分组数据头部的协议类型字段获取用户数据传输层协议的协议类型,根据所述用户数据传输层协议的协议类型获取所述用户数据传输层协议头部,根据所述用户数据传输层协议头部获取用户数据传输层协议头部的长度;
第十一获取子单元,用于根据所述用户数据IP协议头部的长度和所述用户数据传输层协议头部的长度获取用户数据协议头部的长度,所述用户数据协议头部的长度是所述用户数据IP协议头部的长度加上所述用户数据传输层协议头部的长度;
第十二获取子单元,用于根据所述传输网络IP分组数据和所述用户数据协议头部的长度获取所述用户数据协议头部。
36.根据权利要求32-35任一权利要求所述的数据传输设备,其特征在于,所述压缩单元,包括:
第三判断子单元,用于判断所述用户数据传输层协议是否为传输控制协议TCP;
第十三获取子单元,用于当所述用户数据传输层协议为TCP时,获取用户应用层数据,所述用户应用层数据是指TCP会话重组后的的数据负载Payload;
切片子单元,用于对所述用户应用层数据进行切片,得到多个的用户应用层数据片段;
摘要生成子单元,用于分别对切片后得到的每一个用户应用层数据片段生成一个数字摘要;
码本生成子单元,用于根据所述用户应用层数据和所述数字摘要生成码本,所述码本包括每一个数字摘要与每一个用户应用层数据片段、以及所述每一个数字摘要与每一个用户应用层数据片段的索引结构;
第四判断子单元,用于根据所述码本判断所述多个的用户应用层数据片段中是否存在重复的用户应用层数据片段;
替换子单元,用于当所述多个的用户应用层数据片段中存在重复的用户应用层数据片段时,用所述重复的用户应用层数据片段对应的数字摘要代替所述重复的用户应用层数据片段;
编码子单元,用于将所述重复的用户应用层数据片段对应的数字摘要、未重复的用户应用层数据片段进行编码,得到压缩后的用户数据协议负荷。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310036734.0A CN103973645B (zh) | 2013-01-30 | 2013-01-30 | 一种数据传输方法和相关装置 |
PCT/CN2014/071415 WO2014117688A1 (zh) | 2013-01-30 | 2014-01-24 | 一种数据传输方法和相关装置 |
US14/812,878 US9900259B2 (en) | 2013-01-30 | 2015-07-29 | Data transmission method and related apparatus to compress data to be transmitted on a network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310036734.0A CN103973645B (zh) | 2013-01-30 | 2013-01-30 | 一种数据传输方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103973645A true CN103973645A (zh) | 2014-08-06 |
CN103973645B CN103973645B (zh) | 2017-11-24 |
Family
ID=51242695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310036734.0A Active CN103973645B (zh) | 2013-01-30 | 2013-01-30 | 一种数据传输方法和相关装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9900259B2 (zh) |
CN (1) | CN103973645B (zh) |
WO (1) | WO2014117688A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162656A (zh) * | 2015-08-27 | 2015-12-16 | 中国电子科技集团公司第二十九研究所 | 一种基于局域网的ntp服务器检测方法 |
CN105739480A (zh) * | 2016-01-26 | 2016-07-06 | 深圳市元征科技股份有限公司 | 数据压缩传输方法及装置 |
WO2017121214A1 (zh) * | 2016-01-16 | 2017-07-20 | 华为技术有限公司 | 一种无线通信的回程传输方法、控制器、基站、网关 |
CN109981529A (zh) * | 2017-12-27 | 2019-07-05 | 西门子(中国)有限公司 | 报文获取方法、装置、系统及计算机存储介质 |
CN111770117A (zh) * | 2020-09-01 | 2020-10-13 | 北京东方通软件有限公司 | 一种网络拼包的方法及装置 |
CN112968844A (zh) * | 2021-02-05 | 2021-06-15 | 武汉绿色网络信息服务有限责任公司 | 一种发送分片报文的方法与装置 |
CN113329442A (zh) * | 2021-04-20 | 2021-08-31 | 北京连山科技股份有限公司 | 一种通用的多链路载荷压缩与解压缩方法和系统 |
CN113641520A (zh) * | 2021-08-20 | 2021-11-12 | 北京百度网讯科技有限公司 | 数据处理方法、系统、设备以及存储介质 |
CN113709510A (zh) * | 2021-08-06 | 2021-11-26 | 联想(北京)有限公司 | 高速率数据实时传输方法及装置、设备、存储介质 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106131164B (zh) * | 2016-07-01 | 2018-07-03 | 北京百度网讯科技有限公司 | 在云端进行协议解析的数据处理方法和装置 |
CN111385257B (zh) * | 2018-12-28 | 2022-03-15 | 致茂电子(苏州)有限公司 | 网络封包处理方法及其装置 |
TWI672023B (zh) * | 2018-12-28 | 2019-09-11 | 致茂電子股份有限公司 | 網路封包處理方法及其裝置 |
US11139981B2 (en) | 2019-03-29 | 2021-10-05 | Intel Corporation | Message authentication code (MAC) based compression and decompression |
US11720159B2 (en) * | 2019-07-01 | 2023-08-08 | Texas Instruments Incorporated | Unified bus architecture for a voltage regulator |
CN113364790B (zh) * | 2021-06-12 | 2022-10-18 | 四川虹美智能科技有限公司 | 数据传输方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7263089B1 (en) * | 1999-12-04 | 2007-08-28 | Robert Bosch Gmbh | Method for operating a mobile radio network |
WO2008027775A2 (en) * | 2006-08-29 | 2008-03-06 | Motorola, Inc. | Method, apparatus and communication network for the transmission of data |
US20080267217A1 (en) * | 2007-04-26 | 2008-10-30 | Microsoft Corporation | Compression of data packets while maintaining endpoint-to-endpoint authentication |
CN102075287A (zh) * | 2010-11-22 | 2011-05-25 | 浪潮(北京)电子信息产业有限公司 | 一种数据处理方法及装置 |
CN102098725A (zh) * | 2009-12-15 | 2011-06-15 | 中兴通讯股份有限公司 | 一种服务网关与中继终端间传输数据的系统及方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6920125B1 (en) | 2000-10-27 | 2005-07-19 | Nortel Network Limited | IP adaptation layer on backhaul connection of cellular network |
EP1956762B1 (en) * | 2005-12-03 | 2014-08-27 | Huawei Technologies Co., Ltd. | System and method for implement the interconnection of the dsl network and the wireless communication network |
EP2309679B1 (en) * | 2005-12-31 | 2014-05-07 | Huawei Technologies Co., Ltd. | A method and a system for optimizing the radio network layer to implement the network interconnection, and a method for interconnection between the radio network and the wired network |
US8855138B2 (en) * | 2008-08-25 | 2014-10-07 | Qualcomm Incorporated | Relay architecture framework |
JP5479571B2 (ja) * | 2009-03-20 | 2014-04-23 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 高度lteにおけるセルフバックホール処理及びリレー処理用の無線ベアラ識別 |
CN101998511B (zh) * | 2009-08-26 | 2013-04-24 | 华为技术有限公司 | 网络中继场景下的头压缩方法及装置 |
CN102143527B (zh) * | 2010-02-03 | 2013-09-11 | 华为技术有限公司 | 嵌套协议包头的压缩方法及装置 |
CN102065098A (zh) | 2010-12-31 | 2011-05-18 | 网宿科技股份有限公司 | 网络节点之间数据同步的方法和系统 |
-
2013
- 2013-01-30 CN CN201310036734.0A patent/CN103973645B/zh active Active
-
2014
- 2014-01-24 WO PCT/CN2014/071415 patent/WO2014117688A1/zh active Application Filing
-
2015
- 2015-07-29 US US14/812,878 patent/US9900259B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7263089B1 (en) * | 1999-12-04 | 2007-08-28 | Robert Bosch Gmbh | Method for operating a mobile radio network |
WO2008027775A2 (en) * | 2006-08-29 | 2008-03-06 | Motorola, Inc. | Method, apparatus and communication network for the transmission of data |
US20080267217A1 (en) * | 2007-04-26 | 2008-10-30 | Microsoft Corporation | Compression of data packets while maintaining endpoint-to-endpoint authentication |
CN102098725A (zh) * | 2009-12-15 | 2011-06-15 | 中兴通讯股份有限公司 | 一种服务网关与中继终端间传输数据的系统及方法 |
CN102075287A (zh) * | 2010-11-22 | 2011-05-25 | 浪潮(北京)电子信息产业有限公司 | 一种数据处理方法及装置 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162656B (zh) * | 2015-08-27 | 2018-08-21 | 中国电子科技集团公司第二十九研究所 | 一种基于局域网的ntp服务器检测方法 |
CN105162656A (zh) * | 2015-08-27 | 2015-12-16 | 中国电子科技集团公司第二十九研究所 | 一种基于局域网的ntp服务器检测方法 |
WO2017121214A1 (zh) * | 2016-01-16 | 2017-07-20 | 华为技术有限公司 | 一种无线通信的回程传输方法、控制器、基站、网关 |
US10797775B2 (en) | 2016-01-16 | 2020-10-06 | Huawei Technologies Co., Ltd. | Backhaul transmission method for wireless communication, controller, base station, and gateway |
CN105739480A (zh) * | 2016-01-26 | 2016-07-06 | 深圳市元征科技股份有限公司 | 数据压缩传输方法及装置 |
CN105739480B (zh) * | 2016-01-26 | 2019-04-19 | 深圳市元征科技股份有限公司 | 数据压缩传输方法及装置 |
CN109981529B (zh) * | 2017-12-27 | 2021-11-12 | 西门子(中国)有限公司 | 报文获取方法、装置、系统及计算机存储介质 |
CN109981529A (zh) * | 2017-12-27 | 2019-07-05 | 西门子(中国)有限公司 | 报文获取方法、装置、系统及计算机存储介质 |
CN111770117A (zh) * | 2020-09-01 | 2020-10-13 | 北京东方通软件有限公司 | 一种网络拼包的方法及装置 |
CN112968844A (zh) * | 2021-02-05 | 2021-06-15 | 武汉绿色网络信息服务有限责任公司 | 一种发送分片报文的方法与装置 |
CN112968844B (zh) * | 2021-02-05 | 2022-05-31 | 武汉绿色网络信息服务有限责任公司 | 一种发送分片报文的方法与装置 |
CN113329442A (zh) * | 2021-04-20 | 2021-08-31 | 北京连山科技股份有限公司 | 一种通用的多链路载荷压缩与解压缩方法和系统 |
CN113329442B (zh) * | 2021-04-20 | 2022-02-11 | 北京连山科技股份有限公司 | 一种通用的多链路载荷压缩与解压缩方法和系统 |
CN113709510A (zh) * | 2021-08-06 | 2021-11-26 | 联想(北京)有限公司 | 高速率数据实时传输方法及装置、设备、存储介质 |
CN113641520A (zh) * | 2021-08-20 | 2021-11-12 | 北京百度网讯科技有限公司 | 数据处理方法、系统、设备以及存储介质 |
CN113641520B (zh) * | 2021-08-20 | 2024-04-05 | 北京百度网讯科技有限公司 | 数据处理方法、系统、设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103973645B (zh) | 2017-11-24 |
WO2014117688A1 (zh) | 2014-08-07 |
US20150334033A1 (en) | 2015-11-19 |
US9900259B2 (en) | 2018-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103973645A (zh) | 一种数据传输方法和相关装置 | |
RU2424627C2 (ru) | Динамическое надежное уплотнение заголовка | |
KR100913900B1 (ko) | 이동통신 시스템에서 미리 정의된 길이 지시자를 이용해서 패킷 데이터를 송수신하는 방법 및 장치 | |
FI107000B (fi) | Otsikon pakkaaminen reaaliaikaisissa palveluissa | |
US7733867B2 (en) | Header compression for real time internet applications | |
JP6523249B2 (ja) | パケットヘッダを圧縮する方法及び装置 | |
EP1786170B1 (en) | Header compression in voice packets | |
US8189586B2 (en) | Plural telecommunications functions having sharing transaction(s) | |
US20070242703A1 (en) | Binding/combining of plural telecommunications functions | |
CN101707616B (zh) | 一种用户数据报协议数据包压缩、解压缩的方法及装置 | |
KR101835340B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
CN102118792B (zh) | 一种传输数据包的方法及装置 | |
KR20060054662A (ko) | 광대역 무선 통신 시스템에서 헤더 압축 장치 및 방법 | |
CN101453463B (zh) | 一种移动多媒体广播系统的数据包封装、发送和接收方法 | |
WO2015168840A1 (zh) | 一种数据处理方法及装置 | |
WO2009033371A1 (fr) | Système et appareil de remplissage d'unité de données de protocole (pdu) et son procédé de traitement correspondant | |
CN102118791B (zh) | 一种传输数据包的方法及装置 | |
CN101690072A (zh) | 一种健壮头标压缩中窗基最低有效位解码的修复方法 | |
CN101421973B (zh) | 具有共享事务处理的多个远程通信功能的方法和装置 | |
JP4975806B2 (ja) | 共有トランザクション(群)を有する複数通信機能 | |
West et al. | IP header and signalling compression for 3G systems | |
Vanjire et al. | Nested Tunnel header compression Protocol in wireless network with. NET technology | |
Levy et al. | General all-Layers combined with Efficient WLAN MAC Layer Headers Compression | |
Shivare et al. | Performance Evaluation of Robust Header Compression over Mobile WiMAX | |
KR20100038084A (ko) | 비대칭 양방향 패킷데이터 송수신 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |