Subject: [BEHAVE] RFC 7422: How does Staggered work?

From: Alberto Leiva <[email-masked]>
Date: Fri, 01 May 2015 00:21:57 -0000

Hello

(Should I post this in SUNSET4?)

I'm working on implementing RFC 7422.

Could somebody please explain to me what I'm doing wrong in my
interpretation of the "Staggered" assignment algorithm?

>   1: Staggered (e.g., for every n between 0 and ((65536-R)/(C+D))-1 ,
>      address 1 receives ports n*C+R, address 2 receives ports
>      (1+n)*C+R, etc.).

Using the sample numbers in page 8 (R = 1024, C = 14, D = 2),

n would be numbers between zero and ((65536-1024)/(14+2))-1 = 4031.
That is n = 0, 1, 2, 3, ..., 4030, 4031.

address 1 would receive ports n*C+R, which is 1024, 1038, 1052, 1066,
1080, ..., 57444, 57458.
address 2 would receive ports (1+n)*C+R, which is 1038, 1052, 1066,
1080, 1094, ..., 57458, 57472.

What's with all the collision? It makes subscribers share external
transport addresses, which defeats "Deterministic Address Mapping to
Reduce Logging" (which is the name of the RFC).

I think the authors might actually have meant "address number x
receives ports n*C+R+x for every n", but then I don't see the
difference between that and the "Interlaced horizontally" assignment
algorithm...

Thank you.
Alberto