Hi Vladimir,
You are right. There is an error. But the buffer SHOULD read as follows:
** +*******----------------------------+ *
12 |0,0|3,0|0,0|3,0|3,0|3,0|0,4|1,0|0,0| 0 BN[0]
** +*******----------------------------+ *
^
the error was here
I copied the version of the buffer from the immediately preceding example,
which has the leftmost byte as "0,1", when I SHOULD have copied the Example
Buffer, which has the leftmost byte as "0,0".
Eddie
vladimir.moltchanov@xxxxxxxxx wrote:
Hello,
I am now implementing Ack Veckitor and, while testing its operation
according to Appendix A of RFC4340 (pages 118-119), I've run in some puzzle:
<snip>--------------------------------------------------------------
If the packet's state equals the state at the head of the buffer, the
HC-Receiver may choose to increment its run length (up to the
maximum). For example, if HC-Sender packet 11 arrived without ECN
marking and with ECN Nonce 0, the Example Buffer might enter this
state instead:
** +--*------------------------+
11 |0,1|3,0|3,0|3,0|0,4|1,0|0,0| 0 BN[1]
** +--*------------------------+
Of course, the new packet's sequence number might not equal the
expected sequence number. In this case, the HC-Receiver will enter
the intervening packets as State 3. If several packets are missing,
the HC-Receiver may prefer to enter multiple bytes with run length 0,
rather than a single byte with a larger run length; this simplifies
table updates if one of the missing packets arrives. For example, if
HC-Sender packet 12 arrived with ECN Nonce 1, the Example Buffer
would enter this state:
** +*******----------------------------+ *
12 |0,0|3,0|0,1|3,0|3,0|3,0|0,4|1,0|0,0| 0 BN[0]
** +*******----------------------------+ *
--------------------------------------------------------------------------------------------------------------------------------------------<snip>
To my mind, now there is inconsistency within the vector. I am guessing,
that "12" should be "13" for packet sequence number, is it correct?
B.R.
Vladimir.