On 09.03.2013 23:17, Nikolay Denev wrote:
On Mar 7, 2013, at 9:42 PM, John-Mark Gurney<[email protected]>  wrote:

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."

Maybe this can be made a option that can be turned on when needed.
Yes. There is another patch in this thread with "remove_iface_routes_on_change" per-VNET sysctl, turned off by default.
What you describe can be very undesirable for a workstation/laptop or a server,
but a router that itself does not have many connections originating or 
terminating on it could
actually benefit from this.
The current state is actually much worse for routers. A link down does not do 
anything, and
while there may be a alternative route to be installed for example from OSPF, 
the interface without link
pertains its routes and effectively blackholes all traffic.

--
Nikolay



_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[email protected]"

Reply via email to