CoDel AQM discussions
 help / color / mirror / Atom feed
From: dave taht <dave.taht@gmail.com>
To: codel@lists.bufferbloat.net, bloat@lists.bufferbloat.net
Subject: [Codel] better tc support for bittorrent/diffserv
Date: Mon, 14 May 2012 08:51:08 -0700	[thread overview]
Message-ID: <4FB129EC.90200@gmail.com> (raw)

I spent a little time this weekend thinking about how to make bittorrent 
do more of the right thing on a fq_codel equipped edge gateway. I set up 
a seeder (transmission-gtk) and watched it go. I was also going to try 
hekate on the router itself but couldn't get it to cross build.

Notes:

0) No ecn on transmission, at least. :( Packets not marked as CS1, 
either. What are these characteristics on other torrent protocol clients?

1) The port number is consistent, but user-settable. Felix tells me that 
the port number varies wildly, however, on other implementations, and 
that dpi is required. His current implementation of dpi for torrent is 
95% accurate with no false positives but requires connection tracking.

2) Doing fair queuing on traffic that is artificially rate limited by 
transmission below the actual egress rate makes bittorrent 'vanish'. 
Totally never noticed it running, even though I got as far as seeding 
32+ machines downstream. I imagine things get worse with 1000 seeds 
running but would like to setup a test... on a legal file that everybody 
wants to have. (suggestions for a good seed torrent welcomed)

3) There is a new feature of linux, for containers, that let you run 
apps in network containers and set packet priorities based on that. 
(priorities in this case is a netfilter-ism, which lets you mark packets 
based on which control group a process is in). This new feature holds 
great promise to re-mark things like skype, at the source, for example, 
and control apps (like torrent) in new ways.

4)  Syntactically tc is missing some ip6 functionality, notably an 
orthogonal "tos" field to the ipv4 version.


             reply	other threads:[~2012-05-14 15:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-14 15:51 dave taht [this message]
2012-05-14 17:50 ` [Codel] [Bloat] " Juliusz Chroboczek
2012-05-14 18:03   ` Eric Dumazet
2012-05-14 18:18     ` dave taht
2012-05-14 18:30       ` Juliusz Chroboczek
2012-05-14 18:35         ` dave taht
2012-05-14 18:24     ` Juliusz Chroboczek
2012-05-14 18:31       ` Eric Dumazet
2012-05-14 18:42         ` Eric Dumazet
2012-05-14 18:14   ` Dave Taht
2012-05-14 18:31     ` Juliusz Chroboczek

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

  List information: https://lists.bufferbloat.net/postorius/lists/codel.lists.bufferbloat.net/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4FB129EC.90200@gmail.com \
    --to=dave.taht@gmail.com \
    --cc=bloat@lists.bufferbloat.net \
    --cc=codel@lists.bufferbloat.net \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox