James Carlson wrote:
> I'm sponsoring this fast-track request for myself.  The timer is set
> to 02/04/2008.  The release binding is "Minor" (because we depend on
> projects that have Minor binding and do not plan to work on a
> back-port) and the interface stability is listed at the end of the
> document.

Overall I'm very happy with this specification. I only have a few nits 
and questions below.

> The bridging protocol referred to in this document is the IEEE
> 802.1D-1998 "Spanning Tree Protocol," abbreviated in this document as
> "STP."  The newer and far more complex "Multiple Spanning Tree
> Protocol" (802.1Q-2005; MSTP) is intended to be backward compatible
> with STP, and is not part of this project, but may be the subject of a
> future project.

OK


>     dladm create-bridge [-t] [-R <root-dir>] [-p <priority>]
>       [-m <max-age>] [-h <hello-time>] [-d <forward-delay>]
>       [-f <force-protocol>] [-l <link>]... <bridge-name>

Given that there might be some future project that does RSTP or MSTP, 
wouldn't it make sense to have some notion of "bridge type" in the 
create-bridge syntax? That would seem to make it easier to introduce new 
types down the road. Then the initial type can be called "STP" and/or 
"802.1D-1998".

If the create-bridge is supposed to be limited to the backwards 
compatible set of IEEE 802.1D/802.1Q bridge protocols then you probably 
don't need a type since '-f' can be used to control those. Do you intend 
to limit it in that way?

>       This command creates a bridge instance and optionally assigns
>       network links to the new bridge.  By default, no bridge
>       instances are present, and OpenSolaris will not bridge between
>       network links.  See the "add-bridge" subcommand for details on
>       link assignment.

You say "assigns links". Does that mean that there can be multiple -l 
options to specify multiple links? Or is this subcommand limited to at 
most one link?


>       In this initial version, the links must also be Ethernet type.

Do we have a well-define notion of "Ethernet" for dladm?
Typing various dladm show-* on my machine just seems to tell me that my 
links are "non-vlan", which isn't sufficient to tell e.g., Ethernet and 
802.11 apart.


> 1.2 New dladm Link Properties
> 
>     "stp"
> 
>       This is a boolean property.  It defaults to "true."  When set
>       to "false," the link will not use Spanning Tree, and will be
>       placed into forwarding mode at all times.  The "false" setting
>       is appropriate for point-to-point links connected to end
>       nodes.  Only non-VLAN type links have this property.

I wonder if it would be better, since we might have rstp or mstp in the 
future, to use Cisco type terminology for this (which I think is 
"portfast" or something like that.)

>     "stp-priority"
>     "stp-cost"

Could we/should we avoid "stp" in those names?

>     By default, all ports run standard STP.  This is done for safety
>     reasons: a bridge that does not run some form of bridging protocol
>     (such as STP) can form long-lasting forwarding loops in the
>     network.  Because Ethernet has no hop-count or TTL on packets, any
>     such loops are fatal to the network.
> 
>     When the adminstrator knows that a particular port is not
>     connected to another bridge (for example, a direct point-to-point
>     connection to a host system), STP can be disabled administratively
>     for that port.  Even if all ports on a bridge have STP disabled,
>     the STP daemon still runs; this is in case new ports are added,
>     and because it is responsible for enabling and disabling
>     forwarding on the ports.

This is a design issue and not an architectural issue. (Thus I should 
really have sent it as a separate email to the project team.):
For safety reasons, does the daemon watch for Bridge PDUs on the ports 
that have STP disabled? (There shouldn't be any, thus there existence is 
a red flag that the link probably isn't a point-to-point connection to a 
host system.)

    Erik

Reply via email to