Differences between version 50 and predecessor to the previous major change of DCCP.
Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 50 | Last edited on Thursday, November 30, 2006 9:19:27 am | by IanMcDonald | Revert |
Older page: | version 49 | Last edited on Wednesday, September 13, 2006 9:17:53 am | by IanMcDonald | Revert |
@@ -1,9 +1,9 @@
[Acronym] for __D__atagram __C__ongestion __C__ontrol __P__rotocol.
DCCP is a transport level protocol (like [TCP] and [UDP]) which aims to solve many different congestion issues. This is useful for applications that don't need the data reliability/re-transmission of [TCP], but want a session and want congestion control unlike [UDP].
-DCCP is a series of experimental
[RFC]s (4340-4342)
+DCCP is a series of proposed standard
[RFC]s (4340-4342)
The main reference page on the web for DCCP is here:
http://www.read.cs.ucla.edu/dccp/
@@ -12,9 +12,9 @@
!!DCCP stack for Linux
Much of this page is shifting to http://linux-net.osdl.org/index.php/DCCP - that page is considered the definitive reference for the DCCP implementation for Linux.
-There
is a [GPL] version of DCCP being produced at
present for
the [LinuxKernel]. This is being maintained by ArnaldoMelo at present. The history of this is that it draws from the code of Patrick ~McManus, Lulea and the [WAND] group that IanMcDonald is part of. The status of this is that it has been
accepted by LinusTorvalds into his
2.6.14 tree.
+DCCP
is present in
the [LinuxKernel]. This is being maintained by ArnaldoMelo at present. The history of this is that it draws from the code of Patrick ~McManus, Lulea and the [WAND] group that IanMcDonald is part of. It was
accepted into the LinuxKernel
by LinusTorvalds in
2.6.14. It continues to evolve rapidly at time of writing (preparatory 2.6.20) and it usually pays to get the latest code from a [Git]
tree.
The core DCCP stack was written by ArnaldoMelo using the Linux [TCP] implementation as a model, with DCCP being used as a way to identify code in the [TCP] implementation that could be made generic and shared with other INET transport level implementations. This resulted in the generalisation of code related to the minisockets representing both TCP_SYN_RECV/DCCP_RESPOND and TCP_TIME_WAIT/DCCP_TIME_WAIT status, code related to established/timewait/listen sockets (inet_lookup, inet_lookup_established, etc), the interface to get sock information (tcp_diag), and many other functions and data structures, with more expected to be generalised and eventually used by [SCTP] and any other INET transport protocols that may be introduced in the future.
The [CCID]3 code was, as IanMcDonald mentioned, drawn from the [WAND] group, that in turn got it initially from the Lulea [FreeBSD] codebase and made it work in the core DCCP stack written by Patrick ~McManus. It was modified by ArnaldoMelo to fit Linux standards wrt list handling and several other aspects.
@@ -83,12 +83,8 @@
-#include <netinet/tfrc.h>
+// #include <netinet/tfrc.h>
+#include <linux/tfrc.h>
</pre>
-
-!![Iperf]
-
-There is an [Iperf] patch available [here|http://wand.net.nz/~iam4/dccp/dccp-iperf-2.0.2-1.diff]
!!FAQ
See [FAQ|http://linux-net.osdl.org/index.php/DCCP#FAQ]