[PATCH 0/11]: Basis for feature negotiation

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

 



This now starts the feature-negotiation code and is the first batch of several.
I have been testing these for quite a while and believe they are bug free.

The concept for feature negotiation is new and mostly mapped onto the 3-way handshake.
Documentation is on http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/feature_negotiation/ 


Patch #1: Removes unnecessary code from option processing
          (I had originally introduced this out of misunderstanding the code)

Patch #2: Adds an explicit remark that all known-so-far SP values are 1-byte,
          which removes several XXX's present in the feature-negotiation code.

Patch #3: Stops option processing to parse feature-negotiation on Data packets
          (is not allowed as per RFC 4340, 6.1 and slows down).


Patch #4: The new feature negotiation code starts here - data structures and initialisation.
          (I believe what Frederic Brooks said that the structures are most important, since
           one can see from them already how the algorithms will be laid out).

Patch #5: In the spirit of patch #4, a lookup table is provided which forms the central 
          `intelligence' of the feature-negotiation code (has all the rules and defaults).

Patch #6: Adds list management functions (book-keeping). As before, the feature negotiation
          code is maintained as doubly linked list, which is smaller on average than using
          a full table on each (request) socket. But the list management code is entirely new;
          the most important points are: 
		- strictly ordered by feature number (faster lookup)
		- no duplicates (and the management code becomes simpler)

Patch #7: Adds feature-negotiation data structures (struct list_head) to DCCP sockets, and
          request sockets; and provides initialisation for using these socket fields.

Patch #8: Cleanup routines for the socket data structures of patch #7.

Patch #9: Documents a socket struct and asks whether it can be removed.

Patch #10: Restricts feature negotiation to connection setup, as documented on 
          http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/feature_negotiation/during_connection_setup.html
          Please note: this limitation is later lifted, to allow passing NN options during
                       an established connection (CCID2's Ack Ratio depends on that).           

Patch #11: We are no longer using retransmission timers for feature negotiation. This has been made possible
           by the concept documented on the above URL - it is mapped, with its dependencies, onto the initial
           handshake. Away go the timers.
-
To unsubscribe from this list: send the line "unsubscribe dccp" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [IETF DCCP]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux