ROHC 学习记录

目前rohc-lib.org  1.7.0 版本的局限性

1./* R-mode is not supported yet */

2. 


1. 最开始时rfc3095 定义了ROHC框架和几个协议,后来人们反应太复杂难理解有错误,后来就补充了各种独立的协议。比如

4815 (修正3095,两个结合着看)

 This document
   provides corrections, additions, and clarifications to RFC 3095; this
   document thus updates RFC 3095.  In addition, other clarifications
   related to RFC 3241 (ROHC over PPP), RFC 3843 (ROHC IP profile) and
   RFC 4109 (ROHC UDP-Lite profiles) are also provided.

3759   -->

This document aims at clarifying
   these aspects of ROHC, discussing terms such as ROHC instances, ROHC
   channels, ROHC feedback, and ROHC contexts, and how these terms
   relate to other terms, like network elements and IP interfaces,
   commonly used, for example, when addressing MIB issues.

5795

 this document explicitly defines the ROHC framework
   and the profile for uncompressed separately.  More specifically, the
   definition of the framework does not modify or update the definition
   of the framework specified by RFC 3095.
3843, 

This document defines a
   ROHC compression profile for IP, similar to the IP/UDP profile
   defined by RFC 3095, but simplified to exclude UDP, and enhanced to
   compress IP header chains of arbitrary length.

4996

  This document specifies a ROHC (Robust Header Compression) profile
   for compression of TCP/IP packets.  The profile, called ROHC-TCP,
   provides efficient and robust compression of TCP headers, including
   frequently used TCP options such as SACK (Selective Acknowledgments)
   and Timestamps.
   ROHC-TCP works well when used over links with significant error rates
   and long round-trip times.  For many bandwidth-limited links where
   header compression is essential, such characteristics are common.
UDP 的压缩就在整体文档里3095和4815

下面就说3095 的协议理解和记录

4.3  Compression and decompression states

Both machines start in the  lowest compression state and transit gradually to higher states.

   Transitions need not be synchronized between the two machines.  In
   normal operation it is only the compressor that temporarily transits
   back to lower states.  The decompressor will transit back only when
   context damage is detected.

4.3.1 compressor states 

   +----------+                +----------+                +----------+
   | IR State |   <-------->   | FO State |   <-------->   | SO State |
   +----------+                +----------+                +----------+

4.3.1.1

Initialization and Refresh (IR) State
压缩端发了原始包并携带了 additional information。 压缩端保持IR状态直到很确定解压缩端能收到static information correctly.   

FO first order 的目的就是发送一些没规律的,变化的字段。  SO second order 应用场景就是uniform pattern。就是发送的数据包头全部都是一样的模式,根据Sn的递增规律能完全推断整个header的各个字段。

4.3.2. Decompressor states

   +--------------+         +----------------+         +--------------+
   |  No Context  |  <--->  | Static Context |  <--->  | Full Context |
   +--------------+         +----------------+         +--------------+

4.4 Modes of operation

The ROHC scheme has three modes of operation, called Unidirectional,
   Bidirectional Optimistic, and Bidirectional Reliable mode.

U  mode

一开始都是从U mode开始,除非收到decompressor replied a feedback indicating that a mode transtion is desired.




你可能感兴趣的:(IP,网络)