From owner-freebsd-net@FreeBSD.ORG Tue Sep 23 16:40:19 2014 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 24EA92FE; Tue, 23 Sep 2014 16:40:19 +0000 (UTC) Received: from mail-lb0-x229.google.com (mail-lb0-x229.google.com [IPv6:2a00:1450:4010:c04::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3F560840; Tue, 23 Sep 2014 16:40:18 +0000 (UTC) Received: by mail-lb0-f169.google.com with SMTP id b12so9145263lbj.28 for ; Tue, 23 Sep 2014 09:40:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=r4IPfzud9ZLJDAIULtKCL1CwRDpg7KKaL6ksDlUoi4o=; b=SfzUID6rZjBaUnp+LdaQai/2HhsKd8IMxUQdnqwudcgviYMcH3EGfDUL3sJLpS8AqH ydL+8xuFDNoq5kwv8YIyveoQ+3cdQLjBJ5keMTWlMPiPIauKehm6MM3hRqmDm8jT7tZY ELVwCJhF7rpj/abYe3MoZxnZddnmjYRzhPnIlB2rl43QcanU5AjtAPOYquf87aDqylka Hy3VwJiuupIY2bebkMKMR9KEXLOjWkKspY64c7k9nLey7J16mAfcowXkUz3ugWTTVNnb W6IADASPzwCuQHFwoNZ+m6HfV5D+bTb5lrXjdcIUy2lVEd9AtpCsX9NxCBzWEDRY7DkJ v+1A== MIME-Version: 1.0 X-Received: by 10.112.54.169 with SMTP id k9mr861429lbp.32.1411490416138; Tue, 23 Sep 2014 09:40:16 -0700 (PDT) Sender: rizzo.unipi@gmail.com Received: by 10.114.26.37 with HTTP; Tue, 23 Sep 2014 09:40:15 -0700 (PDT) In-Reply-To: <5421A1AF.9000800@FreeBSD.org> References: <5421310C.5010406@FreeBSD.org> <54218EF4.6090102@FreeBSD.org> <20140923154610.GD84074@onelab2.iet.unipi.it> <5421A1AF.9000800@FreeBSD.org> Date: Tue, 23 Sep 2014 18:40:15 +0200 X-Google-Sender-Auth: mFnY25ft-GNP5T1GPrzQqa-Klug Message-ID: Subject: Re: How do I balance bandwidth over several virtual NICs? From: Luigi Rizzo To: "Alexander V. Chernikov" Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: "freebsd-net@freebsd.org" , Adrian Chadd , Elof Ofel X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Sep 2014 16:40:19 -0000 On Tuesday, September 23, 2014, Alexander V. Chernikov wrote: > On 23.09.2014 20:00, Adrian Chadd wrote: > >> Ah, this behaviour. >> >> It's called DROP_EN on the intel igb / ixgbe hardware. Grep the >> drivers for that particular register bit/setting. >> >> Set that bit for an RX queue and it'll instruct the MAC to drop frames >> destined if that RX ring is full to it and keep receiving on the other >> rings. Otherwise yes, receiving on that ring with the ring full cuases >> the MAC to stop receiving on all rings until that ring has free space. >> >> You flip this on with ixgbe and igb by disabling tx/rx flowcontrol >> (sysctl dev.ix|igb.X.fc=0) before configuring the interface. >> > Oh, cool. > Yet another reason to turn flow control off by default. Or at least decouple the two features. Cheers Luigi > >> >> >> -a >> >> > -- -----------------------------------------+------------------------------- Prof. Luigi RIZZO, rizzo@iet.unipi.it . Dip. di Ing. dell'Informazione http://www.iet.unipi.it/~luigi/ . Universita` di Pisa TEL +39-050-2211611 . via Diotisalvi 2 Mobile +39-338-6809875 . 56122 PISA (Italy) -----------------------------------------+-------------------------------