Re: ROHC-FN tutorial: scaled_seq_no compression formula

Raffles <[email protected]> Thu, 03 Sep 2009 21:37:39 +0100
Newsgroups gmane.ietf.rohc
Message-ID <[email protected]>
Hi Klaus,

Thanks for the post. I think you have probably already seen the 
following line in the example:

         ENFORCE(sequence_no.UVALUE
                   == (scaled_seq_no.UVALUE * 3) % 16);

Which is to say, a similar function to the one which you have described, 
but expressed in the inverse form. The bindings created by this are two 
way. That is, this single line defines both compression and 
decompression. One of the key principles of the FN is that all bindings 
are two way, so that you only define the profile once for both 
compression and decompression. You specify "what" rather than "how". See 
section 3.2.1 for more details: 
http://tools.ietf.org/html/rfc4997#section-3.2.1

Thanks for taking the time to read the RFC and send in a post.

If you have any questions feel free to ask.

Regards

Raffles


Klaus Warnke wrote:
> Hello RoHC'ers 2.0,
>
> the example B.9. in the RFC 4997 ROHC-FN introduces a scaled_seq_no,
> but provides no formula for compression. 
>
> Here is my compression formula, maybe it is helpful for other.
>
> scaled_seq_no.UVALUE = (sequence_no.UVALUE + (m*16)) / 3
>
> where m is:
>
> m = 0 if (U%3 == 0)
> m = 2 if (U%3 == 1)
> m = 1 if (U%3 == 2)
>
> Checked with oo calc:
>
> U	U%3	m	M*16	U+m*16	C=(U+m*16)/3	C*3	U=(C*3)%16
> -       ---     -       ----    ------  ------------    ---     ----------
> 0	0	0	0	0	0	        0	0
> 1	1	2	32	33	11	        33	1
> 2	2	1	16	18	6	        18	2
> 3	0	0	0	3	1	        3	3
> 4	1	2	32	36	12	        36	4
> 5	2	1	16	21	7	        21	5
> 6	0	0	0	6	2	        6	6
> 7	1	2	32	39	13	        39	7
> 8	2	1	16	24	8	        24	8
> 9	0	0	0	9	3	        9	9
> 10	1	2	32	42	14	        42	10
> 11	2	1	16	27	9	        27	11
> 12	0	0	0	12	4	        12	12
> 13	1	2	32	45	15	        45	13
> 14	2	1	16	30	10	        30	14
> 15	0	0	0	15	5	        15	15
>
> br
> Klaus
> _______________________________________________
> Rohc mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/rohc
>
>   

-- 
Raffles (Robert Finking)
m: 0789 463 9887
e: [email protected]
w: gluft.com

         O                  O
 OOOOOO  O  O    O OOOOOO OOOOO
 O    O  O  O    O OOOOO    O
 OOOOOO  O  OOOOOO O        O
 OOOOOO
      we  care  about  software

-----------------------------------------------------------------
Gluft Ltd. Registered No.: 6795336
The information contained in this e-mail and any attachments is
proprietary to Gluft Ltd and must not be passed to any third
party without permission. This communication is for information
only and shall not create or change any contractual relationship.
Please consider the environment before printing. Thank you.
-----------------------------------------------------------------