[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070424.162027.65818763.davem@davemloft.net>
Date: Tue, 24 Apr 2007 16:20:27 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: shemminger@...ux-foundation.org
Cc: netdev@...r.kernel.org
Subject: Re: [RFC] bridge: if no STP then forward all BPDU's
From: Stephen Hemminger <shemminger@...ux-foundation.org>
Date: Tue, 24 Apr 2007 16:12:26 -0700
> The bridge code by default captures all spanning tree packets and
> doesn't forward them. I propose that this might not be a good idea.
>
> If a bridge is not running STP, then it has no way to detect a cycle
> in the network (by itself). But if some other machine is running STP,
> then if STP BPDU's get forwarded to the STP can detect the cycle
> (and turn off that link).
>
> +------------+ <-BPDU- +--------+
> | transparent|==========| STP |
> | bridge |==========| bridge |=== ...
> +------------+ -BPDU-> +--------+
>
>
> Signed-off-by: Stephen Hemminger <shemminger@...ux-foundation.org>
This makes a lot of sense, but I wonder about something:
old code:
> - if (unlikely(is_link_local(dest))) {
> - skb->pkt_type = PACKET_HOST;
new code:
> + if (p->br->stp_enabled != BR_NO_STP && is_link_local(dest)) {
> + /* skb->pkt_type should already be PACKET_MULTICAST */
So what is the true deal wrt. skb->pkt_type. The original
code must have been setting it to PACKET_HOST for a reason,
won't leaving it at PACKET_MULTICAST break something?
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists