[ds6-devel] Re: nagle algorithm

Gigi Sullivan sullivan@sikurezza.org
Tue Dec 31 02:02:15 2002


Aiee :)

   Hello!

On Tue, Dec 31, 2002 at 01:05:37AM +0100, Mauro Tortonesi wrote:
> > Trivial to do, though I'm curious why it would be useful.  The nagle
> > algorithm is used to coalesce packets together before transmission over
> > the network.  It can be annoying for real time protocols, but in most
> > cases it can only be a benefit.  File transfer isn't exactly real time,
> > and the nagle algorithm should help to fill out all the packets being
> > sent...
> >
> > But on the advocacy side, we should be writing fairly large chunks at a
> > time anyway, so there wont be much coalescing to be done.
> >
> > Really....I don't care too much, but it would be interesting to do some
> > tests...
> 
> ok. as i suppose this is an __extremely__ networking stack implementation
> dependent thing, we should probably keep the actual behaviour, at least
> until we have performed a few tests.

   Agreed.

   I did a few tests and it turned out that we're just a little bit
   faster disabling Nagle's algorithm when we're sending "lot" of data
   ("bulk" transfer) at a time, while we're just a little bit slower
   viceversa (this is just what Nagle is about, tho)

   That said, I don't think the tests are really reliable since I did
   them on loopback device - so no real network data transfers, just
   kernel driver software involved (I cannot set up a "real" net connection 
   here, sorry)

   But just for the sake of clarity, a few notes about the tests:

      +  sample:  100 (not too high maybe)
      +  file size:  1K, 10K, 80M
      +  mean value "esteemed" as arithmetic average
      +  time computed by gettimeofday(2)
      +  files filled by /dev/urandom
      +  kernel version 2.2.19 (GNU/Linux)

   Forgive for being not accurate, please. Just too tired ;)

   Happy new year ;)

> -- 
> Aequam memento rebus in arduis servare mentem...
> 
> Mauro Tortonesi			mauro@deepspace6.net
> 				mauro@ferrara.linux.it
> Deep Space 6 - IPv6 on Linux	http://www.deepspace6.net
> Ferrara Linux Users Group	http://www.ferrara.linux.it

bye bye

                        -- gg sullivan

P.S.  I wrote two rough programs for the purpose. One for sending, the
      other for receving. I didn't used neither nc nor nc6.
      (I can "rearrange" them to be presentable ;) and post the whole
      stuff (results) here, if you're interested in).

-- 
Lorenzo Cavallaro `Gigi Sullivan' <sullivan@sikurezza.org>

Until I loved, life had no beauty;
I did not know I lived until I had loved. (Theodor Korner)


More information about the ds6-devel mailing list