• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

PPP协议涉及到的几个典型压缩技术

发布: 2007-6-23 14:09 | 作者:   | 来源:   | 查看: 28次 | 进入软件测试论坛讨论

领测软件测试网

   
  PPP是目前使用最为广泛的链路层协议,本文将集中介绍几个典型的和PPP有关的压缩算法. 为了方便描述,我们首先介绍一下PPP的帧结构:
  

PPP协议涉及到的几个典型压缩技术


  FLAG总是01111110,被用于作为帧之间的分隔符.
  
  Address总是为11111111.
  
  Control总是为00000011.
  
  Protocol指示ppp所承载的上层协议.
  
  INFORMATION是指PPP所承载的数据部分.
  
  FCS是校验和.
  
  下面我们进入我们的主题,PPP压缩。和PPP相关的压缩分为两类,一类是PPP帧头结构的压缩,一类是PPP所承载上层协议报文的压缩。
  
  PPP帧头结构的压缩主要是指PPP帧头部Address、Control和协议字段的压缩,关于这些压缩的协商发生在PPP Establish阶段。
  
  由于PPP头部的Address字段,Control字段都是固定不变的,所以为了节省带宽就可以压缩这两个字段。PPP会在Establish阶段用Address-and-Control-Field-Compression选项协商是否压缩这两个字段。
  
  由于典型的承载在PPP之上的协议的协议号都小于256,所以用于只是协议号的16位二进制数就可以压缩为8位。PPP也是在LCP阶段协商是否进行协议字段的压缩。
  
  对于PPP所承载上层协议报文的压缩,由于是对上层报文的压缩,所以对于压缩技术的协商必然发生在网络阶段,也就是Establish阶段、Authenticate阶段之后。对于PPP上层报文而言,我们这里只讨论TCP/IP报文。对于TCP/IP报文而言,又有两种压缩的方法:一是TCP/IP报文首部的压缩,一是TCP/IP整个报文或者说PPP数据部分的压缩。
  
  对于首部压缩而言,目前标准的压缩算法是Van Jacobson TCP/IP头部压缩算法,这个算法使用与否的协商发生在IPCP协商阶段,是作为IPCP的一个参数: IP-Compression-Protocol协商的。Van Jacobson TCP/IP头部压缩算法的基本想法就是维护一定的连接信息,这样双方交互的包文就只需要标识其属于那个连接而不需要携带完整头部了。这个算法可以将40个字节的TCP和IP头部压缩成3个字节,这样显然特别是对比较小的报文(如VOIP报文),效率是惊人的。
  
  对于PPP数据部分的压缩技术的协商,由于数据报文的压缩技术种类比较多,而且事实上不基于任何网络协议,所以IETF特别规范了一个专门的协议:CCP(PPP Compression Control Protocol)用于协商具体协商具体压缩算法、协商压缩算法的具体参数的方法。目前,最常用的PPP压缩算法是Stac压缩算法,它利用压缩效率非常高的LZS算法对报文进行压缩。
  
  以上只是简要介绍了几种常见的和PPP相关的压缩算法,事实上,现在有很多有关PPP压缩的标准,您可以参考我们在参考文献中列出的文档获得更加全面的了解。
  
  下面描述一下华为3ComQuidway路由器上的关于压缩的实现。
  
  Address、Control和Protocol字段的协商是自动完成的,不需要配置。
  
  可以用如下命令配置上层协议头部压缩:
  
  配置TCP头部压缩:ip tcp header-compression
  
  配置PPP Stac压缩:ppp compress stac
  
  另外,华为3ComQuidway路由器上也在封装了FR、PPP、HDLC的串口上实现了基于RFC2057的IPHC压缩技术。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网