From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-yk0-x22e.google.com (mail-yk0-x22e.google.com [IPv6:2607:f8b0:4002:c07::22e]) (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 D84E021F285 for ; Tue, 20 May 2014 08:38:11 -0700 (PDT) Received: by mail-yk0-f174.google.com with SMTP id 9so482548ykp.33 for ; Tue, 20 May 2014 08:38:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:subject:from:to:cc:date:in-reply-to:references :content-type:content-transfer-encoding:mime-version; bh=jCwN+3oKUjJpPfUroH+QwVYhB5uHPl5zvj6SscSM3QA=; b=iAzKP7BKDNIN1X+QY/sHagB7UyIqxBjeJpvA1kjjNDDw7rPndgQFLEbe4QrDnEMOXO 48dqFADfQ6Iwj0yUbNzWp9lware3cTzsKfhTNIqLMq5xOWgGWSq0DSgmEru3nm1FxKqv M1wdNn4qReZK33wbaAwfbLcNBeYJX/SdOQ7zzQ2oIxhDfyNWB33Yt4I+EQPRZIrPwJXr Xu19q0IIMDwIE4cFGKAXMTrp9mYStdSEMHNhvm+GsP85WCu9qO6zoMuV+NI7iKDiV/6P eA556Bom0JyBxWWeYeiBT9nUfBJ8rEQsg+FV5Fm8Z6Hox1MllbyHjW3rbZSekhvZggma EZUA== X-Received: by 10.236.125.69 with SMTP id y45mr30792121yhh.42.1400599924330; Tue, 20 May 2014 08:32:04 -0700 (PDT) Received: from [172.19.253.119] ([172.19.253.119]) by mx.google.com with ESMTPSA id z67sm30231035yhk.50.2014.05.20.08.32.02 for (version=SSLv3 cipher=RC4-SHA bits=128/128); Tue, 20 May 2014 08:32:03 -0700 (PDT) Message-ID: <1400599901.5367.129.camel@edumazet-glaptop2.roam.corp.google.com> From: Eric Dumazet To: Andrew McGregor Date: Tue, 20 May 2014 08:31:41 -0700 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.2.3-0ubuntu6 Content-Transfer-Encoding: 7bit Mime-Version: 1.0 Cc: Richard Edmands , 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 15:38:12 -0000 On Tue, 2014-05-20 at 20:16 +1000, Andrew McGregor wrote: > 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. > Right. fq_codel uses the same trick than other qdisc, like SFQ By _default_ it uses a 5-tuple hash. Thats convenient but not a requirement. You can classify packets using a filter and for example hash only on the part you need. For example destination IP, or source IP, depending if you use fq_codel on egress or ingress sides. tc qdisc add dev eth0 root handle 1: fq_codel flows 8192 tc filter add dev eth0 protocol ip parent 1: handle 1 \ flow hash keys dst divisor 8192 Simple as that. > 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 > > > > _______________________________________________ > Codel mailing list > Codel@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/codel