From: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
To: dccp@vger.kernel.org
Subject: Re: About pluggable congestion control infrastructure in DCCP
Date: Sun, 19 Aug 2007 22:39:24 +0000 [thread overview]
Message-ID: <20070819223924.GC24792@ghostprotocols.net> (raw)
In-Reply-To: <e3c7f9e80708190627y3e883241gb1def650e37965c0@mail.gmail.com>
Em Mon, Aug 20, 2007 at 10:22:40AM +1200, Ian McDonald escreveu:
> On 8/20/07, Arnaldo Carvalho de Melo <acme@ghostprotocols.net> wrote:
> > Em Mon, Aug 20, 2007 at 08:53:15AM +1200, Ian McDonald escreveu:
> > > On 8/20/07, Shahiduzzaman <shahid21st@gmail.com> wrote:
> > > > Hi all,
> > > >
> > > > This may be a redundant or very naive question - sorry in advance for
> > > > that. Can anybody tell me, whether the current Linux kernel DCCP
> > > > implementation is done in a fashion like TCP pluggable congestion
> > > > avoidance modules infrastructure (http://lwn.net/Articles/128681/) ?
> > >
> > > The short answer is yes and no!
> >
> > I think the answer is just "yes"
> >
> > The CCID infrastructure in the Linux kernel is done in a fashion like
> > the TCP pluggable congestion avoidances modules infrastructure. One can
> > write a new CCID and load, making it available for userspace programs to
> > use without changing a line of code in what is already in the kernel.
> >
> > > No that the in-tree version does not support it.
> >
> > The question was if it was done "in a fashion like", not "exactly as". I
> > may be confused with your answer as english is not my first language tho
> > :-)
> >
>
> I think my answer may have been confusing then...
>
> To clarify the CCID code is modular in that you don't need to write
> the code from the ground up for a new CCID. It has callback functions
> for implementing various protocol requirements.
>
> The part where it is not modular (in the tree anywhere) is if you want
> to change just the very small part of how the congestion control is
> done for any particular CCID.
That needs improvements, yes, but even in this area we have separated a
good number of routines in the tfrc library:
[acme@mica net-2.6.24]$ l net/dccp/ccids/lib/
total 64
drwxr-xr-x 2 acme acme 4096 Aug 19 19:25 ./
drwxr-xr-x 3 acme acme 4096 Aug 19 19:26 ../
-rw-r--r-- 1 acme acme 7391 Aug 19 19:25 loss_interval.c
-rw-r--r-- 1 acme acme 1019 Aug 19 19:25 loss_interval.h
-rw-r--r-- 1 acme acme 119 Aug 19 19:25 Makefile
-rw-r--r-- 1 acme acme 7806 Aug 19 19:25 packet_history.c
-rw-r--r-- 1 acme acme 5853 Aug 19 19:25 packet_history.h
-rw-r--r-- 1 acme acme 18708 Aug 19 19:25 tfrc_equation.c
-rw-r--r-- 1 acme acme 1171 Aug 19 19:25 tfrc.h
[acme@mica net-2.6.24]$
> I hope this clarifies a little. I get confused even though English is
> my first language!
Yes, it clarifies, and the discussion should provide the information
that Shahiduzzaman is looking for.
Ok, back to preparing a batch of patches for upstream submission, in my
glacial pace, but hey, global warming will eventually reach my feets!
:-)
- Arnaldo
prev parent reply other threads:[~2007-08-19 22:39 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-19 13:27 About pluggable congestion control infrastructure in DCCP Shahiduzzaman
2007-08-19 20:53 ` Ian McDonald
2007-08-19 22:16 ` Arnaldo Carvalho de Melo
2007-08-19 22:22 ` Ian McDonald
2007-08-19 22:39 ` Arnaldo Carvalho de Melo [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070819223924.GC24792@ghostprotocols.net \
--to=acme@ghostprotocols.net \
--cc=dccp@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.