Requested revision
Standard: | IEEE Std 802.1Q-2014 | Clause: | 35 |
Clause title: | Stream Reservation Protocol (SRP) |
Rationale for revision
At the last minute, when 802.1BA was written, we noticed that VLAN 1, by
default, is transmitted without a C-tag. This is a problem, because AVB
streams (pretty much) require a priority field. The fix we came up with,
at the time, was to create the SR_PVID (2), and default AVB traffic to
VLAN 2. This is a problem, because it means that AVB traffic can’t use
VLAN 1 plug-and-play, which interferes with the normal use of VLANs in a
network, e.g. to separate IP subnets.
In retrospect, there was a better solution available. That solution WOULD
HAV BEEN as follows (It’s too late, now, but we need to understand it,
first.):
We have a per-Bridge Port variable that contains two values for “transmit
the PVID on this port tagged/untagged”, one to use if the port is an SRP
core port, and one if it is not. Then, as the port transitions in or out
of core port status, the state of the port can change with respect to
transmitting the default VLAN with or without a tag. The 802.1BA default
would be “untagged, tagged” for “not core, core” respectively. We would
then have no beed for the SR_PVID.
But, since the SR_PVID is there, I would recommend we define that same
variable (in Clauses 12 and 17), but define it for the SR_PVID, not the
PVID, and mention that, if the SR_PVID is configured to equal the PVID,
that variable applies, just the same. Thus, if the Bridge is configured
with SR_PVID = PVID = 1, “core tagged, non-core untagged”, then it works
like I think we should have defined it in the first place. If the Bridge
is configured with SR_PVID = 2, PVID = 1, “tagged, tagged”, it works like
it does, today. Either way, the out-of-the-box default behavior is “PVID
1 is untagged”, as has always been the case.
Of course, this has to be explained in Clause 35.
Proposed text
I think the following is the minimum change to be made to 802.1Q. There
are a few other clauses (e.g. the definition of core port in clause 3, or
the definition of the “this is a core port” variable) that we could
change, but I’m not sure that’s necessary.
Add the core/not variables to Clauses 12 and 17, presumably in the same
sections where the PVID and SR_PVID are now defined.
Mention this in a NOTE 4 in 8.8.2.
Add explanatory why/how text somewhere in Clause 35; I think 35.1 is the
best place.
Add a “shall” clause to 35.1.4 saying that the Static VLAN Registration
Entry for transmitting the SR_PVID tagged/untagged changes when the core
port status changes.
Impact on existing networks
The default values of the new variables would leave today’s behavior
unchanged for both AVB and non-AVB use. However, it would make it
possible to build networks where TSN was an add-on feature available to
all flows, instead of requiring a special-built application to use it.
(I.e. AVB traffic can safely use VLAN 1 in a plug-and-play world for its
IP multicast traffic.)
Note that changes to 802.1BA might also be desirable.
Originator
Name: | Norman Finn | Email: | nfinn@cisco.com |
Affiliation: | Cisco Systems | ||
Submitted: | 2015-01-21 |