From owner-freebsd-net@freebsd.org Thu Sep 22 08:04:27 2016 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 950F4BE4915 for ; Thu, 22 Sep 2016 08:04:27 +0000 (UTC) (envelope-from killing@multiplay.co.uk) Received: from mail-pf0-x229.google.com (mail-pf0-x229.google.com [IPv6:2607:f8b0:400e:c00::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6169BF92 for ; Thu, 22 Sep 2016 08:04:27 +0000 (UTC) (envelope-from killing@multiplay.co.uk) Received: by mail-pf0-x229.google.com with SMTP id 21so28194801pfy.0 for ; Thu, 22 Sep 2016 01:04:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=multiplay-co-uk.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to; bh=pPG09Mq6UA+qxrK9tCGuWAulI3l5hc4+LI1BxEptKL0=; b=oKC3IrnTfaX/B8VAw8r9+P401CRwNzO5wy3uujOeAMlJ/Q7AvL7/58zMOE70E/w4s1 x3PQ3wODLRW65EQkGxOQ/MEV2llNR6vk8775aXYiiTcphPmtslebmfs3sxR09rYY3y/8 rz14vuGi7Gkv2cxxd6iGt/dKtDVgYlA0H4mAHHNuWnwT9R+LGg0uGSAA4QfnI4e26GPL Ut5RkztttmOSqm11bybohtCmVtM7KLSP7AzSEsr6BV7fMK+Y+jVe59sLknfg94Nz2Wk9 3ItF1xMB7s2+Ms8+ybgWyXJBUF47lbEw3cnHxY7SWRfHZICHqF4K1UOZGCrwYpAXDoY4 UqpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to; bh=pPG09Mq6UA+qxrK9tCGuWAulI3l5hc4+LI1BxEptKL0=; b=T0frFjEyZQNJsl1uqO9hVAEx6ajpaukvRRXNR8LLg18IyCy885qRMYiB2KGAQqnUcw 3Rnsfr1ph8KkyWvYCcTfU3N73lPT6+0LcU2y4QPqwfzTIOV40zIvksYdH8uUk7hFQ/QU 1aXP72KLiz4lmFENN2cU9ToalI7TwGnQq85/qMz++swqDDO7LKre69Np8kAAe0/87aLn zws1nukDd5F36p9yDqp1e4N9NBt5IppfVda3BrrYP2w07S+09IdMvWDIq+PH+hT3Yz9q 3WZB143buUgK22xI3k46nCKhjCCZON1o0RQiRs18cCgUYdNEdA/cWgX6BsEjRpDU0lcO +EAg== X-Gm-Message-State: AE9vXwO24asFM5rNOoZvsyPdRCoy2M3Ea1KK6eriwgTEclIHhdER1sT98iLt392vrWz7ITlH X-Received: by 10.98.149.149 with SMTP id c21mr1108125pfk.33.1474531466853; Thu, 22 Sep 2016 01:04:26 -0700 (PDT) Received: from [10.10.1.58] ([185.97.61.1]) by smtp.gmail.com with ESMTPSA id 70sm1674575pfy.81.2016.09.22.01.04.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 22 Sep 2016 01:04:25 -0700 (PDT) Subject: Re: lagg Interfaces - don't do Gratuitous ARP? To: Gleb Smirnoff , Kubilay Kocak References: <0D84203FAAFD0A8E7BBB24A3@[10.12.30.106]> <6E574F1B61786E6032824A88@[10.12.30.106]> <2c62f5f0-3fb4-f513-2a8f-02de3a1d552f@FreeBSD.org> <20160921235703.GG1018@cell.glebi.us> Cc: Karl Pielorz , freebsd-net@freebsd.org From: Steven Hartland Message-ID: <48632d42-ea2b-b147-737d-d7decfdbcff4@multiplay.co.uk> Date: Thu, 22 Sep 2016 09:04:25 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <20160921235703.GG1018@cell.glebi.us> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.23 X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Sep 2016 08:04:27 -0000 On 22/09/2016 00:57, Gleb Smirnoff wrote: > On Sat, Sep 10, 2016 at 10:51:36PM +1000, Kubilay Kocak wrote: > K> > wrote: > K> > > K> >> Yes known issue I'm afraid. > K> >> > K> >> I created a patch set to address this but there where objections so > K> >> it was removed, see the attached which is based on 10.2-RELEASE. > K> > > K> > Hi, > K> > > K> > Thanks for the reply, and the comprehensive patch. If I get a chance > K> > I'll see if I can run it up one of the affected boxes, if I can find > K> > one I can mess around with. > K> > > K> > Good to know it wasn't just "me" :) > K> > > K> > Cheers, > K> > > K> > -Karl > K> > K> Also see the following review, which was re-opened (after original > K> commit was reverted) after said issues were raised, though I can't see > K> that glebius has commented on it since: > K> > K> https://reviews.freebsd.org/D4111 > K> > K> 11.0 having this would have been awesome. Maybe (hopefully) 11.1 > > IMHO, the original patch was absolutely evil hack touching multiple > layers, for the sake of a very special problem. > > I think, that in order to kick forwarding table on switches, lagg > should: > > - allocate an mbuf itself > - set its source hardware address to its own > - set destination hardware to broadcast > - put some payload in there, to make packet of valid size. Why should it be > gratuitous ARP? A machine can be running IPv6 only, or may even use whatever > higher level protocol, e.g. PPPoE. We shouldn't involve IP into this Layer 2 > problem at all. > - Finally, send the prepared mbuf down the lagg member(s). > > And please don't hack half of the network stack to achieve that :) > Yes it does touch multiple layers, but I'm not sure I'd agree that was all that evil, we already have similar parts in the code base e.g. lle_event and carp link state. When I dug around this issue last time the various papers made it quite clear what was expected / required to make lagg work properly, which is what was achieved by the code. With regards to running IPv6 that doesn't deal with it either hence the nd6 changes included, which was the only grey area caused by a conflict between the letter of the IPv6 spec and achieving the requirement of fast recovery. As a point of reference we've been running with the changes for nearly a year now and have never had issue, so the code is there if people want it. The disappointing thing about this is we had a solution, all be it one not everyone liked, nearly a year ago now and yet here we are still stuck with a broken lagg implementation in the tree. A perfect solution is always nice but in lieu of that the pragmatist in me asks isn't working better than not working at the end of the day? Regards Steve