Sebastien Roy wrote:
> An additional protocol, MVRP, exists for registering VLANs. MVRP
> is intended to supersede and replace GVRP. However, few switch
> designers have adopted MVRP and GVRP remains the standard protocol
> for this function. Moreover, customers have specifically requested
> support for announcing VLAN IDs to the network with GVRP.

I'm a little surprised by this.  GVRP has effectively no security,
meaning that either clients can register for arbitrary VLANs in your
network (often a bad thing, given that VLANs are usually used to
segregate traffic for security reasons) or that you're forced to
configure per-port filters of allowed registrations.  If you do the
latter, it's usually simpler just to configure the required per-port
VLANs and be done with it, not needing the complexity of dynamic
registration at all.

So what's the deal with the folks wanting GVRP?  Are they unaware of the
security issues, or do they have a usage case where they don't care?

Also, one detailed question on the intended implementation: there's no
need to send any GVRP messages if the only link in use on a port is the
PVID.  Is that optimization made?  If I have "vlan-announce" set to
"gvrp" and I have only (say) "e1000g0" plumbed, do I get empty GVRP
messages?

> Although this system uses GVRP to announce VLAN IDs, it is
> not an implementation of full 802.1d GVRP protocol and state
> machine. This project only sends request -- in order to
> propagate VLAN information from VNICs/VSwitches/to real switches
> and bridges. Specifically, the system does not process incoming
> GVRP packets. An appropriate place to implement the full GVRP
> state machine would be in the ethernet bridge module
> (PSARC 2008/055).

For what it's worth, we didn't bother doing this in the bridging code
because (A) there's no security, (B) the implementation is pretty
complex, and (C) there's no point in it if typical clients today aren't
bothering to announce their desires.

If GVRP is "real," I'd suggest defaulting "vlan-announce" to "gvrp."
Otherwise, we're just perpetuating the environment in which it's
impossible to deploy GVRP for real: if clients aren't asking by default,
then you can't really use it.  There's a chicken-and-egg problem here.

I realize this project should be a quite simple change, and is perhaps a
good idea just on spec, but I can't help wondering whether anyone benefits.

-- 
James Carlson         42.703N 71.076W         <carlsonj at workingcode.com>

Reply via email to