From owner-freebsd-net@FreeBSD.ORG Thu Mar 7 21:42:12 2013 Return-Path: Delivered-To: net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 1611A532; Thu, 7 Mar 2013 21:42:12 +0000 (UTC) (envelope-from jmg@h2.funkthat.com) Received: from h2.funkthat.com (gate2.funkthat.com [208.87.223.18]) by mx1.freebsd.org (Postfix) with ESMTP id BE8DA645; Thu, 7 Mar 2013 21:42:11 +0000 (UTC) Received: from h2.funkthat.com (localhost [127.0.0.1]) by h2.funkthat.com (8.14.3/8.14.3) with ESMTP id r27Lg5SZ066094 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 7 Mar 2013 13:42:05 -0800 (PST) (envelope-from jmg@h2.funkthat.com) Received: (from jmg@localhost) by h2.funkthat.com (8.14.3/8.14.3/Submit) id r27Lg5oD066093; Thu, 7 Mar 2013 13:42:05 -0800 (PST) (envelope-from jmg) Date: Thu, 7 Mar 2013 13:42:05 -0800 From: John-Mark Gurney To: Andre Oppermann Subject: Re: [patch] interface routes Message-ID: <20130307214205.GD50035@funkthat.com> Mail-Followup-To: Andre Oppermann , "Alexander V. Chernikov" , net@freebsd.org References: <513834E4.7050203@FreeBSD.org> <51384443.5070209@freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51384443.5070209@freebsd.org> User-Agent: Mutt/1.4.2.3i X-Operating-System: FreeBSD 7.2-RELEASE i386 X-PGP-Fingerprint: 54BA 873B 6515 3F10 9E88 9322 9CB1 8F74 6D3F A396 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-to-the-FBI-CIA-and-NSA: HI! HOW YA DOIN? can i haz chizburger? X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.2 (h2.funkthat.com [127.0.0.1]); Thu, 07 Mar 2013 13:42:05 -0800 (PST) Cc: "Alexander V. Chernikov" , net@freebsd.org X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.14 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, 07 Mar 2013 21:42:12 -0000 Andre Oppermann wrote this message on Thu, Mar 07, 2013 at 08:39 +0100: > >Adding interface address is handled via atomically deleting old prefix and > >adding interface one. > > This brings up a long standing sore point of our routing code > which this patch makes more pronounced. When an interface link > state is down I don't want the route to it to persist but to > become inactive so another path can be chosen. This the very > point of running a routing daemon. So on the link-down event > the installed interface routes should be removed from the routing > table. The configured addresses though should persist and the > interface routes re-installed on a link-up event. What's your > opinion on it? > > Other than these points I think your code is fine and can go > into the tree. The issue that I see with this is that if you bump your cable, all your connections will be dropped, because as soon as they try to send something, they'll get a no route to host, and this will break the TCP connection... If we keep the routes when the link goes down, the packet will be queued or dropped (depending upon ethernet driver), but the TCP connection will not break... -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."