netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ben Gamari <bgamari@gmail.com>
To: Mike Caoco <caoco2002@yahoo.com>,
	Stephen Hemminger <shemminger@vyatta.com>
Cc: Netdev <netdev@vger.kernel.org>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: Unplug ethernet cable, the route persists.  Why?
Date: Thu, 25 Nov 2010 15:11:38 -0500	[thread overview]
Message-ID: <87bp5df9j9.fsf@gmail.com> (raw)
In-Reply-To: <144174.46619.qm@web63401.mail.re1.yahoo.com>

On Wed, 24 Nov 2010 12:29:43 -0800 (PST), Mike Caoco <caoco2002@yahoo.com> wrote:
> So if you rely on NetworkManager or Connman or Quagga to remove the
> route, the routing daemons will recompute the route table anyway.  So
> why cannot this be done in the kernel?

This is policy. In the Linux world we generally strive to separate
policy from mechanism, leaving the former to userspace. This allows
(potentially complex) policy decisions to be made in user-space. The
reason for this is two-fold: First, every line of kernel code introduces
the potentially for a bug and error handling in the kernel is generally
more complex than it is in user-space. Secondly, allowing user-space to
handle policy allows users to do things with the kernel that kernel
developers did not envision. This flexibility is one reason why the
kernel is so suited for running on anything from your cell-phone to 4000
processor big iron.

> Even when no NetworkManager/Quagga is present, I think it is a
> legitimate reason to recompute the route when a cable is unplugged,
> which should not be a frequent event unless when under error
> conditions.

There have to be real, demonstrable benefits for moving policy into the
kernel (i.e. the recent discussions concerning per-session
cgroups). Considering how long the Linux networking subsystem has
existed, I highly doubt there is a good reason to move this sort of
routing policy into the kernel that has not already been discussed.

Cheers,

- Ben

  parent reply	other threads:[~2010-11-25 20:11 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-24 19:48 Unplug ethernet cable, the route persists. Why? Mike Caoco
2010-11-24 20:18 ` Stephen Hemminger
2010-11-24 20:29   ` Mike Caoco
2010-11-24 20:44     ` David Miller
2010-11-25 20:11     ` Ben Gamari [this message]
2010-11-25 22:18       ` Jarek Poplawski
2010-11-25 19:10 ` Hans de Bruin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bp5df9j9.fsf@gmail.com \
    --to=bgamari@gmail.com \
    --cc=caoco2002@yahoo.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=shemminger@vyatta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).