netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stefano Brivio <sbrivio@redhat.com>
To: Roopa Prabhu <roopa@cumulusnetworks.com>
Cc: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>,
	David Ahern <dsahern@gmail.com>, Phil Sutter <phil@nwl.cc>,
	Eric Garver <egarver@redhat.com>,
	Tomas Dolezal <todoleza@redhat.com>,
	Stephen Hemminger <stephen@networkplumber.org>,
	Lennert Buytenhek <buytenh@gnu.org>,
	netdev <netdev@vger.kernel.org>
Subject: Re: [PATCH iproute2-next] Introduce ip-brctl shell script
Date: Mon, 28 Jan 2019 08:57:48 +0100	[thread overview]
Message-ID: <20190128085748.57cbeff5@redhat.com> (raw)
In-Reply-To: <CAJieiUj9q-YsyKv3SOHKkfipCJyeZtxMFY7KFE+dBgih10s-6A@mail.gmail.com>

On Sun, 27 Jan 2019 21:08:13 -0800
Roopa Prabhu <roopa@cumulusnetworks.com> wrote:

> On Fri, Jan 25, 2019 at 2:05 AM Stefano Brivio <sbrivio@redhat.com> wrote:
> >
> > Hi Roopa,
> >
> > On Wed, 23 Jan 2019 08:33:27 -0800
> > Roopa Prabhu <roopa@cumulusnetworks.com> wrote:
> >  
> > > On Wed, Jan 23, 2019 at 7:09 AM Nikolay Aleksandrov
> > > <nikolay@cumulusnetworks.com> wrote:
> > >  
> > > > Hi,
> > > > IMO the effort should be towards improving iproute2 to be
> > > > easier to use and more intuitive. We should be pushing people to
> > > > use the new tools instead of trying to find workarounds to keep the
> > > > old tools alive. I do like to idea of deprecating bridge-utils, but
> > > > I think it should be done via improving ip/bridge enough to be
> > > > pleasant to use. We will have to maintain this compatibility layer
> > > > forever if it gets accepted and we'll never get rid of brctl this
> > > > way.  
> > >
> > > +1, we should move people away from brtcl. there is enough confusion
> > > among users looking at bridge attributes.,
> > >
> > > ip -d link show
> > > bridge -d link show
> > > brctl  
> >
> > Why is this confusing? One can simply pick the most appropriate tool.
> >  
> > > Adding a 4th one  to the list is not going to ease the confusion.  
> >
> > Why do you say I'm adding a fourth (I guess) tool? I'm replacing the
> > third one.  
> 
> I know. But the first two commands were supposed to replace the third
> one already.
> and they should be.

They can't replace brctl not because they are badly designed or
unusable, but simply because they are different tools with different
purposes (see also my comments to Nikolay).

> So, I think its better to fix the first two instead of introducing
> another one.

This is really not the same thing: I'm not introducing a new tool, I'm
effectively replacing a 1794-LoC, non-trivial, ioctl-based
implementation with a trivial, 572-lines shell script, with half
the binary size.

I'm not doing this on bridge-utils directly because that would imply
the need to still maintain a different tool. For all practical
maintenance purposes, I'm actually getting rid of a separate tool,
which is my only goal here.

I'd rather say we go from 3 tools to slightly more than 2.

> > > We should try to make the 'ip -d link show and bridge -d link show'
> > > outputs better. Any suggestions there from people will be useful.  
> >
> > To be honest, I don't see any problem with them -- they just do
> > different things.  
> 
> Can we extend 'bridge' tool with extra options to provide a summary
> view of all bridges like brctl ?

We could, and I initially thought of that approach instead, but that
has a number of fundamental downsides:

- we can't provide a brctl-compatible syntax, unless we want to
  substantially rewrite the 'bridge' interface, and I think it's a
  bad idea to break 'bridge' syntax for users, while we won't be able to
  replace brctl if we don't provide a similar syntax, history showed

- the fdb implementation has a long-dated comment by Stephen in its
  header,
	* TODO: merge/replace this with ip neighbour
  and this is actually the only part of 'bridge' I'm using in ip-brctl.
  Code is conceptually duplicated there, and I think we should actually
  get rid of that -- but then 'bridge' wouldn't even give information
  about the FDB, one would need to use ip neighbour instead. 

- 'bridge' doesn't implement settings for basic bridge features (say,
  STP), which are convenient for users, especially if they are used to
  brctl. To get that, even at an interface/syntax level, we would need
  to duplicate some parts of ip-link, which looks like a bad idea per
  se.

> Its supposed to be the netlink based tool for all bridging and hence
> could be a good replacement for all brctl users.

I still think the best replacement for users is the one that changes
absolutely nothing, and if that's easily achievable, I'd rather go for
it.

-- 
Stefano

  reply	other threads:[~2019-01-28  7:57 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-18 17:00 [PATCH iproute2-next] Introduce ip-brctl shell script Stefano Brivio
2019-01-23 15:09 ` Nikolay Aleksandrov
2019-01-23 16:33   ` Roopa Prabhu
2019-01-25 10:05     ` Stefano Brivio
2019-01-28  5:08       ` Roopa Prabhu
2019-01-28  7:57         ` Stefano Brivio [this message]
2019-01-30 22:30           ` Roopa Prabhu
2019-01-31 12:46             ` Stefano Brivio
2019-01-31 16:28               ` Roopa Prabhu
2019-02-05 22:50                 ` Stephen Hemminger
2019-02-06 10:55                   ` Stefano Brivio
2019-01-25 10:04   ` Stefano Brivio
2019-01-30  4:51 ` David Ahern
2019-01-30 10:55   ` Stefano Brivio
2019-01-31  5:12     ` David Ahern
2019-01-31 12:46       ` Stefano Brivio
2019-01-31 12:49 ` Stefano Brivio

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=20190128085748.57cbeff5@redhat.com \
    --to=sbrivio@redhat.com \
    --cc=buytenh@gnu.org \
    --cc=dsahern@gmail.com \
    --cc=egarver@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=nikolay@cumulusnetworks.com \
    --cc=phil@nwl.cc \
    --cc=roopa@cumulusnetworks.com \
    --cc=stephen@networkplumber.org \
    --cc=todoleza@redhat.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).