From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qc0-x22b.google.com (mail-qc0-x22b.google.com [IPv6:2607:f8b0:400d:c01::22b]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by huchra.bufferbloat.net (Postfix) with ESMTPS id 8956B21F325 for ; Tue, 20 May 2014 03:16:03 -0700 (PDT) Received: by mail-qc0-f171.google.com with SMTP id x13so338304qcv.30 for ; Tue, 20 May 2014 03:16:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=FuRaw/gMCj6Q1NNt/vyD2+0tZ4N2UCgPysis2KVmiXQ=; b=GE2QMhBoho+eStka05k5jvDK06mcxhiXci2en5yGo2olIarByNygLwHl0+BiQ9R++C wqu/HuQGI4MfhQPg5rS8i5Gm0ASI3oRaXmNZ9AzsZBt3qsp74hwuHsmzz/NLdOehtPi2 TC1+vPNQImi5nmdn6sOVn9t8sPN03Dy5Y2SLBhEVtU/aqcBauyusxPht15HvLK6nx6az vI6RFOsIOM+yQXNsPfsBZ7fujaEISh5wGf1kmswW5e83rKnh4TgwRtCS/qjvCxkmMI5w KLhaajxmpxsxKSGx7jY5Kawq20KcNYkIlMxHTrfqYu2Ftr8QqPJ+E5v4KTWtZab/bJeU ThxA== MIME-Version: 1.0 X-Received: by 10.224.14.79 with SMTP id f15mr56198117qaa.96.1400580962040; Tue, 20 May 2014 03:16:02 -0700 (PDT) Received: by 10.96.25.234 with HTTP; Tue, 20 May 2014 03:16:01 -0700 (PDT) In-Reply-To: References: Date: Tue, 20 May 2014 20:16:01 +1000 Message-ID: From: Andrew McGregor To: Richard Edmands Content-Type: multipart/alternative; boundary=047d7bdc80fcb8c1fc04f9d22a0e Cc: codel Subject: Re: [Codel] Floating an Idea. ip_fq_codel X-BeenThere: codel@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: CoDel AQM discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 May 2014 10:16:03 -0000 --047d7bdc80fcb8c1fc04f9d22a0e Content-Type: text/plain; charset=UTF-8 That's about what constitutes a flow. fq_codel as implemented in linux works per (source ip, dest ip, protocol, source port, dest port) 5-tuple. Linux should probably support multiple flow hashing algorithms in the kernel. On Tue, May 20, 2014 at 7:15 PM, Richard Edmands wrote: > In my environment we've got a fair chunk of torrent usage happening (+ > gaming) and with fq_codel giving the advantage to whichever individual > could open up as many connections as possible the entire situation imploded > very quickly. > So to balance this out I used htb to implement the IP part of this > (actually not really, i made groups of ip's which belonged to individuals) > and stuck fq_codel on top of the divided setup. > With this system what now happens is each IP now gets equal utilization of > the link (actually, i'm a lazy hack. I only implemented the uplink section) > which prevents the advantage of opening up as many connections as possible. > Now when an individual decides to go nuts, they're limited to what is > available to them without harming everyone else, without compromising > maximum possible speed. > > I have had this running in my environment for the past month and WOW. > > See pastebin'd implementation. > > http://pastebin.com/hXtzFL9f > > _______________________________________________ > Codel mailing list > Codel@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/codel > > --047d7bdc80fcb8c1fc04f9d22a0e Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
That's about what constitutes a flow. =C2=A0fq_codel a= s implemented in linux works per (source ip, dest ip, protocol, source port= , dest port) 5-tuple. =C2=A0Linux should probably support multiple flow has= hing algorithms in the kernel.


On Tue, May 2= 0, 2014 at 7:15 PM, Richard Edmands <thesirdmz@gmail.com> = wrote:
In my environment we&#= 39;ve got a fair chunk of torrent usage happening (+ gaming) and with fq_co= del giving the advantage to whichever individual could open up as many conn= ections as possible the entire situation imploded very quickly.
So to balance this out I used htb to implement the IP part of th= is (actually not really, i made groups of ip's which belonged to indivi= duals) and stuck fq_codel on top of the divided setup.
With t= his system what now happens is each IP now gets equal utilization of the li= nk (actually, i'm a lazy hack. I only implemented the uplink section) w= hich prevents the advantage of opening up as many connections as possible. =
Now when an individual decides to go nuts, they're limited to what is a= vailable to them without harming everyone else, without compromising maximu= m possible speed.

I have had this running in my environme= nt for the past month and WOW.

See pastebin'd implementation.

_______________________________________________
Codel mailing list
Codel@lists.bufferbloat.net<= /a>
= https://lists.bufferbloat.net/listinfo/codel


--047d7bdc80fcb8c1fc04f9d22a0e--