[发明专利]基于数据包IP头压缩技术实现校验和计算的方法有效
申请号: | 200910048937.5 | 申请日: | 2009-04-07 |
公开(公告)号: | CN101860904A | 公开(公告)日: | 2010-10-13 |
发明(设计)人: | 庄云腾 | 申请(专利权)人: | 上海摩波彼克半导体有限公司 |
主分类号: | H04W28/06 | 分类号: | H04W28/06 |
代理公司: | 上海智信专利代理有限公司 31002 | 代理人: | 王洁;郑暄 |
地址: | 201204 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 数据包 ip 压缩 技术 实现 校验 计算 方法 | ||
技术领域
本发明涉及数据通信领域,特别涉及数据包的IP头压缩技术领域,具体是指一种基于数据包IP头压缩技术实现校验和计算的方法。
背景技术
首先对IP头压缩算法进行介绍如下:
对于需要利用IP分组包在无线网上传送的业务而言,为了得到较好的频谱效率,需要利用一些头压缩算法。请参阅图1所示,对于IP/UDP/RTP组合的信息的大小至少为40字节,而IP语音业务的净载荷可能只有大约20字节甚至更少。RFC2507是对IP头压缩算法的描述,典型的UDP包头或TCP报文头可以被压缩至4-7个字节大小,这其中还包括了2个字节的UDP校验和或TCP校验和。再如,在没有UDP检验和的情况下,RFC2508对40字节的IPv4/UDP/RTP头能压缩到2个字节。那么,为什么能对IP头进行压缩呢?因为IP头中的很多字段是固定不变或者是很少变化的,这些字段可以不发送或者少发送,从而达到压缩的效果。请参阅图2所示,其为头压缩算法工作的示意图。
其中包括压缩器上下文(Compressor Context)和解压器上下文(Decompressor Context)。它们包含了比较完整的IP头信息,压缩器利用压缩器上下文压缩IP包,解压器上下文利用解压器上下文把压缩包还原成IP包。它们分别是用于压缩和解压的参考。拥有相似上下文的IP数据包称为一个流。
关于IP头压缩的具体技术细节,可以参阅以下技术文献:
(1)RFC2507——IP Header Compression,IP头压缩协议。
(2)RFC2508——Compressing IP/UDP/RTP Headers for Low-Speed Serial Links,低速串行链路上的IP/UDP/RTP头压缩协议。
对于IP首部检验和介绍如下
IP首部格式请参阅图3所示。其中:
●Version——版本,占4比特,指IP协议的版本,目前广泛使用的IP协议版本号为4(即IPv4)。
●IHL——首部长度,占4比特,表示IP头首部的长度,单位是4个字节。
●TOS——服务类型,占8比特,表示该IP数据包所需要的服务质量。
●Total Length——总长度:占16比特,表示该IP数据包的总长度,单位是一个字节。
●Identification——标识,占16比特,一个计数器,用来产生数据包的标识。
●Flags——标志,占3比特,用于指示该数据包能否分片等。Fragment Offset:片偏移,占13比特,指示该分片在原IP包中的位置。
●TTL——生存时间,占8比特,表示数据包在网络中可通过的路由器数的最大值。
●Protocol——协议,占8比特,表示IP头所封装的数据包所使用的协议,如图1中IP头中的协议字段值为17,表示IP头封装的是UDP包。
●Header Checksum——首部校验和,占16比特,校验和的范围是IP首部。
●Source IP Address——源IP地址,占32比特。
●Destination IP Address——目的IP地址,占32比特。
●Option和Padding——选项和填充,长度可变,用于增强IP头的功能,但事实上很少被使用。
IP首部校验和不采用CRC校验码而是通过一种简单的计算方法:在数据发送端先将IP首部划分成许多16比特的序列,将首部校验和字段(Header Checksum)置零。用反码算术运算将所有16比特字相加,得到的和写入检验和字段。在接收端,将首部的所有16比特字再使用反码算术运算相加一次,将结果取反码。若首部未发送变化,则结果必为零。否则,认为此首部在传输过程中出差错。
下面介绍UDP、TCP的校验和:
UDP计算校验和的方法和计算IP数据报首部检验和的方法相似,但是UDP的检验和是将伪首部、UDP首部和UDP数据部分一起计算。伪首部包括源IP地址,目的IP地址,一个全零字节,IP协议字段(17)和UDP长度字段共12个字节。在计算检验和之前,要把UDP检验和字段置为全零。
TCP检验和的产生与UDP检验和是一样的,只是把伪首部的IP协议字段改为6(TCP协议号),将UDP长度改为TCP长度。请参阅图4所示,其中是UDP首部的结构。其中:
●UDP Source Port——UDP源端口号,占16比特,用于标识发送该UDP数据包应用程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海摩波彼克半导体有限公司,未经上海摩波彼克半导体有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910048937.5/2.html,转载请声明来源钻瓜专利网。