[Technical Errata Reported] RFC5595 (1891)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The following errata report has been submitted for RFC5595,
"The Datagram Congestion Control Protocol (DCCP) Service Codes".

--------------------------------------
You may review the report below and at:
http://www.rfc-editor.org/errata_search.php?rfc=5595&eid=1891

--------------------------------------
Type: Technical
Reported by: Alfred Hoenes <ah@xxxxxxxxx>

Section: 2.7, pg.10

Original Text
-------------
     int s_port; /* server port */
     s_port = ((sc[0]<<7)^(sc[1]<<5)^(sc[2]<<3)^sc[3]) | 0xC000;
     [...]

   where [...]

   This algorithm has the following properties:

   o  [...]

   o  [...]

|  o  It preserves the 4 lowest bits of the final bytes of the Service
      Code, which allows many common series of Service Codes to be
|     mapped to a set of adjacent port numbers, e.g., Foo1, and Foo2;
|     Fooa and Foob would be assigned adjacent ports.  (Note: this
|     consecutive numbering only applies to characters in the range 0-9
|     and A-O and P-Z.  When the characters cross a range boundary, the
|     algorithm introduces a discontinuity, resulting in mapping to
|     non-consecutive ports.  Hence, Fooo and Foop respectively map to
|     the decimal values of 65015 and 65000).


Corrected Text
--------------
|  o  It preserves the 3 lowest bits of the final bytes [...]
|
     ...  [[ t.b.d. ]]

Notes
-----
Simply trying the full example shows that the statement is not
entirely correct.  The quoted formula reveals that only the least
significant *3* bits are left unchanged (due to the '<<3'
operation on sc[2]).  It turns out that ranges of *8* contiguous
SC values are mapped to contiguous 8 port numbers but, depending
on the two least significant bits of sc[2], groups of 4 adjacent
ranges are shuffled around.  More complicated patterns arise for
the next higher level of 4-clusters of range-groups, etc.
Thus, the situation is not hopeless for the indicated purpose,
but much more complicated than indicated in the RFC text.

I leave it as an exercise to the interested reader to figure
out the details for the size of range she is interested in.

A future revision of the RFC however should fix the text.

[[ Verifiers: please edit this text and insert a full-fledged
   replacement text, should it be provided by a third party and
   be acceptable to the authors and the WG. ]]

Instructions:
-------------
This errata is currently posted as "Reported". If necessary, please
use "Reply All" to discuss whether it should be verified or
rejected. When a decision is reached, the verifying party (IESG)
can log in to change the status and edit the report, if necessary. 

--------------------------------------
RFC5595 (draft-ietf-dccp-serv-codes-11)
--------------------------------------
Title               : The Datagram Congestion Control Protocol (DCCP) Service Codes
Publication Date    : September 2009
Author(s)           : G. Fairhurst
Category            : PROPOSED STANDARD
Source              : Datagram Congestion Control Protocol
Area                : Transport
Stream              : IETF
Verifying Party     : IESG

[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux