A small self-contained patch set which centers around determining sufficient 
option
headroom when calculating the maximum packet size.

Patch #1: Adds documentation for the fields in struct ccid_operations.

Patch #2: More informative registration of CCIDs.

Patch #3: Introduces the CCMPS field for CCIDs. This is currently only used
          by CCID4. The ccmps value needs to include network/transport header
          lengths (since dccp_sync_mss subtracts these). For CCID4 this would
          supposedly look like (RFC 3714/4828):
          struct ccid_operations ccid4 = {
                .ccid_mps = 1500,
                /* ... */
          };
          If the field is omitted or set to 0, no CCMPS is imposed.

Patch #4: Is the core of this patch set and estimates the minimally required 
option
          headroom for Data/DataAck packets. It addresses a FIXME in 
dccp_sync_mss.
          I have long thought about this and come to the conclusion that a 
simple
          solution - optimising for data transfer - is better. The complexities 
of
          variable-length options (Ack Vector, Data Dropped, initial 
feature-negotiation)
          need to use a different path - e.g. using a separate Ack (cf. next 
patch).
          Rationale and background is documented on 
          
http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/misc_notes/estimating_option_sizes_for_MPS.txt

Patch #5: Reorders statements to estimate the maximum room left for Ack Vectors 
and adds a Fixme + warning
          message for dealing with insufficient remaining space when 
piggybacking on DataAck.
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to