Question about IP-ID offset field in UO-1, R-1 and UOR-2 packets in UDP profile

Ang Way Chuang <[email protected]>
Newsgroups gmane.ietf.rohc
Message-ID <[email protected]>
Hi all,

	According to section 5.11.4 of RFC 3095, IP-ID2 is for outer IP-ID 
field. I wonder if IP-ID in extension 0 and extension 1 can be used to 
contain IP-ID offset of outer IPv4 header for cases where IP packet that 
contains only one IPv4 header since there is no ambiguity in the 
interpretation.

	Likewise, I think IP-ID field can contain IP-ID for either inner IPv4 
or outer IPv4 header as long as it does lead to ambiguous situation.

	For example, for R-1 packet:

Diagram 1: R-1
   0   1   2   3   4   5   6   7
+---+---+---+---+---+---+---+---+
| 1   0 | SN 			|
+===+===+===+===+===+===+===+===+
| X | IP-ID 			|
+---+---+---+---+---+---+---+---+


Diagram 2: Extension 3
       0     1     2     3     4     5     6     7
    +-----+-----+-----+-----+-----+-----+-----+-----+
    |  1     1  |  S  |	 Mode    |  I  | ip  | ip2 |            (FLAGS)
    +-----+-----+-----+-----+-----+-----+-----+-----+
    |            Inner IP header flags        | 0   |  if ip = 1
     ..... ..... ..... ..... ..... ..... ..... .....
    |            Outer IP header flags              |  if ip2 = 1
     ..... ..... ..... ..... ..... ..... ..... .....
    |                      SN                       |  if S = 1
     ..... ..... ..... ..... ..... ..... ..... .....
    /       TS (encoded as in section 4.5.6)        /  1-4 octets,
     ..... ..... ..... ..... ..... ..... ..... .....   if R-TS = 1
    |                                               |
    /            Inner IP header fields             /  variable,
    |                                               |  if ip = 1
     ..... ..... ..... ..... ..... ..... ..... .....
    |                     IP-ID                     |  2 octets, if I = 1
     ..... ..... ..... ..... ..... ..... ..... .....
    |                                               |
    /            Outer IP header fields             /  variable,
    |                                               |  if ip2 = 1
     ..... ..... ..... ..... ..... ..... ..... .....
    |			IP-ID2			   |  2 octets if I2 = 1
     ..... ..... ..... ..... ..... ..... ..... .....


Say, we need to compress such packet
  ---------------------
|IPv4|IPv6|UDP|Payload|
  ---------------------

1) Then it make sense to compress the IP-ID within IP-ID of diagram 1 
instead of placing IP-ID2 of diagram 2. Is this interpretation correct?

2) If IP-ID offset takes more than 7 bits, IP-ID should be placed into 
IP-ID2 field of diagram. Am I right?

3) Since the IP-ID2 and IP-ID in Extension 3 take up 2 bytes, I assume 
IP-ID is sent as, not the IP-ID offset LSB encoding. Is this true?

Say, we need to compress such packet:
  ----------------
|IPv4|UDP|Payload|
  -----------------

4) Since we only have one IP header for this packet. I assume that it 
doesn't make sense to differentiate between inner and outer IP. 
Therefore, it is logical to place IP-ID into IP-ID field of extension 3
if IP-ID offset encoding takes more than 7 bits. Right?


Thank you for reading this lengthy email (and reply too :) )


Regards,
Ang Way Chuang
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.