Subject: [rbridge] VLAN tags, inner/outer, revisted and summarized

From: Radia.Perlman at sun.com (Radia Perlman)
Date: Thu, 30 Nov 2006 19:36:30 -0800

There's been a lot of discussion, and I believe this is what is going 
on: In this email I will attempt to just
explain, and not advocate. If I want to express opinions, I'll reply to 
this.

The first question we have to ask is what things people are  doing with 
VLANs. The next is to ask
which subset of these (possibly "all") we want to support with TRILL, 
and to answer that we have
to also answer what the cost/benefit of solving each with TRILL is.

Things VLANs can provide:
a) separate endnodes into communities, to enforce that only VLAN A nodes 
can talk to VLAN A nodes
b) scoping things like ARP, so an ARP for a VLAN A node only gets sent 
on VLAN A links
c) security -- making sure that VLAN A nodes cannot snoop on VLAN B traffic
d) provisioning -- making sure that the only traffic on a VLAN A link is 
VLAN A traffic, or
perhaps BGP-policy-like, as in, "this link is willing to carry VLANs A, 
B, and Q, but not D".

Perhaps this is not an exhaustive list, but I hope it's close enough.

What are the costs of providing these things?

The solution that I'd been assuming solves a) and b). That solution is 
summarized as follows:
If RBridges R1 and R2 are on the same link, they are neighbors, and they 
can send transit traffic to each other,
regardless of the VLAN on which it originated. This can be thought of as 
RBridges create a cloud,
which keeps VLAN traffic segregated at the endpoints, but is a single 
shared infrastructure for all
VLANs within the cloud.

That solution does not solve c) and d), though if the transit links are 
all point-to-point links
between RBridges, this is moot. The case that isn't solved is when a 
link is both a transit link
and a shared link with a bunch of endnodes in a VLAN.

Suppose we want to solve those?

What I think people would be asking for is to have the VLAN determine 
not just the destination, but what
path the packet takes. So some links would only allow certain VLAN 
traffic on them, even for transit.
Which would mean multiple forwarding tables, since paths would have to 
be VLAN-dependent.

So, I think the basic strategies are:

a) create as much connectivity as possible between RBridge neighbors. If 
R1,  R2, and R3 are on the same
shared/bridged link, and R1 can only talk to R2 if it puts "VLAN X" into 
the header, and R1 can only
talk to R3 if it puts "VLAN Y" into the header, R1 discovers this case 
by being configured that the
link needs either VLAN X or VLAN Y tags, sends IS-IS Hellos with both, 
and wdiscovers that on the
adjacency to R2, R1 has to stick "VLAN X" and to R3, R1 has to stick 
"VLAN Y". So R1 does whatever
is necessary to talk to its neighbors, but it is only relevant on the 
hop. R1 reports in its link state packet that
it has a neighbor R2, and R3. All RBridges can use the link for transit 
for all VLANs.

b) only allow R1 and R2 to be IS-IS neighbors if they can talk to each 
other with a null VLAN tag. A link
that requires a VLAN tag can only be used as an ingress or egress link 
from the cloud.

c) copy the VLAN tag to the outer header, assume any link that requires 
a particular VLAN tag wants to exclude
transit traffic for all other VLANs, or even for null tags, on the link 
Run separate core instances of IS-IS for
each VLAN tag. Perhaps announcing in the VLAN A instance, all VLAN A 
links, plus links that allow
for null tags.

d) like with c), but allow a link to be configured as "there are VLAN A 
endnodes here, but transit traffic for any VLAN
is fine".

Solutions c) and d) require separate forwarding tables per VLAN, and 
either separate instances of IS-IS, or
a link attribute that lists legal VLAN tags for the link. VLAN A 
segments might become disconnected
because although there is RBridge connectivity, it isn't through links 
that say it's OK to have VLAN A traffic.

Radia

Date: Thu, 30 Nov 2006 19:36:30 -0800
From: Radia Perlman <[email-masked]>
To: [email-masked]
Subject: [rbridge] VLAN tags, inner/outer, revisted and summarized
Status: RO
Content-Length: 3827

There's been a lot of discussion, and I believe this is what is going 
on: In this email I will attempt to just
explain, and not advocate. If I want to express opinions, I'll reply to 
this.

The first question we have to ask is what things people are  doing with 
VLANs. The next is to ask
which subset of these (possibly "all") we want to support with TRILL, 
and to answer that we have
to also answer what the cost/benefit of solving each with TRILL is.

Things VLANs can provide:
a) separate endnodes into communities, to enforce that only VLAN A nodes 
can talk to VLAN A nodes
b) scoping things like ARP, so an ARP for a VLAN A node only gets sent 
on VLAN A links
c) security -- making sure that VLAN A nodes cannot snoop on VLAN B traffic
d) provisioning -- making sure that the only traffic on a VLAN A link is 
VLAN A traffic, or
perhaps BGP-policy-like, as in, "this link is willing to carry VLANs A, 
B, and Q, but not D".

Perhaps this is not an exhaustive list, but I hope it's close enough.

What are the costs of providing these things?

The solution that I'd been assuming solves a) and b). That solution is 
summarized as follows:
If RBridges R1 and R2 are on the same link, they are neighbors, and they 
can send transit traffic to each other,
regardless of the VLAN on which it originated. This can be thought of as 
RBridges create a cloud,
which keeps VLAN traffic segregated at the endpoints, but is a single 
shared infrastructure for all
VLANs within the cloud.

That solution does not solve c) and d), though if the transit links are 
all point-to-point links
between RBridges, this is moot. The case that isn't solved is when a 
link is both a transit link
and a shared link with a bunch of endnodes in a VLAN.

Suppose we want to solve those?

What I think people would be asking for is to have the VLAN determine 
not just the destination, but what
path the packet takes. So some links would only allow certain VLAN 
traffic on them, even for transit.
Which would mean multiple forwarding tables, since paths would have to 
be VLAN-dependent.

So, I think the basic strategies are:

a) create as much connectivity as possible between RBridge neighbors. If 
R1,  R2, and R3 are on the same
shared/bridged link, and R1 can only talk to R2 if it puts "VLAN X" into 
the header, and R1 can only
talk to R3 if it puts "VLAN Y" into the header, R1 discovers this case 
by being configured that the
link needs either VLAN X or VLAN Y tags, sends IS-IS Hellos with both, 
and wdiscovers that on the
adjacency to R2, R1 has to stick "VLAN X" and to R3, R1 has to stick 
"VLAN Y". So R1 does whatever
is necessary to talk to its neighbors, but it is only relevant on the 
hop. R1 reports in its link state packet that
it has a neighbor R2, and R3. All RBridges can use the link for transit 
for all VLANs.

b) only allow R1 and R2 to be IS-IS neighbors if they can talk to each 
other with a null VLAN tag. A link
that requires a VLAN tag can only be used as an ingress or egress link 
from the cloud.

c) copy the VLAN tag to the outer header, assume any link that requires 
a particular VLAN tag wants to exclude
transit traffic for all other VLANs, or even for null tags, on the link 
Run separate core instances of IS-IS for
each VLAN tag. Perhaps announcing in the VLAN A instance, all VLAN A 
links, plus links that allow
for null tags.

d) like with c), but allow a link to be configured as "there are VLAN A 
endnodes here, but transit traffic for any VLAN
is fine".

Solutions c) and d) require separate forwarding tables per VLAN, and 
either separate instances of IS-IS, or
a link attribute that lists legal VLAN tags for the link. VLAN A 
segments might become disconnected
because although there is RBridge connectivity, it isn't through links 
that say it's OK to have VLAN A traffic.

Radia

Date: Wed, 29 Nov 2006 20:27:10 -0800
From: [email-masked]
To: Eastlake III Donald-LDE008 <[email-masked]>
Priority: normal
Cc: [email-masked]
Subject: Re: [rbridge] Extensions
Status: RO
Content-Length: 2521

Clearly making the ability to add fields in the future in a compatible way gives flexibility. Having TLV
encoding in IS-IS has proven to be really valuable.

On the other hand, questions  that should be asked are:

a) why not? As in, what is the cost of doing this future flexibility?
b) what kinds of features might we imagine
c) is there any other way of adding features in the future in a compatible way?

I'll make a stab at some of these
a) Why not?
Perhaps complexity of forwarding decision, or perceived complexity of the protocol that might discourage adoption.
If all the fields necessary for current functionality are in the fixed portion of the shim, and RBridges that don't
do the feature can ignore it, then that would not be a problem. But for instance, if they have to look at the inner
header to find the VLAN tag (in order to know whether to filter a multicast), or the inner destination address (for
IP derived multicast -- though maybe it's the layer 3 destination address that matters...not sure), then having
a variable length shim header could be a cost
b) features: LIDs ... any others?
c) not sure

Radia

----- Original Message -----
From: Eastlake III Donald-LDE008 <[email-masked]>
Date: Wednesday, November 29, 2006 7:58 pm
Subject: [rbridge] Extensions

> Hi,
> 
> It is not so much that I think that TRILL needs any particular 
> extensionadded right now, it is just that if there is ever a reason 
> to add an
> extension, it would be good for the extension framework to have been
> decided in advance. The presentation that I didn't have time to 
> make at
> the TRILL WG meeting in San Diego has now been converted from MS Power
> Point and is on the Working Group agendas and presentations web 
> page for
> the 67th IETF meeting in HTML and is also available at
> http://www.pothole.com/~dee3 in PDF.
> 
> Donald
> 
> -----Original Message-----
> From: [email-masked] [[email-masked]] On
> Behalf Of Radia Perlman
> Sent: Monday, November 13, 2006 8:01 PM
> Cc: [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> ......
> 
> Another thing we haven't talked about on the list (and ran out of time
> at the meeting), is Don Eastlake's suggestion of allowing the shim
> header to be variable length, so that we can optionally put in thing
> like LIDs.
> 
> Radia
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 

Content-class: urn:content-classes:message
Date: Wed, 29 Nov 2006 22:58:25 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: [rbridge] Extensions
Status: RO
Content-Length: 1013

Hi,

It is not so much that I think that TRILL needs any particular extension
added right now, it is just that if there is ever a reason to add an
extension, it would be good for the extension framework to have been
decided in advance. The presentation that I didn't have time to make at
the TRILL WG meeting in San Diego has now been converted from MS Power
Point and is on the Working Group agendas and presentations web page for
the 67th IETF meeting in HTML and is also available at
http://www.pothole.com/~dee3 in PDF.

Donald

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Monday, November 13, 2006 8:01 PM
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?

......

Another thing we haven't talked about on the list (and ran out of time
at the meeting), is Don Eastlake's suggestion of allowing the shim
header to be variable length, so that we can optionally put in thing
like LIDs.

Radia

Date: Wed, 29 Nov 2006 19:20:45 -0800
From: [email-masked]
To: [email-masked]
Priority: normal
Subject: [rbridge] Terminology issues -- advice?
Status: RO
Content-Length: 1118

(I'm editing the protocol document, which is why these things are coming up).

I notice that in the architecture document, the term "campus" is not used, although it was always
part of the protocol document. Instead there is the term "CRED". I suggest going back to "campus", because
that's a word that people can understand, whereas "CRED" is yet another acronym, which makes things
harder to understand. I thought originally that CRED was supposed to be the campus minus the endnodes,
and didn't quite understand why it was necessary to have a separate word for it. But if the architecture
document doesn't think there needs to be two terms ("campus" for CRED plus endnodes), then I think
we should just use "campus". Again, because people will intuitively understand the word since it is an English word.

A second issue is with the term "ingress RBridge tree". Now that we allow the ingress RBridge to select a distribution
tree, it's not really right to use the term "ingress RBridge tree", since it is really the "chosen tree". Not sure
what a better term would be. Perhaps "distribution tree".

Thanks,

Radia

Content-class: urn:content-classes:message
Date: Wed, 29 Nov 2006 22:20:01 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] The "wiring closet" problem
Status: RO
Content-Length: 3852

Hi,

Although the second example you give could be a problem, I'm not sure
with today's typical star configurations it would occur much.

What I have heard referred to as the wiring closet problem is your first
case. Typically described as B1 and B2 being in the closet, so they are
very close and high bandwidth communication between them is fairly easy,
while the B1-R1 and B2-R2 links are longer distance, higher cost, and
lower bandwidth, so you want to be sure to use them both if they are
both up to get the maximum bandwidth from the E* to the campus. The
scenario considered is usually the failure of the longer communications
links, rather than an Rbridge, although they are operationally pretty
similar.

Donald

PS: Of course, things work if you replace B1 and B2 with Rbridges but
that does not allow incremental deployment.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of [email-masked]
Sent: Wednesday, November 29, 2006 8:32 PM
To: [email-masked]
Subject: [rbridge] The "wiriding closet" problem

I've had a couple of people explain what the "wiring closet" issue is,
and I have two potential pictures for it.
I think there's a reasonable solution for either picture, but it would
be good if someone could define what the problem is.

I will make an attempt, and that way you can correct me rather than
trying to explain it from scratch, if that's easier.

The problem is to have a bunch of end nodes attached to the campus via
multiple RBridges (for redundancy as well as load splitting). So let's
simplify it to two: R1 and R2 are attached to the campus, and to a bunch
of end nodes.

           campus

         |         |
         R1        R2
          |         |
          B1 ------ B2
          |          |
    --------       ---------
     E1 E2           E3 E4

Without thinking about this at all, the default would be that one of R1
or R2 would become DR, and the other would not forward traffic to or
from the campus. That means that if R1 was selected DR, traffic from E3
would have to go via R1.

So the desire is to have the spanning tree break the B1-B2 link in the
case where both R1 and R2 are up, but have that link available in case
either R1 or R2 fails.

This can be accomplished by configuring R1 and R2 to pretend they are
one hop away from a fictitious Root spanning tree bridge inside the
campus.

*********
Another potential configuration I've heard of as the "wiring closet
problem" is to do away with the bridges, and have this topology:

           campus

       |         |      |
       R1        R2     R3
        |         |      |
 ----------------------------
      |  |     |     |
      E1 E2    E3    E4

Again, the desire is to load split between R1,  R2, and R3, as long as
they are both up.

This can be accomplished by configuring the RBridge which is DR to
assign end nodes to other RBridges on the link. R1 knows, based on the
IS-IS router hellos, that R2 and R3 are also RBridges on the link, and
that R1 is DR. R1 could assign blocks of MAC addresses (I'd guess based
on a mask) to each of the other RBridges. If, for instance, it tells R2
to be in charge of odd MAC addresses, then only R2 learns the location
of odd-numbered MAC addresses on the link, announces those in R2's link
state information, and only R2 forwards packets from odd-MAC addresses
off the link, and decapsulates traffic for odd-MAC addresses onto the
link. In essence it winds up looking like n different disconnected LANs,
one that happens to have odd MAC addresses, the others whatever
partitioning R1 assigns.

Are there any other cases? Are these solutions to these cases OK with
people?

Radia

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Wed, 29 Nov 2006 17:31:48 -0800
From: [email-masked]
To: [email-masked]
Priority: normal
Subject: [rbridge] The "wiriding closet" problem
Status: RO
Content-Length: 2790

I've had a couple of people explain what the "wiring closet" issue is, and I have two potential pictures for it.
I think there's a reasonable solution for either picture, but it would be good if someone could define what the
problem is.

I will make an attempt, and that way you can correct me rather than trying to explain it from scratch, if that's easier.

The problem is to have a bunch of endnodes attached to the campus via multiple RBridges (for redundancy
as well as load splitting). So let's simplify it to two: R1 and R2 are attached to the campus, and to a bunch of
endnodes.

                  campus

                  |            |
                R1        R2
                  |            |
                B1 ------ B2
                |                 |
           --------           ---------
             E1 E2           E3 E4

Without thinking about this at all, the default would be that one of R1 or R2 would become DR, and the other
would not forward traffic to or from the campus. That means that if R1 was selected DR, traffic from E3 would
have to go via R1.

So the desire is to have the spanning tree break the B1-B2 link in the case where both R1 and R2 are up,
but have that link available in case either R1 or R2 fails.

This can be accomplished by configuring R1 and R2 to pretend they are one hop away from a fictitious Root spanning
tree bridge inside the campus.

*********
Another potential configuration I've heard of as the "wiring closet problem" is to do away with the bridges, and have
this topology:

                  campus

                  |            |         |
                R1        R2     R3
                  |            |        |
           ----------------------------
                   |    |        |         |
                 E1 E2    E3    E4

Again, the desire is to load split between R1,  R2, and R3, as long as they are both up.

This can be accomplished by configuring the RBridge which is DR to assign endnodes to other RBridges
on the link. R1 knows, based on the IS-IS router hellos, that R2 and R3 are also RBridges on the link, and
that R1 is DR. R1 could assign blocks of MAC addresses (I'd guess based on a mask) to each
of the other RBridges. If, for instance, it tells R2 to be in charge of odd MAC addresses, then only R2 learns
the location of odd-numbered MAC addresses on the link, announces those in R2's link state information, and
only R2 forwards packets from odd-MAC addresses off the link, and decapsulates traffic for odd-MAC addresses
onto the link. In essence it winds up looking like n different disconnected LANs, one that happens to have
odd MAC addresses, the others whatever partitioning R1 assigns.

Are there any other cases? Are these solutions to these cases OK with people?

Radia

Content-class: urn:content-classes:message
Date: Tue, 21 Nov 2006 14:05:05 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] Working Group Last Call on Problem and Applicability Statement and Routing Requirements, Expert Review of Architecture Draft
Status: RO
Content-Length: 3292

Hi,

We are concluding the working group last calls on the Routing
Requirements draft and the Problem and Applicability Statement draft.

draft-ietf-trill-routing-reqs-00.txt has working group rough consensus.
The comments in
http://www.postel.org/pipermail/rbridge/2006-November/001659.html should
be generally incorporated. With regard to BPDUs, the document should say
that they may be processed at Rbridge interfaces but do not transit the
Rbridge. It is fine to also say that Rbridges terminate bridging
spanning trees. When a revised version of the draft is produced, we
expect to forward it to our AD with a request that it be published as an
Informational RFC.

draft-ietf-trill-prob-01.txt does not have working group consensus but
the last call has produced a number of useful comments. These and future
comments should be incorporated and at some future point we plan to have
another working group last call on a subsequent version of the draft.

Thanks,
Donald and Erik

Eastlake III Donald-LDE008 wrote:
> Hi,
> 
> TRILL now has three drafts which have been discussed within the TRILL 
> working group, improved based on mailing list comments, and about 
> which there does not seem to be a current serious controversy (in some

> cases these draft went through multiple versions as personal drafts 
> before being adopted as working group drafts):
> 
> 1	Transparent Interconnection of Lots of Links (TRILL): Problem
> and Applicability Statement 
> 	draft-ietf-trill-prob-01.txt
> 
> 2	The Architecture of an RBridge Solution to TRILL 
> 	draft-ietf-trill-rbridge-arch-01.txt
> 
> 3	TRILL Routing Requirements in Support of RBridges
> 	draft-ietf-trill-routing-reqs-00.txt
> 
> We have decided to initiate a two week working group last call on the 
> first and third of these: the Problem and Applicability Statement 
> draft and the Routing Requirements draft. This will run through 
> Wednesday, 8 November. Please post any further comments on these 
> drafts to the mailing list, preferably in a separate message for each
draft.
> 
> We also plan to allocate some time for comments on these two drafts at

> the TRILL WG meeting in San Diego which is during the last call
period.
> Based on the feedback we get, we expect to decided for each of these 
> two drafts whether to forward it to the IESG as is, forward it with 
> minor changes, or continue to work on it within the working group.
> 
> Our charter requires that the second draft above, the Architecture 
> draft, be subject to IEEE/IETF expert review. It seems reasonable to 
> do this review before working group last call. Accordingly, we are 
> arranging such review. If you would like to suggest an expert to 
> review the Architecture draft, preferably someone who has not been 
> heavily involved with TRILL thus far, please contact us directly. We 
> also plan to allocate some time at the San Diego meeting for comments 
> on the Architecture draft.
> 
> Thanks,
> Donald and Erik
> 
> [email-masked], [email-masked]
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> From - Fri

--
----------------------------------------
Joe Touch
Sr. Network Engineer, USAF TSAT Space Segment

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Radia Perlman <[email-masked]>
Date: Tue, 21 Nov 2006 13:18:42 -0500
Cc: [email-masked]
Subject: Re: [rbridge] Summary of IVLANs vs OVLANs
Status: RO
Content-Length: 12387

Silvano,

	With the qualification that "under a single management" means
that - if VLAN tagging is required for fractional LAN traversal - 
then VLAN tags will be assigned consistently, then I understand your
position.  That is not to say that I agree with it.

	A question for clarification: assuming a real world deployment
(in an enterprise environment) where VLANs are used both to protect
and segregate traffic, how does Radia's proposal prevent potential
"leakage" from one (end-station) VLAN to another?

	When I first read Radia's proposal, I thought (for one minute)
that she was arguing for this as a "logical model" - where practical
implementations might actually be more clever/efficient.  It might
have been reasonable to assume that the intervention of a router is
going to bound the RBridge domain (as it does a broadcast domain).

	However this does not prevent the discovery of an RBridge - as
an IS-IS (L2-specific) peer, even if the same physical RBridge is a
part of multiple VLANs.  Consequently, that logical model necessitates 
creation of separate IS-IS instances on a per-VLAN basis in RBridges
that span multiple VLANs, further resulting in over-lapping RBridge
"CREDs" and potentially forcing each (physical) RBridge to be able to
participate in each CRED.  Note that this effectively forces RBridge
implementations to support per-VLAN trees explicitly (as opposed to
implicitly as originally suggested in previous discussions involving
IRTs and VLAN optimization).

	As a second question for clarification: are we prepared to both
mandate RBridges MUST support IS-IS instancing per-VLAN and that they
MUST also be capable of participation in multiple CREDs including the
formation of per-VLAN p2mp trees?

	Also, even though there is a "hard limit" of 4k VLANs in both
the end-station and RBridge domains, that does not mean I want to be
REQUIRED to configure up to 4k VLANs in my core switches.

--
Eric

> -----Original Message-----
> From: Silvano Gai [mailto:[email-masked]] 
> Sent: Tuesday, November 21, 2006 12:51 PM
> To: Gray, Eric; Radia Perlman
> Cc: Russ White; [email-masked]
> Subject: RE: Summary of IVLANs vs OVLANs
> 
> 
> Eric,
> 
> I see only two possible uses for the OVLAN:
> 
> 1) The one that Radia proposes, that I think is appropriate for an
> Enterprise environment, where the TRILL network is under a single
> management;
> 
> 2) The one proposed in metro Ethernet in which the OVLAN (there called
> S-VLAN) identifies a particular customer and the IVLAN contains the
> customer VLAN. I know Ali Sajassi is in favor of this model.
> 
> I don't see any advantage of deriving the OVLAN from an "N:1 mapping
> from the inner VLAN tag": 
> - It does not increase scalability, since the overall number of VLANs
> will remain 4K;
> - It adds complexity and the need for a protocol to keep the 
> mapping in
> synch among different Rbridges;
> - It does not increase segregation, since segregation and pruning is
> anyhow performed on the IVLAN;
> - It requires unnecessary inner header lookup.
> 
> For these reasons my consensus is with Radia proposal.
> 
> -- Silvano
> 
> ----------------------------------------------------------------
> 
> 
> > -----Original Message-----
> > From: Gray, Eric [mailto:[email-masked]]
> > Sent: Tuesday, November 21, 2006 8:11 AM
> > To: Radia Perlman
> > Cc: Silvano Gai; Russ White; [email-masked]
> > Subject: RE: Summary of IVLANs vs OVLANs
> > 
> > Radia,
> > 
> > 	I think that this may be a summary of your perspective on the
> > use of VLANs, but I do not believe that this perspective has been
> > discussed generally.  Nor do I believe that it has been agreed to
> > by any sort of "rough consensus" subset within the working group.
> > 
> > 	However, I may be wrong, so I would like to suggest that we
> > (as a working group) discuss the "summary" you have provided.  If
> > I am wrong, then I suggest the members of that "subset" may need
> > to re-think their position.
> > 
> > 	I am reasonably sure that many people would like to use VLAN
> > tags in the RBridge domain as a means to form reasonable aggregates
> > of the VLANs among end-stations.  In this sense, the outer VLAN tag
> > is derived simply as an N:1 mapping from the inner VLAN tag - and,
> > as a result of this is, there will be a dependence on the inner tag
> > in how forwarding occurs between RBridges.
> > 
> > 	This approach helps scalability in two ways: one, it allows
> > for reduced VLAN configuration among RBridges to support a larger
> > quantity of end-station VLANs; two, it allows some subset of the
> > RBridge topology to avoid deriving and storing forwarding entries
> > for traffic they should not need to forward.
> > 
> > 	Arguably the latter scalability concern is eliminated by the
> > use of per-ingress p2mp forwarding trees.  However, it has been
> > suggested that we might not do that - hence it is important to bear
> > this in mind.  One potential use of VLANs between RBridges is to
> > allow for sub-setting of spanning trees (assuming we decide to use
> > spanning trees between RBridges) using the existing techniques we
> > already have defined in 802.1D (2004) - i.e. - MSTP.
> > 
> > 	It is even possible that some people may be thinking of using
> > VLAN tags in other ways.  If so, I would like to hear their ideas.
> > For one thing, it is clear that we MUST decide on some set of uses
> > that are compatible, and it is clear that the use outlined in your
> > summary is fundamentally incompatible with the use I (and, I assume,
> > other people) have assumed.  It is also incompatible with standard
> > usage as defined in 802.1Q, and new proposals currently in process
> > in the IEEE.
> > 
> > 	As a more-or-less philosophical clarification, it does not
> > make sense to configure VLANs in RBridges to accommodate the VLAN
> > tags used by the intervening fractional-LANs (what we have been
> > calling "LAN segments") between two RBridges.  VLAN tags SHOULD be
> > used to accommodate connectivity among RBridges across the under-
> > lying fractional LANs (just as they are to accommodate connectivity
> > among end-stations) - and not the other way around.
> > 
> > 	From the perspective of existing 802.1D bridges, RBridges are
> > end-stations.  You decide which end-stations require connectivity,
> > you assign them to the same VLAN, and then you configure the VLAN
> > information in the VLAN bridges.
> > 
> > 	Also, the idea of potentially "switching" from one VLAN tag
> > to another across and RBridge to accommodate a presumed under-lying
> > VLAN tagging arrangement seems broken.  We would need to consider a
> > lot of potential corner-cases - particularly during deployment and
> > re-configuration - to determine if this will even work.  For one
> > thing, there are interesting problems that arise as a result of not
> > consistently using the same VLAN tags within a single administrative
> > domain.
> > 
> > 	I assume we have not yet decided to tackle the "multi-domain"
> > problem in TRILL, given that it is supposed to be a LAN-oriented,
> > plug-and-play capable, enterprise solution...
> > 
> > --
> > Eric
> > 
> > > -----Original Message-----
> > > From: Radia Perlman [mailto:[email-masked]]
> > > Sent: Monday, November 20, 2006 8:36 PM
> > > To: Gray, Eric
> > > Cc: 'Silvano Gai'; Russ White; [email-masked]
> > > Subject: Summary of IVLANs vs OVLANs
> > >
> > > I don't think there is an issue here, but let me hopefully
> > > clarify the
> > > purpose of a VLAN tag on the inner frame
> > > vs a VLAN tag which might appear on the outer header.
> > >
> > > **********
> > > First: Purpose of "inner" VLAN tag
> > > ___________________________
> > >
> > >
> > > The purpose of the inner tag is to provide separation for endnode
> > > communities. In other words, VLAN A
> > > endnodes can only talk to VLAN A endnodes. The VLAN tag is either
> > > inserted by the original endnode,
> > > or the first bridge or RBridge that receives the frame. What
> > > tag to put
> > > in, whether to strip it, is configured
> > > into RBridges exactly as it would be with bridges.
> > >
> > > The inner VLAN tag is irrelevant for how the frame is
> > > forwarded between
> > > the RBridges.
> > >
> > > RBridges are willing to forward all frames, regardless of the
> > > inner VLAN
> > > tag. They forward towards the
> > > egress RBridge, totally ignoring the inner VLAN tag on
> > > unicast packets.
> > > On multicast, however, they
> > > will look at the VLAN tag on the inner frame to decide if they
> should
> > > filter on some outgoing ports
> > > for the selected multicast tree, because there are no
> > > downstream links
> > > for that VLAN tag.
> > >
> > > *******************
> > > Now for the outer VLAN tag
> > >
> > > Basically, the outer header is only a hop-by-hop header, and is of
> no
> > > significance other than
> > > to be able to communicate between RBridge neighbors. If it's
> > > necessary
> > > (because of configuration of
> > > bridges between two RBridges) to stick VLAN tags into the
> > > outer header,
> > > that's what the RBridges do.
> > >
> > > So: figuring out your RBridge neighbors:
> > >
> > > RBridges figure out who their RBridge neighbors are, through
> > > the IS-IS
> > > Hello protocol. VLANs make this
> > > a bit awkward, but still straightforward. Which VLAN tags 
> exist on a
> > > link is configured into the RBridges, just
> > > like it would be configured into a bridge.
> > >
> > > So...RBridge RB1 has been configured to know that on port a,
> > > packets are
> > > allowed to have, say,
> > > VLAN tags A, C, and none.
> > >
> > > So...RB1 has to figure out what RBridge neighbors it has. It
> > > does this
> > > by sending IS-IS Hellos three times
> > > on that port, tagged respectively with A, C, and none.
> > >
> > > It might form different adjacencies depending on which 
> VLAN tag the
> > > IS-IS Hello was sent with.
> > > Let's say that with VLAN tag A, it forms an adjacency with
> > > RB2, and with
> > > VLAN tag C and no VLAN tag,
> > > it forms an adjacency with RB3.
> > >
> > > Therefore, in the core instance of IS-IS, RB1 announces that
> > > it has two
> > > RBridge neighbors (maybe others on
> > > other ports as well); RB2 and RB3. It doesn't matter to any other
> > > RBridges what VLAN tags RB1 needs
> > > to stick into the outer header in order to communicate on the
> > > adjacency.
> > >
> > > Whenever RB1 sends anything (forwarded data packets, IS-IS Hellos)
> to
> > > adjacency RB2, it sticks VLAN A
> > > tag into the outer header.
> > >
> > > Whenever RB1 sends anything to adjacency RB3, it has a choice. It
> can
> > > put a VLAN C tag into the outer header,
> > > or no VLAN tag. It doesn't matter which it chooses.  I'd
> > > choose no VLAN
> > > tag, just to save a few bytes.
> > > But there might be a case where any of a set of VLAN tags would
> work,
> > > and no VLAN tag wouldn't work,
> > > in which case, again, it doesn't matter which one it chooses.
> > >
> > > ************************
> > > So, now let's look at the example being discussed in this thread:
> > >
> > >                  +-----+  1,2  +-----------+
> > >                  | RB1 |-------| Rtg Fnctn |
> > >                  +-----+       +-----------+
> > >                     |
> > >                     | 1,2
> > >                     |
> > >   +-----+   1    +-----+    2     +-----+
> > >   | RB2 |--------| SW1 |----------| RB3 |
> > >   +-----+        +-----+          +-----+
> > >      |                               |
> > >      | IVLAN=3                       | IVLAN=3
> > >   +-----+                         +-----+
> > >   |  H1 |                         |  H2 |
> > >   +-----+                         +-----+
> > >
> > >
> > > In this example, RB2 will wind up with an adjency to RB1, and have
> to
> > > stick VLAN 1 into the outer
> > > header in order to talk to RB1. RB2 will not form an
> > > adjacency with RB3.
> > >
> > > RB2, on the other other, will form two adjacencies on that
> > > port; one to
> > > RB2 (using VLAN 1), and
> > > one to RB3 (using VLAN 2).
> > >
> > > The IS-IS topology will looks like:
> > >
> > > H1----RB2---RB1----RB3---H2
> > >
> > > So the path from H1 to H2 will go through RB2, then RB1, then RB3.
> > >
> > > Hope this clarifies.
> > >
> > > Radia
> > >
> > >
> > >
> > >
> > >
> 

Content-class: urn:content-classes:message
Date: Tue, 21 Nov 2006 09:50:56 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Summary of IVLANs vs OVLANs
Status: RO
Content-Length: 9685

Eric,

I see only two possible uses for the OVLAN:

1) The one that Radia proposes, that I think is appropriate for an
Enterprise environment, where the TRILL network is under a single
management;

2) The one proposed in metro Ethernet in which the OVLAN (there called
S-VLAN) identifies a particular customer and the IVLAN contains the
customer VLAN. I know Ali Sajassi is in favor of this model.

I don't see any advantage of deriving the OVLAN from an "N:1 mapping
from the inner VLAN tag": 
- It does not increase scalability, since the overall number of VLANs
will remain 4K;
- It adds complexity and the need for a protocol to keep the mapping in
synch among different Rbridges;
- It does not increase segregation, since segregation and pruning is
anyhow performed on the IVLAN;
- It requires unnecessary inner header lookup.

For these reasons my consensus is with Radia proposal.

-- Silvano

----------------------------------------------------------------

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Tuesday, November 21, 2006 8:11 AM
> To: Radia Perlman
> Cc: Silvano Gai; Russ White; [email-masked]
> Subject: RE: Summary of IVLANs vs OVLANs
> 
> Radia,
> 
> 	I think that this may be a summary of your perspective on the
> use of VLANs, but I do not believe that this perspective has been
> discussed generally.  Nor do I believe that it has been agreed to
> by any sort of "rough consensus" subset within the working group.
> 
> 	However, I may be wrong, so I would like to suggest that we
> (as a working group) discuss the "summary" you have provided.  If
> I am wrong, then I suggest the members of that "subset" may need
> to re-think their position.
> 
> 	I am reasonably sure that many people would like to use VLAN
> tags in the RBridge domain as a means to form reasonable aggregates
> of the VLANs among end-stations.  In this sense, the outer VLAN tag
> is derived simply as an N:1 mapping from the inner VLAN tag - and,
> as a result of this is, there will be a dependence on the inner tag
> in how forwarding occurs between RBridges.
> 
> 	This approach helps scalability in two ways: one, it allows
> for reduced VLAN configuration among RBridges to support a larger
> quantity of end-station VLANs; two, it allows some subset of the
> RBridge topology to avoid deriving and storing forwarding entries
> for traffic they should not need to forward.
> 
> 	Arguably the latter scalability concern is eliminated by the
> use of per-ingress p2mp forwarding trees.  However, it has been
> suggested that we might not do that - hence it is important to bear
> this in mind.  One potential use of VLANs between RBridges is to
> allow for sub-setting of spanning trees (assuming we decide to use
> spanning trees between RBridges) using the existing techniques we
> already have defined in 802.1D (2004) - i.e. - MSTP.
> 
> 	It is even possible that some people may be thinking of using
> VLAN tags in other ways.  If so, I would like to hear their ideas.
> For one thing, it is clear that we MUST decide on some set of uses
> that are compatible, and it is clear that the use outlined in your
> summary is fundamentally incompatible with the use I (and, I assume,
> other people) have assumed.  It is also incompatible with standard
> usage as defined in 802.1Q, and new proposals currently in process
> in the IEEE.
> 
> 	As a more-or-less philosophical clarification, it does not
> make sense to configure VLANs in RBridges to accommodate the VLAN
> tags used by the intervening fractional-LANs (what we have been
> calling "LAN segments") between two RBridges.  VLAN tags SHOULD be
> used to accommodate connectivity among RBridges across the under-
> lying fractional LANs (just as they are to accommodate connectivity
> among end-stations) - and not the other way around.
> 
> 	From the perspective of existing 802.1D bridges, RBridges are
> end-stations.  You decide which end-stations require connectivity,
> you assign them to the same VLAN, and then you configure the VLAN
> information in the VLAN bridges.
> 
> 	Also, the idea of potentially "switching" from one VLAN tag
> to another across and RBridge to accommodate a presumed under-lying
> VLAN tagging arrangement seems broken.  We would need to consider a
> lot of potential corner-cases - particularly during deployment and
> re-configuration - to determine if this will even work.  For one
> thing, there are interesting problems that arise as a result of not
> consistently using the same VLAN tags within a single administrative
> domain.
> 
> 	I assume we have not yet decided to tackle the "multi-domain"
> problem in TRILL, given that it is supposed to be a LAN-oriented,
> plug-and-play capable, enterprise solution...
> 
> --
> Eric
> 
> > -----Original Message-----
> > From: Radia Perlman [mailto:[email-masked]]
> > Sent: Monday, November 20, 2006 8:36 PM
> > To: Gray, Eric
> > Cc: 'Silvano Gai'; Russ White; [email-masked]
> > Subject: Summary of IVLANs vs OVLANs
> >
> > I don't think there is an issue here, but let me hopefully
> > clarify the
> > purpose of a VLAN tag on the inner frame
> > vs a VLAN tag which might appear on the outer header.
> >
> > **********
> > First: Purpose of "inner" VLAN tag
> > ___________________________
> >
> >
> > The purpose of the inner tag is to provide separation for endnode
> > communities. In other words, VLAN A
> > endnodes can only talk to VLAN A endnodes. The VLAN tag is either
> > inserted by the original endnode,
> > or the first bridge or RBridge that receives the frame. What
> > tag to put
> > in, whether to strip it, is configured
> > into RBridges exactly as it would be with bridges.
> >
> > The inner VLAN tag is irrelevant for how the frame is
> > forwarded between
> > the RBridges.
> >
> > RBridges are willing to forward all frames, regardless of the
> > inner VLAN
> > tag. They forward towards the
> > egress RBridge, totally ignoring the inner VLAN tag on
> > unicast packets.
> > On multicast, however, they
> > will look at the VLAN tag on the inner frame to decide if they
should
> > filter on some outgoing ports
> > for the selected multicast tree, because there are no
> > downstream links
> > for that VLAN tag.
> >
> > *******************
> > Now for the outer VLAN tag
> >
> > Basically, the outer header is only a hop-by-hop header, and is of
no
> > significance other than
> > to be able to communicate between RBridge neighbors. If it's
> > necessary
> > (because of configuration of
> > bridges between two RBridges) to stick VLAN tags into the
> > outer header,
> > that's what the RBridges do.
> >
> > So: figuring out your RBridge neighbors:
> >
> > RBridges figure out who their RBridge neighbors are, through
> > the IS-IS
> > Hello protocol. VLANs make this
> > a bit awkward, but still straightforward. Which VLAN tags exist on a
> > link is configured into the RBridges, just
> > like it would be configured into a bridge.
> >
> > So...RBridge RB1 has been configured to know that on port a,
> > packets are
> > allowed to have, say,
> > VLAN tags A, C, and none.
> >
> > So...RB1 has to figure out what RBridge neighbors it has. It
> > does this
> > by sending IS-IS Hellos three times
> > on that port, tagged respectively with A, C, and none.
> >
> > It might form different adjacencies depending on which VLAN tag the
> > IS-IS Hello was sent with.
> > Let's say that with VLAN tag A, it forms an adjacency with
> > RB2, and with
> > VLAN tag C and no VLAN tag,
> > it forms an adjacency with RB3.
> >
> > Therefore, in the core instance of IS-IS, RB1 announces that
> > it has two
> > RBridge neighbors (maybe others on
> > other ports as well); RB2 and RB3. It doesn't matter to any other
> > RBridges what VLAN tags RB1 needs
> > to stick into the outer header in order to communicate on the
> > adjacency.
> >
> > Whenever RB1 sends anything (forwarded data packets, IS-IS Hellos)
to
> > adjacency RB2, it sticks VLAN A
> > tag into the outer header.
> >
> > Whenever RB1 sends anything to adjacency RB3, it has a choice. It
can
> > put a VLAN C tag into the outer header,
> > or no VLAN tag. It doesn't matter which it chooses.  I'd
> > choose no VLAN
> > tag, just to save a few bytes.
> > But there might be a case where any of a set of VLAN tags would
work,
> > and no VLAN tag wouldn't work,
> > in which case, again, it doesn't matter which one it chooses.
> >
> > ************************
> > So, now let's look at the example being discussed in this thread:
> >
> >                  +-----+  1,2  +-----------+
> >                  | RB1 |-------| Rtg Fnctn |
> >                  +-----+       +-----------+
> >                     |
> >                     | 1,2
> >                     |
> >   +-----+   1    +-----+    2     +-----+
> >   | RB2 |--------| SW1 |----------| RB3 |
> >   +-----+        +-----+          +-----+
> >      |                               |
> >      | IVLAN=3                       | IVLAN=3
> >   +-----+                         +-----+
> >   |  H1 |                         |  H2 |
> >   +-----+                         +-----+
> >
> >
> > In this example, RB2 will wind up with an adjency to RB1, and have
to
> > stick VLAN 1 into the outer
> > header in order to talk to RB1. RB2 will not form an
> > adjacency with RB3.
> >
> > RB2, on the other other, will form two adjacencies on that
> > port; one to
> > RB2 (using VLAN 1), and
> > one to RB3 (using VLAN 2).
> >
> > The IS-IS topology will looks like:
> >
> > H1----RB2---RB1----RB3---H2
> >
> > So the path from H1 to H2 will go through RB2, then RB1, then RB3.
> >
> > Hope this clarifies.
> >
> > Radia
> >
> >
> >
> >
> >

From: "Gray, Eric" <[email-masked]>
To: Radia Perlman <[email-masked]>
Date: Tue, 21 Nov 2006 11:11:17 -0500
Cc: [email-masked]
Subject: Re: [rbridge] Summary of IVLANs vs OVLANs
Status: RO
Content-Length: 8130

Radia,

	I think that this may be a summary of your perspective on the
use of VLANs, but I do not believe that this perspective has been
discussed generally.  Nor do I believe that it has been agreed to
by any sort of "rough consensus" subset within the working group.

	However, I may be wrong, so I would like to suggest that we
(as a working group) discuss the "summary" you have provided.  If
I am wrong, then I suggest the members of that "subset" may need
to re-think their position.

	I am reasonably sure that many people would like to use VLAN
tags in the RBridge domain as a means to form reasonable aggregates
of the VLANs among end-stations.  In this sense, the outer VLAN tag
is derived simply as an N:1 mapping from the inner VLAN tag - and, 
as a result of this is, there will be a dependence on the inner tag 
in how forwarding occurs between RBridges.

	This approach helps scalability in two ways: one, it allows 
for reduced VLAN configuration among RBridges to support a larger
quantity of end-station VLANs; two, it allows some subset of the
RBridge topology to avoid deriving and storing forwarding entries 
for traffic they should not need to forward.

	Arguably the latter scalability concern is eliminated by the
use of per-ingress p2mp forwarding trees.  However, it has been 
suggested that we might not do that - hence it is important to bear
this in mind.  One potential use of VLANs between RBridges is to
allow for sub-setting of spanning trees (assuming we decide to use
spanning trees between RBridges) using the existing techniques we
already have defined in 802.1D (2004) - i.e. - MSTP.

	It is even possible that some people may be thinking of using
VLAN tags in other ways.  If so, I would like to hear their ideas.
For one thing, it is clear that we MUST decide on some set of uses
that are compatible, and it is clear that the use outlined in your
summary is fundamentally incompatible with the use I (and, I assume,
other people) have assumed.  It is also incompatible with standard
usage as defined in 802.1Q, and new proposals currently in process
in the IEEE.

	As a more-or-less philosophical clarification, it does not
make sense to configure VLANs in RBridges to accommodate the VLAN
tags used by the intervening fractional-LANs (what we have been
calling "LAN segments") between two RBridges.  VLAN tags SHOULD be 
used to accommodate connectivity among RBridges across the under-
lying fractional LANs (just as they are to accommodate connectivity 
among end-stations) - and not the other way around.

	From the perspective of existing 802.1D bridges, RBridges are
end-stations.  You decide which end-stations require connectivity,
you assign them to the same VLAN, and then you configure the VLAN
information in the VLAN bridges.

	Also, the idea of potentially "switching" from one VLAN tag 
to another across and RBridge to accommodate a presumed under-lying
VLAN tagging arrangement seems broken.  We would need to consider a
lot of potential corner-cases - particularly during deployment and
re-configuration - to determine if this will even work.  For one
thing, there are interesting problems that arise as a result of not
consistently using the same VLAN tags within a single administrative
domain.

	I assume we have not yet decided to tackle the "multi-domain"
problem in TRILL, given that it is supposed to be a LAN-oriented,
plug-and-play capable, enterprise solution...

--
Eric

> -----Original Message-----
> From: Radia Perlman [mailto:[email-masked]] 
> Sent: Monday, November 20, 2006 8:36 PM
> To: Gray, Eric
> Cc: 'Silvano Gai'; Russ White; [email-masked]
> Subject: Summary of IVLANs vs OVLANs
> 
> I don't think there is an issue here, but let me hopefully 
> clarify the 
> purpose of a VLAN tag on the inner frame
> vs a VLAN tag which might appear on the outer header.
> 
> **********
> First: Purpose of "inner" VLAN tag
> ___________________________
> 
> 
> The purpose of the inner tag is to provide separation for endnode 
> communities. In other words, VLAN A
> endnodes can only talk to VLAN A endnodes. The VLAN tag is either 
> inserted by the original endnode,
> or the first bridge or RBridge that receives the frame. What 
> tag to put 
> in, whether to strip it, is configured
> into RBridges exactly as it would be with bridges.
> 
> The inner VLAN tag is irrelevant for how the frame is 
> forwarded between 
> the RBridges.
> 
> RBridges are willing to forward all frames, regardless of the 
> inner VLAN 
> tag. They forward towards the
> egress RBridge, totally ignoring the inner VLAN tag on 
> unicast packets. 
> On multicast, however, they
> will look at the VLAN tag on the inner frame to decide if they should 
> filter on some outgoing ports
> for the selected multicast tree, because there are no 
> downstream links 
> for that VLAN tag.
> 
> *******************
> Now for the outer VLAN tag
> 
> Basically, the outer header is only a hop-by-hop header, and is of no 
> significance other than
> to be able to communicate between RBridge neighbors. If it's 
> necessary 
> (because of configuration of
> bridges between two RBridges) to stick VLAN tags into the 
> outer header, 
> that's what the RBridges do.
> 
> So: figuring out your RBridge neighbors:
> 
> RBridges figure out who their RBridge neighbors are, through 
> the IS-IS 
> Hello protocol. VLANs make this
> a bit awkward, but still straightforward. Which VLAN tags exist on a 
> link is configured into the RBridges, just
> like it would be configured into a bridge.
> 
> So...RBridge RB1 has been configured to know that on port a, 
> packets are 
> allowed to have, say,
> VLAN tags A, C, and none.
> 
> So...RB1 has to figure out what RBridge neighbors it has. It 
> does this 
> by sending IS-IS Hellos three times
> on that port, tagged respectively with A, C, and none.
> 
> It might form different adjacencies depending on which VLAN tag the 
> IS-IS Hello was sent with.
> Let's say that with VLAN tag A, it forms an adjacency with 
> RB2, and with 
> VLAN tag C and no VLAN tag,
> it forms an adjacency with RB3.
> 
> Therefore, in the core instance of IS-IS, RB1 announces that 
> it has two 
> RBridge neighbors (maybe others on
> other ports as well); RB2 and RB3. It doesn't matter to any other 
> RBridges what VLAN tags RB1 needs
> to stick into the outer header in order to communicate on the 
> adjacency.
> 
> Whenever RB1 sends anything (forwarded data packets, IS-IS Hellos) to 
> adjacency RB2, it sticks VLAN A
> tag into the outer header.
> 
> Whenever RB1 sends anything to adjacency RB3, it has a choice. It can 
> put a VLAN C tag into the outer header,
> or no VLAN tag. It doesn't matter which it chooses.  I'd 
> choose no VLAN 
> tag, just to save a few bytes.
> But there might be a case where any of a set of VLAN tags would work, 
> and no VLAN tag wouldn't work,
> in which case, again, it doesn't matter which one it chooses.
> 
> ************************
> So, now let's look at the example being discussed in this thread:
> 
>                  +-----+  1,2  +-----------+
>                  | RB1 |-------| Rtg Fnctn |
>                  +-----+       +-----------+
>                     |
>                     | 1,2
>                     |
>   +-----+   1    +-----+    2     +-----+
>   | RB2 |--------| SW1 |----------| RB3 |
>   +-----+        +-----+          +-----+
>      |                               |
>      | IVLAN=3                       | IVLAN=3
>   +-----+                         +-----+
>   |  H1 |                         |  H2 |
>   +-----+                         +-----+
> 
> 
> In this example, RB2 will wind up with an adjency to RB1, and have to 
> stick VLAN 1 into the outer
> header in order to talk to RB1. RB2 will not form an 
> adjacency with RB3.
> 
> RB2, on the other other, will form two adjacencies on that 
> port; one to 
> RB2 (using VLAN 1), and
> one to RB3 (using VLAN 2).
> 
> The IS-IS topology will looks like:
> 
> H1----RB2---RB1----RB3---H2
> 
> So the path from H1 to H2 will go through RB2, then RB1, then RB3.
> 
> Hope this clarifies.
> 
> Radia
> 
> 
> 
> 
> 

Date: Mon, 20 Nov 2006 17:36:26 -0800
From: Radia Perlman <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: [rbridge] Summary of IVLANs vs OVLANs
Status: RO
Content-Length: 4162

I don't think there is an issue here, but let me hopefully clarify the 
purpose of a VLAN tag on the inner frame
vs a VLAN tag which might appear on the outer header.

**********
First: Purpose of "inner" VLAN tag
___________________________

The purpose of the inner tag is to provide separation for endnode 
communities. In other words, VLAN A
endnodes can only talk to VLAN A endnodes. The VLAN tag is either 
inserted by the original endnode,
or the first bridge or RBridge that receives the frame. What tag to put 
in, whether to strip it, is configured
into RBridges exactly as it would be with bridges.

The inner VLAN tag is irrelevant for how the frame is forwarded between 
the RBridges.

RBridges are willing to forward all frames, regardless of the inner VLAN 
tag. They forward towards the
egress RBridge, totally ignoring the inner VLAN tag on unicast packets. 
On multicast, however, they
will look at the VLAN tag on the inner frame to decide if they should 
filter on some outgoing ports
for the selected multicast tree, because there are no downstream links 
for that VLAN tag.

*******************
Now for the outer VLAN tag

Basically, the outer header is only a hop-by-hop header, and is of no 
significance other than
to be able to communicate between RBridge neighbors. If it's necessary 
(because of configuration of
bridges between two RBridges) to stick VLAN tags into the outer header, 
that's what the RBridges do.

So: figuring out your RBridge neighbors:

RBridges figure out who their RBridge neighbors are, through the IS-IS 
Hello protocol. VLANs make this
a bit awkward, but still straightforward. Which VLAN tags exist on a 
link is configured into the RBridges, just
like it would be configured into a bridge.

So...RBridge RB1 has been configured to know that on port a, packets are 
allowed to have, say,
VLAN tags A, C, and none.

So...RB1 has to figure out what RBridge neighbors it has. It does this 
by sending IS-IS Hellos three times
on that port, tagged respectively with A, C, and none.

It might form different adjacencies depending on which VLAN tag the 
IS-IS Hello was sent with.
Let's say that with VLAN tag A, it forms an adjacency with RB2, and with 
VLAN tag C and no VLAN tag,
it forms an adjacency with RB3.

Therefore, in the core instance of IS-IS, RB1 announces that it has two 
RBridge neighbors (maybe others on
other ports as well); RB2 and RB3. It doesn't matter to any other 
RBridges what VLAN tags RB1 needs
to stick into the outer header in order to communicate on the adjacency.

Whenever RB1 sends anything (forwarded data packets, IS-IS Hellos) to 
adjacency RB2, it sticks VLAN A
tag into the outer header.

Whenever RB1 sends anything to adjacency RB3, it has a choice. It can 
put a VLAN C tag into the outer header,
or no VLAN tag. It doesn't matter which it chooses.  I'd choose no VLAN 
tag, just to save a few bytes.
But there might be a case where any of a set of VLAN tags would work, 
and no VLAN tag wouldn't work,
in which case, again, it doesn't matter which one it chooses.

************************
So, now let's look at the example being discussed in this thread:

                 +-----+  1,2  +-----------+
                 | RB1 |-------| Rtg Fnctn |
                 +-----+       +-----------+
                    |
                    | 1,2
                    |
  +-----+   1    +-----+    2     +-----+
  | RB2 |--------| SW1 |----------| RB3 |
  +-----+        +-----+          +-----+
     |                               |
     | IVLAN=3                       | IVLAN=3
  +-----+                         +-----+
  |  H1 |                         |  H2 |
  +-----+                         +-----+

In this example, RB2 will wind up with an adjency to RB1, and have to 
stick VLAN 1 into the outer
header in order to talk to RB1. RB2 will not form an adjacency with RB3.

RB2, on the other other, will form two adjacencies on that port; one to 
RB2 (using VLAN 1), and
one to RB3 (using VLAN 2).

The IS-IS topology will looks like:

H1----RB2---RB1----RB3---H2

So the path from H1 to H2 will go through RB2, then RB1, then RB3.

Hope this clarifies.

Radia

Content-class: urn:content-classes:message
Date: Fri, 17 Nov 2006 07:22:05 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Russ White" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 17288

Eric,

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:08 PM
> To: Silvano Gai; Russ White
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,
> 
> 	Forget the "Null VLAN" concept for the moment, and look at
> the rest of what you're saying.
> 

... Snip ...

> 	Finally, to get onto the question you ask, I don't agree that
> any frame handled by an RBridge MUST be tagged - at all.  

I never said that. I understand that on the links there are three kinds
of frames:
1) Untagged
2) Priority Tagged
3) VLAN tagged

What I pointed out from the standard text is that the port of the switch
always normalizes the frame to be tagged in the moment it enters the
switch. You are right that IEEE 802.1Q allows for extensions, but the
final result is that a frame inside a switch as a VID (VLAN ID)
associated to it.

Now let's consider an RBridge:

1) if the frame is received on an access port, i.e. comes from a host,
i.e. does not have a TRILL shim, it has an IVLAN tag associated. In the
base protocol spec there is an explanation on how to handle that frame,
including VLAN pruning. I have no issues

2) if the frame is received on a trunk port, i.e. it comes from another
RBridge, i.e. it has a TRILL shim, it has both an IVLAN and an OVLAN tag
associated. This is the case that I don't understand how it works. 

We need to explain what to do with the OVLAN information: we can ignore
it or use it.

If we ignore the OVLAN it means that two hosts are considered to be on
the same VLAN if they are both on the same IVLAN, independently of the
OVLAN. This is my understanding of Radia proposal.

If we use it, it means that two stations are considered to be on the
same VLAN only if they are both on the same IVLAN and OVLAN. This is my
understanding of what Metro Ethernet folks want to do.

Which solution are you advocating?

-- Silvano

Assuming
> you are addressing the case where a deployment only uses 802.1Q
> devices, and all traffic is necessarily tagged, then every frame
> that is not TRILL encapsulated MUST have a VLAN tag.  That is a
> trivial observation that necessarily follows from the definition
> of the deployment scenario.
> 
> 	I also don't agree that frames forwarded within a CRED will
> necessarily have any VLAN tag in the tunnel encapsulation.  Again,
> if the assumption is that there is a deployment scenario in which
> this is required, then (naturally) it will be the case that this
> turns out to be true.
> 
> 	However, I do agree that there could be advantages to using
> a VLAN tagged frame format in the tunnel encapsulation when there
> was a VLAN tagged frame format in native frames being forwarded
> across a CRED.  For example, this might be used to eliminate the
> need for RBridges to peek beyond the tunnel encapsulation.
> 
> 	The potential for advantage is limited, if the mapping is not
> essentially a 1:1 VLAN tag mapping, because it seems likely that any
> N:1 mapping (where N is more than a few) will result in delivering
> some number of frames to egress devices that will then drop them.
> This approach fails to meet any sort of "efficient forwarding"
> criterion I would like to define.  This would be true, even if it is
> a hard requirement for RBridges to always filter based on VLANs -
> including within the CRED.
> 
> 	Note that this is potentially far more true if the RBridges
> are not supporting per-ingress IRTs.
> 
> 	The potential for advantage is limited, at the other end, if
> N is close to (or equal to) 1, because there is no scalability gain
> if every VLAN in the network is represented by VLAN tags in tunnel
> encapsulation within the CRED.
> 
> 	However, the issue is that this "mapping" is strictly that,
> and this greatly complicates your original question - without, in
> fact, making the answer different in any other way.  If there is a
> mapping of VLAN tags in native frames to VLAN tags in the tunneled
> (TRILL) frames, it is made at the ingress RBridge, used by transit
> RBridges for IRT VLAN-pruning (if practical), and simply stripped
> off at the egress.  This does not change the fact that these frames
> must then leave the CRED and be delivered to an L2 end-station (at
> least, as far as RBridges are concerned).  If anything is expected
> to make a re-forwarding decision, it would be the receiving end
> station, not the egress RBridge.
> 
> --
> Eric
> 
> -----Original Message-----
> From: Silvano Gai [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 8:23 PM
> To: Gray, Eric; Russ White
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> 
> Eric,
> 
> The concept of "Null VLAN" does not exists in IEEE 802.1Q.
> 
> IEEE 802.1Q states:
> "An untagged frame or a priority-tagged frame does not carry any
> identification of the VLAN to which it belongs. Such frames are
> classified as belonging to a particular VLAN based on parameters
> associated with the receiving Port, or, through proprietary
> extensions to this standard,
> based on the data content of the frame (e.g., MAC Address, layer 3
> protocol ID, etc.)."
> 
> Therefore all the frames inside an IEEE 802.1Q compliant-switch are
> tagged with an VLAN independently from the fact that they came in
> VLAN-Tagged, Priority-Tagged or untagged.
> 
> On entering an Rbridge a frame:
> 1) if it does not have a TRILL shim header, it is always tagged with
an
> IVLAN.
> 2) if it does have a TRILL shim header it always has both an OVLAN and
> an IVLAN.
> 
> Do you agree?
> 
> -- Silvano
> 
> 
> > -----Original Message-----
> > From: Gray, Eric [mailto:[email-masked]]
> > Sent: Thursday, November 16, 2006 7:39 AM
> > To: Silvano Gai; Russ White
> > Cc: [email-masked]
> > Subject: RE: [rbridge] IVLANs vs OVLANs
> >
> > Silvano,			(note: Russ - please read this!!)
> >
> > 	For the first part of your question, Radia and I had almost
> > this exact same discussion during the BoF I mentioned.  The only
> > legitimate way to get from one (logical) VLAN to another is via a
> > routing function.
> >
> > 	Unless you include the "routing function" as part of the TRILL
> > specification requirements - which does not, in any way, makes sense
> > - then the model that applies is the one that has VLANs logically
> > separated.
> >
> > 	That is strictly a VLAN separation issue.  The second part of
> > your question is trickier, hence it is good that you ask it and even
> > better that you insisted on being understood.  :-)
> >
> > 	From an RBridge perspective, I believe it is sufficient that all
> > of the RBridges MUST support a common (probably the default - NULL)
> > VLAN to ensure that all of them MUST peer with each other - at least
> > for support of that (common) VLAN.  Hence, it should not be the case
> > that any (proper) subset of RBridges would not peer exclusively with
> > any other (proper) subset of RBridges in the same CRED.
> >
> > 	Also, from an IS-IS perspective (help me out here Russ), I am
> > reasonably sure that adjacent/connected IS-IS instances MUST
discover
> > each other during peer discovery - even if they do not subsequently
> > peer with each other (or having peered with each other, exchange any
> > routing information).  I believe this would be the case, even if
there
> > was potentially some strange virtual L3 overlay topology involving
> > separate L3 VPN instancing in the IS-IS routing deployment.
> >
> > 	If that is the case, then - from a peer discovery perspective -
> > all RBridges will still be in the same CRED.  This is the
perspective
> > that matters, because it is the peer discovery process that allows
the
> > members of a CRED to "discover" potential _hidden_ loops in
underlying
> > L2 topology.
> >
> > 	See also my reply to your question about VLAN interactions with
> > routing...
> >
> > --
> > Eric
> >
> > --> -----Original Message-----
> > --> From: Silvano Gai [mailto:[email-masked]]
> > --> Sent: Thursday, November 16, 2006 12:57 AM
> > --> To: Gray, Eric
> > --> Cc: [email-masked]
> > --> Subject: RE: [rbridge] IVLANs vs OVLANs
> > -->
> > -->
> > --> Eric,
> > -->
> > --> I am just trying to understand if there is consensus in a) or
b).
> > -->
> > --> The impression I got talking with Radia is that she was in
> > --> favor of a).
> > -->
> > --> Your reply is my b) model to which you have added a router.
> > --> Since b) is
> > --> two separate layer 2 networks, you can put a router between
> > --> the two, as
> > --> you did.
> > -->
> > --> Please also note that I can redraw the same network in a
> > --> different way:
> > -->
> > -->                 +-----+
> > -->                 | RB1 |
> > -->                 +-----+
> > -->                  |  |
> > -->                1 |  | 2
> > -->                  |  |
> > -->  +-----+   1    +-----+    2     +-----+
> > -->  | RB2 |--------| SW1 |----------| RB3 |
> > -->  +-----+        +-----+          +-----+
> > -->
> > --> Where I replaced the Etherchannel with two links, one in
> > --> OVLAN=1 and one
> > --> in OVLAN=2.
> > -->
> > --> Now is RB2 capable of talking to RB3 through RB1?
> > -->
> > --> -- Silvano
> > -->
> > --> > -----Original Message-----
> > --> > From: Gray, Eric [mailto:[email-masked]]
> > --> > Sent: Wednesday, November 15, 2006 12:13 PM
> > --> > To: Silvano Gai
> > --> > Cc: [email-masked]
> > --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> > --> >
> > --> > Silvano,
> > --> >
> > --> > 	First of all, I will take very large exception to the
> way
> > --> > which you have over-loaded the term "CRED."  This term was
> coined
> > --> > to eliminate confusion caused by the various different was
> people
> > --> > were over-loading the term "Campus."
> > --> >
> > --> > 	At the "core" of your question, however, is the issue of
> > --> > how VLANs interact in a bridged/RBridge environment.  It is
not
> > --> > different than would be the case in a "classical bridged LAN."
> > --> >
> > --> > 	This issue is based on a misconception that existed very
> > --> > early on in the life of the TRILL working group (in the first
> > --> > BoF, in fact).  The misconception is that VLAN connectivity
may
> > --> > be provided by RBridges and/or bridges.
> > --> >
> > --> > 	This is fundamentally incorrect.
> > --> >
> > --> > 	Interconnection of VLANs is strictly a routing function.
> > --> > In deployed equipment that does this today, there may be some
> > --> > form of "smart VLAN bridging" that occurs in devices people
are
> > --> > used to referring to as "bridges" or "switches."  That does
not
> > --> > change the fact that forwarding from one VLAN to another is a
> > --> > "routing function."
> > --> >
> > --> > 	Note that, in this context, when I say "forwarding from
> > --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> > --> > LAN" as a logical concept.  This has nothing to do with the
fact
> > --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> > --> >
> > --> > 	Consequently, in the picture you have below, the VLANs
> > --> > represented by the VLAN-tag in the tunnel encapsulation may
> > --> > not be connected together by RB1.
> > --> >
> > --> > 	To correctly restate your question, the original
> topology
> > --> > would be as follows:
> > --> >
> > --> >
> > --> >                 +-----+  1,2  +-----------+
> > --> >                 | RB1 |-------| Rtg Fnctn |
> > --> >                 +-----+       +-----------+
> > --> >                    |
> > --> >                    | 1,2
> > --> >                    |
> > --> >  +-----+   1    +-----+    2     +-----+
> > --> >  | RB2 |--------| SW1 |----------| RB3 |
> > --> >  +-----+        +-----+          +-----+
> > --> >
> > --> > The resulting logical topology MUST then be as follows:
> > --> >
> > --> >
> > --> >  +-----+        +-----+       +-----------+
> > --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> > --> >  +-----+        +-----+       +-----+-----+
> > --> >                                     |
> > --> >                                  +--+--+          +-----+
> > --> >                                  | RB1 |----------| RB3 |
> > --> >                                  +-----+          +-----+
> > --> >
> > --> > Since the "routing function" is orthogonal, and well
understood,
> > --> > it does not make sense for us to try to combine this concept
> with
> > --> > RBridge behaviors and protocol interactions.
> > --> >
> > --> > --
> > --> > Eric
> > --> >
> > --> >
> > --> > --> -----Original Message-----
> > --> > --> From: [email-masked]
> > --> > --> [mailto:[email-masked]] On Behalf Of Silvano
Gai
> > --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> > --> > --> To: [email-masked]
> > --> > --> Subject: [rbridge] IVLANs vs OVLANs
> > --> > -->
> > --> > -->
> > --> > --> During the last WG meeting I had an action item to send an
> > --> > --> email on the
> > --> > --> VLAN issue. Here it is.
> > --> > -->
> > --> > --> In a previous email I introduced the concept of IVLAN
> > --> and OVLAN.
> > --> > -->
> > --> > --> IVLAN refers to the VLAN present on the untagged frames,
> > --> > --> which must be
> > --> > --> propagated by ISIS, VLAN pruning must be performed and so
> > --> > --> on. All the
> > --> > --> IVLANs share the same core instance of ISIS.
> > --> > -->
> > --> > --> OVLAN refers to the fact that the traffic between two
> > --> > --> RBridges can be
> > --> > --> encapsulated into a VLAN.
> > --> > -->
> > --> > --> If we look to the format of a TRILL encapsulated frame the
> > --> > --> position of
> > --> > --> these two fields is as follow:
> > --> > -->
> > --> > --> +--------------------------------+
> > --> > --> |               DA               |
> > --> > --> +----------------+---------------+
> > --> > --> |       DA       |     SA        |
> > --> > --> +----------------+---------------+
> > --> > --> |               SA               |
> > --> > --> +--------------------------------+
> > --> > --> |    ET = 1Q     |   OVLAN ...   |
> > --> > --> +--------------------------------+
> > --> > --> |    ET = TRILL  | RES  |  TTL   |
> > --> > --> +--------------------------------+
> > --> > --> | Egress Add.    | Ingress Add.  |
> > --> > --> +--------------------------------+
> > --> > --> |               DA               |
> > --> > --> +----------------+---------------+
> > --> > --> |       DA       |     SA        |
> > --> > --> +----------------+---------------+
> > --> > --> |               SA               |
> > --> > --> +--------------------------------+
> > --> > --> |    ET = 1Q     |   IVLAN ...   |
> > --> > --> +--------------------------------+
> > --> > --> |             Payload            |
> > --> > -->
> > --> > --> Now let's consider the following topology:
> > --> > -->
> > --> > -->                +-----+
> > --> > -->                | RB1 |
> > --> > -->                +-----+
> > --> > -->                   |
> > --> > -->                   | 1,2
> > --> > -->                   |
> > --> > --> +-----+   1    +-----+    2     +-----+
> > --> > --> | RB2 |--------| SW1 |----------| RB3 |
> > --> > --> +-----+        +-----+          +-----+
> > --> > -->
> > --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> > --> Ethernet switch.
> > --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> > --> > --> between SW1 and RB3
> > --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> > --> trunk and it
> > --> > --> carries both OVLAN 1 and 2.
> > --> > -->
> > --> > --> Now my question is: "do we have one CRED or two?"
> > --> > -->
> > --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> > --> > --> RB1 but not
> > --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> > --> > --> but not RB2.
> > --> > --> RB1 is adjacent to both RB2 and RB3. There is a single
core
> > --> > --> instance of
> > --> > --> ISIS. RB2 may reach RB3 through RB1.
> > --> > -->
> > --> > --> The TRILL equivalent topology is:
> > --> > -->
> > --> > --> +-----+        +-----+          +-----+
> > --> > --> | RB2 |--------| RB1 |----------| RB3 |
> > --> > --> +-----+        +-----+          +-----+
> > --> > -->
> > --> > --> b) another possible answer: "we have two CREDs". One is
> > --> > --> composed by RB2
> > --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> > --> > --> since they are
> > --> > --> in different CREDs.
> > --> > -->
> > --> > --> The TRILL equivalent topologies are:
> > --> > -->
> > --> > --> +-----+        +-----+
> > --> > --> | RB2 |--------| RB1 |
> > --> > --> +-----+        +-----+
> > --> > -->
> > --> > --> +-----+          +-----+
> > --> > --> | RB1 |----------| RB3 |
> > --> > --> +-----+          +-----+
> > --> > -->
> > --> > --> I like a) and I hope we are in agreement that the right
> > --> > --> answer is a),
> > --> > --> but I haven't seen it explained in any of the documents.
> > --> > -->
> > --> > --> -- Silvano
> > --> > -->
> > --> > --> _______________________________________________
> > --> > --> rbridge mailing list
> > --> > --> [email-masked]
> > --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> > --> > -->
> > -->

From: "Gray, Eric" <[email-masked]>
To: "'Silvano Gai'" <[email-masked]>, Russ White <[email-masked]>
Date: Thu, 16 Nov 2006 22:08:10 -0500
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 17770

Silvano,

	Forget the "Null VLAN" concept for the moment, and look at
the rest of what you're saying.

	What part of the quote you provide (below) from what 802.1Q
says, leads you to conclude what you say in the next paragraph -
i.e. - that an 802.1Q compliant "switch" only handles tagged frames?

	The way I read the quote, 802.1Q is making a complicated (but
- in my opinion - very wise) observation.  The observation - broken
into its explicit components is:

1)	a device MAY use other means to associate frames with a VLAN,
2)	these other means are considered extensions to 802.1Q and are
	(therefore) not addressed by 802.1Q.

An implicit observation that can be derived from this is:

3)	any such extensions may be implemented in a device and - as
	long as that device is otherwise compliant with 802.1Q - these
	extensions are allowed by 802.1Q.

The derivation for this third observation is as described in the
next few (un-indented) paragraphs.

First, the quote you provide - in no way - states (or clearly implies) 
that any device that supports any sort of extension to 802.1Q is not 
compliant with 802.1Q.

Second, the way that protocol specifications work is that anything 
not explicitly (or otherwise obviously) prohibited, is allowed.

This is the only reasonable way to deal with the possibility of any
sort of protocol that is intended (or allowed) to be extended.  By
merely stating that these are potential extensions to the protocol,
without explicitly stating that such extensions are not allowed, a 
protocol specification is making it clear that such extensions are
allowed by the protocol.

At best, you could argue that the 802.1Q "compliant function" is
logically separated from the "mapping function" but to argue that
this separation makes an implementation that is done that way "non
compliant" is to make a completely specious argument.

	Now, let's get back to the "NULL VLAN" case.  

	Whatever we call it, there is one case in which a frame is 
received by a bridge - without any VLAN tagging - and is mapped to
a specific logical VLAN (using any reasonable criteria).  In being
forwarded, such a frame MAY be tagged using 802.1Q.  This happens.

	For some people, it is convenient to view this as logically
equivalent to having received a frame from a "default VLAN", on a
logical interface defined by whatever criteria the implementation
may use to determine the frame belongs in a specific VLAN.

	There is also the case in which a 802.1Q tagged frame is
intended to be forwarded on a physical interface, without the tag.

	It is actually the combination of these two cases that tends 
to define what sorts of criteria it makes practical sense to use 
in defining an "802.1Q extension-based" VLAN.  Because people are
required to think about this combined case, it is important to have 
some term you use to talk about the "untagged" case.  Some people 
have referred to that case as the "NULL VLAN" case.

	If you have a term you feel is better, then maybe we can use 
your term sometimes.

	Finally, to get onto the question you ask, I don't agree that
any frame handled by an RBridge MUST be tagged - at all.  Assuming
you are addressing the case where a deployment only uses 802.1Q
devices, and all traffic is necessarily tagged, then every frame
that is not TRILL encapsulated MUST have a VLAN tag.  That is a
trivial observation that necessarily follows from the definition 
of the deployment scenario.

	I also don't agree that frames forwarded within a CRED will
necessarily have any VLAN tag in the tunnel encapsulation.  Again,
if the assumption is that there is a deployment scenario in which
this is required, then (naturally) it will be the case that this
turns out to be true.

	However, I do agree that there could be advantages to using 
a VLAN tagged frame format in the tunnel encapsulation when there 
was a VLAN tagged frame format in native frames being forwarded
across a CRED.  For example, this might be used to eliminate the
need for RBridges to peek beyond the tunnel encapsulation.

	The potential for advantage is limited, if the mapping is not 
essentially a 1:1 VLAN tag mapping, because it seems likely that any 
N:1 mapping (where N is more than a few) will result in delivering 
some number of frames to egress devices that will then drop them.
This approach fails to meet any sort of "efficient forwarding"
criterion I would like to define.  This would be true, even if it is 
a hard requirement for RBridges to always filter based on VLANs - 
including within the CRED.

	Note that this is potentially far more true if the RBridges
are not supporting per-ingress IRTs.

	The potential for advantage is limited, at the other end, if
N is close to (or equal to) 1, because there is no scalability gain
if every VLAN in the network is represented by VLAN tags in tunnel
encapsulation within the CRED.

	However, the issue is that this "mapping" is strictly that,
and this greatly complicates your original question - without, in
fact, making the answer different in any other way.  If there is a
mapping of VLAN tags in native frames to VLAN tags in the tunneled 
(TRILL) frames, it is made at the ingress RBridge, used by transit
RBridges for IRT VLAN-pruning (if practical), and simply stripped
off at the egress.  This does not change the fact that these frames
must then leave the CRED and be delivered to an L2 end-station (at
least, as far as RBridges are concerned).  If anything is expected
to make a re-forwarding decision, it would be the receiving end
station, not the egress RBridge.

--
Eric

-----Original Message-----
From: Silvano Gai [mailto:[email-masked]] 
Sent: Thursday, November 16, 2006 8:23 PM
To: Gray, Eric; Russ White
Cc: [email-masked]
Subject: RE: [rbridge] IVLANs vs OVLANs

Eric,

The concept of "Null VLAN" does not exists in IEEE 802.1Q.

IEEE 802.1Q states:
"An untagged frame or a priority-tagged frame does not carry any
identification of the VLAN to which it belongs. Such frames are
classified as belonging to a particular VLAN based on parameters
associated with the receiving Port, or, through proprietary 
extensions to this standard,
based on the data content of the frame (e.g., MAC Address, layer 3
protocol ID, etc.)."

Therefore all the frames inside an IEEE 802.1Q compliant-switch are
tagged with an VLAN independently from the fact that they came in
VLAN-Tagged, Priority-Tagged or untagged.

On entering an Rbridge a frame:
1) if it does not have a TRILL shim header, it is always tagged with an
IVLAN.
2) if it does have a TRILL shim header it always has both an OVLAN and
an IVLAN.

Do you agree?

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:39 AM
> To: Silvano Gai; Russ White
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,			(note: Russ - please read this!!)
> 
> 	For the first part of your question, Radia and I had almost
> this exact same discussion during the BoF I mentioned.  The only
> legitimate way to get from one (logical) VLAN to another is via a
> routing function.
> 
> 	Unless you include the "routing function" as part of the TRILL
> specification requirements - which does not, in any way, makes sense
> - then the model that applies is the one that has VLANs logically
> separated.
> 
> 	That is strictly a VLAN separation issue.  The second part of
> your question is trickier, hence it is good that you ask it and even
> better that you insisted on being understood.  :-)
> 
> 	From an RBridge perspective, I believe it is sufficient that all
> of the RBridges MUST support a common (probably the default - NULL)
> VLAN to ensure that all of them MUST peer with each other - at least
> for support of that (common) VLAN.  Hence, it should not be the case
> that any (proper) subset of RBridges would not peer exclusively with
> any other (proper) subset of RBridges in the same CRED.
> 
> 	Also, from an IS-IS perspective (help me out here Russ), I am
> reasonably sure that adjacent/connected IS-IS instances MUST discover
> each other during peer discovery - even if they do not subsequently
> peer with each other (or having peered with each other, exchange any
> routing information).  I believe this would be the case, even if there
> was potentially some strange virtual L3 overlay topology involving
> separate L3 VPN instancing in the IS-IS routing deployment.
> 
> 	If that is the case, then - from a peer discovery perspective -
> all RBridges will still be in the same CRED.  This is the perspective
> that matters, because it is the peer discovery process that allows the
> members of a CRED to "discover" potential _hidden_ loops in underlying
> L2 topology.
> 
> 	See also my reply to your question about VLAN interactions with
> routing...
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 12:57 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> Eric,
> -->
> --> I am just trying to understand if there is consensus in a) or b).
> -->
> --> The impression I got talking with Radia is that she was in
> --> favor of a).
> -->
> --> Your reply is my b) model to which you have added a router.
> --> Since b) is
> --> two separate layer 2 networks, you can put a router between
> --> the two, as
> --> you did.
> -->
> --> Please also note that I can redraw the same network in a
> --> different way:
> -->
> -->                 +-----+
> -->                 | RB1 |
> -->                 +-----+
> -->                  |  |
> -->                1 |  | 2
> -->                  |  |
> -->  +-----+   1    +-----+    2     +-----+
> -->  | RB2 |--------| SW1 |----------| RB3 |
> -->  +-----+        +-----+          +-----+
> -->
> --> Where I replaced the Etherchannel with two links, one in
> --> OVLAN=1 and one
> --> in OVLAN=2.
> -->
> --> Now is RB2 capable of talking to RB3 through RB1?
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 15, 2006 12:13 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	First of all, I will take very large exception to the
way
> --> > which you have over-loaded the term "CRED."  This term was
coined
> --> > to eliminate confusion caused by the various different was
people
> --> > were over-loading the term "Campus."
> --> >
> --> > 	At the "core" of your question, however, is the issue of
> --> > how VLANs interact in a bridged/RBridge environment.  It is not
> --> > different than would be the case in a "classical bridged LAN."
> --> >
> --> > 	This issue is based on a misconception that existed very
> --> > early on in the life of the TRILL working group (in the first
> --> > BoF, in fact).  The misconception is that VLAN connectivity may
> --> > be provided by RBridges and/or bridges.
> --> >
> --> > 	This is fundamentally incorrect.
> --> >
> --> > 	Interconnection of VLANs is strictly a routing function.
> --> > In deployed equipment that does this today, there may be some
> --> > form of "smart VLAN bridging" that occurs in devices people are
> --> > used to referring to as "bridges" or "switches."  That does not
> --> > change the fact that forwarding from one VLAN to another is a
> --> > "routing function."
> --> >
> --> > 	Note that, in this context, when I say "forwarding from
> --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> --> > LAN" as a logical concept.  This has nothing to do with the fact
> --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> --> >
> --> > 	Consequently, in the picture you have below, the VLANs
> --> > represented by the VLAN-tag in the tunnel encapsulation may
> --> > not be connected together by RB1.
> --> >
> --> > 	To correctly restate your question, the original
topology
> --> > would be as follows:
> --> >
> --> >
> --> >                 +-----+  1,2  +-----------+
> --> >                 | RB1 |-------| Rtg Fnctn |
> --> >                 +-----+       +-----------+
> --> >                    |
> --> >                    | 1,2
> --> >                    |
> --> >  +-----+   1    +-----+    2     +-----+
> --> >  | RB2 |--------| SW1 |----------| RB3 |
> --> >  +-----+        +-----+          +-----+
> --> >
> --> > The resulting logical topology MUST then be as follows:
> --> >
> --> >
> --> >  +-----+        +-----+       +-----------+
> --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> --> >  +-----+        +-----+       +-----+-----+
> --> >                                     |
> --> >                                  +--+--+          +-----+
> --> >                                  | RB1 |----------| RB3 |
> --> >                                  +-----+          +-----+
> --> >
> --> > Since the "routing function" is orthogonal, and well understood,
> --> > it does not make sense for us to try to combine this concept
with
> --> > RBridge behaviors and protocol interactions.
> --> >
> --> > --
> --> > Eric
> --> >
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] IVLANs vs OVLANs
> --> > -->
> --> > -->
> --> > --> During the last WG meeting I had an action item to send an
> --> > --> email on the
> --> > --> VLAN issue. Here it is.
> --> > -->
> --> > --> In a previous email I introduced the concept of IVLAN
> --> and OVLAN.
> --> > -->
> --> > --> IVLAN refers to the VLAN present on the untagged frames,
> --> > --> which must be
> --> > --> propagated by ISIS, VLAN pruning must be performed and so
> --> > --> on. All the
> --> > --> IVLANs share the same core instance of ISIS.
> --> > -->
> --> > --> OVLAN refers to the fact that the traffic between two
> --> > --> RBridges can be
> --> > --> encapsulated into a VLAN.
> --> > -->
> --> > --> If we look to the format of a TRILL encapsulated frame the
> --> > --> position of
> --> > --> these two fields is as follow:
> --> > -->
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   OVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |    ET = TRILL  | RES  |  TTL   |
> --> > --> +--------------------------------+
> --> > --> | Egress Add.    | Ingress Add.  |
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   IVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |             Payload            |
> --> > -->
> --> > --> Now let's consider the following topology:
> --> > -->
> --> > -->                +-----+
> --> > -->                | RB1 |
> --> > -->                +-----+
> --> > -->                   |
> --> > -->                   | 1,2
> --> > -->                   |
> --> > --> +-----+   1    +-----+    2     +-----+
> --> > --> | RB2 |--------| SW1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> --> Ethernet switch.
> --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> > --> between SW1 and RB3
> --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> --> trunk and it
> --> > --> carries both OVLAN 1 and 2.
> --> > -->
> --> > --> Now my question is: "do we have one CRED or two?"
> --> > -->
> --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> > --> RB1 but not
> --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> > --> but not RB2.
> --> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> > --> instance of
> --> > --> ISIS. RB2 may reach RB3 through RB1.
> --> > -->
> --> > --> The TRILL equivalent topology is:
> --> > -->
> --> > --> +-----+        +-----+          +-----+
> --> > --> | RB2 |--------| RB1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> b) another possible answer: "we have two CREDs". One is
> --> > --> composed by RB2
> --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> > --> since they are
> --> > --> in different CREDs.
> --> > -->
> --> > --> The TRILL equivalent topologies are:
> --> > -->
> --> > --> +-----+        +-----+
> --> > --> | RB2 |--------| RB1 |
> --> > --> +-----+        +-----+
> --> > -->
> --> > --> +-----+          +-----+
> --> > --> | RB1 |----------| RB3 |
> --> > --> +-----+          +-----+
> --> > -->
> --> > --> I like a) and I hope we are in agreement that the right
> --> > --> answer is a),
> --> > --> but I haven't seen it explained in any of the documents.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 18:16:20 -0800
From: "Larry Kreeger \(kreeger\)" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Silvano Gai" <[email-masked]>, "Russ White" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 3904

I just read through this thread so far and I understand where Silvano is
coming from, but I don't quite get what Eric is saying.

Maybe it would help if someone could answer the following.

When an RBridge sends a frame to another RBridge (other one containing
IS-IS or a data frame), can it be encapsulated with an outer VLAN tag,
or should we say that it cannot?

If the answer is that the frames cannot be encapsulated with an OVLAN,
then things become clearer.  In the topology Silvano originally showed
(repeated below), 

                +-----+
                | RB1 |
                +-----+
                   |
                   | 1,2
                   |
 +-----+   1    +-----+    2     +-----+
 | RB2 |--------| SW1 |----------| RB3 |
 +-----+        +-----+          +-----+

If we assume that SW1's port connected to RB1 has the "native"
port-based VLAN for untagged frames set to VLAN 1, then the RBridge
topologies would look like.

 +-----+        +-----+       +-----+
 | RB2 |--------| RB1 |       | RB3 |
 +-----+        +-----+       +-----+

If the answer is that RBridges can encapsulate frames with an OVLAN,
then each OVLAN on each of an RBridge's physical port should be
considered a separate logical port on the RBridge.  Separate IS-IS
hellos should be sent by an RBridge on each of the logical ports.  This
makes the topology look exactly like Silvano's second picture (repeated
below), 

                +-----+
                | RB1 |
                +-----+
                 |   |
               1 |   | 2
                 |   |
 +-----+   1    +-----+    2     +-----+
 | RB2 |--------| SW1 |----------| RB3 |
 +-----+        +-----+          +-----+

Which would make the RBridge topology look like:

 +-----+        +-----+       +-----+
 | RB2 |--------| RB1 |-------| RB3 |
 +-----+        +-----+       +-----+

 - Larry

Gray, Eric wrote on Thursday, November 16, 2006 7:39 AM:

> Silvano,			(note: Russ - please read this!!)
> 
> 	For the first part of your question, Radia and I had almost this
> exact same discussion during the BoF I mentioned.  The only
> legitimate way to get from one (logical) VLAN to another is via a
> routing function.   
> 
> 	Unless you include the "routing function" as part of the TRILL
> specification requirements - which does not, in any way, makes sense
> - then the model that applies is the one that has VLANs logically
> separated.  
> 
> 	That is strictly a VLAN separation issue.  The second part of
your
> question is trickier, hence it is good that you ask it and even
> better that you insisted on being understood.  :-)  
> 
> 	From an RBridge perspective, I believe it is sufficient that all
of
> the RBridges MUST support a common (probably the default - NULL) VLAN
> to ensure that all of them MUST peer with each other - at least for
> support of that (common) VLAN.  Hence, it should not be the case that
> any (proper) subset of RBridges would not peer exclusively with any
> other (proper) subset of RBridges in the same CRED.     
> 
> 	Also, from an IS-IS perspective (help me out here Russ), I am
> reasonably sure that adjacent/connected IS-IS instances MUST discover
> each other during peer discovery - even if they do not subsequently
> peer with each other (or having peered with each other, exchange any
> routing information).  I believe this would be the case, even if
> there was potentially some strange virtual L3 overlay topology
> involving separate L3 VPN instancing in the IS-IS routing deployment.
> 
> 	If that is the case, then - from a peer discovery perspective -
all
> RBridges will still be in the same CRED.  This is the perspective
> that matters, because it is the peer discovery process that allows
> the members of a CRED to "discover" potential _hidden_ loops in
> underlying    
> L2 topology.
> 
> 	See also my reply to your question about VLAN interactions with
> routing... 

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 17:22:38 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Russ White" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 11982

Eric,

The concept of "Null VLAN" does not exists in IEEE 802.1Q.

IEEE 802.1Q states:
"An untagged frame or a priority-tagged frame does not carry any
identification of the VLAN to which it belongs. Such frames are
classified as belonging to a particular VLAN based on parameters
associated with
the receiving Port, or, through proprietary extensions to this standard,
based on the data content of the frame (e.g., MAC Address, layer 3
protocol ID, etc.)."

Therefore all the frames inside an IEEE 802.1Q compliant-switch are
tagged with an VLAN independently from the fact that they came in
VLAN-Tagged, Priority-Tagged or untagged.

On entering an Rbridge a frame:
1) if it does not have a TRILL shim header, it is always tagged with an
IVLAN.
2) if it does have a TRILL shim header it always has both an OVLAN and
an IVLAN.

Do you agree?

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:39 AM
> To: Silvano Gai; Russ White
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,			(note: Russ - please read this!!)
> 
> 	For the first part of your question, Radia and I had almost
> this exact same discussion during the BoF I mentioned.  The only
> legitimate way to get from one (logical) VLAN to another is via a
> routing function.
> 
> 	Unless you include the "routing function" as part of the TRILL
> specification requirements - which does not, in any way, makes sense
> - then the model that applies is the one that has VLANs logically
> separated.
> 
> 	That is strictly a VLAN separation issue.  The second part of
> your question is trickier, hence it is good that you ask it and even
> better that you insisted on being understood.  :-)
> 
> 	From an RBridge perspective, I believe it is sufficient that all
> of the RBridges MUST support a common (probably the default - NULL)
> VLAN to ensure that all of them MUST peer with each other - at least
> for support of that (common) VLAN.  Hence, it should not be the case
> that any (proper) subset of RBridges would not peer exclusively with
> any other (proper) subset of RBridges in the same CRED.
> 
> 	Also, from an IS-IS perspective (help me out here Russ), I am
> reasonably sure that adjacent/connected IS-IS instances MUST discover
> each other during peer discovery - even if they do not subsequently
> peer with each other (or having peered with each other, exchange any
> routing information).  I believe this would be the case, even if there
> was potentially some strange virtual L3 overlay topology involving
> separate L3 VPN instancing in the IS-IS routing deployment.
> 
> 	If that is the case, then - from a peer discovery perspective -
> all RBridges will still be in the same CRED.  This is the perspective
> that matters, because it is the peer discovery process that allows the
> members of a CRED to "discover" potential _hidden_ loops in underlying
> L2 topology.
> 
> 	See also my reply to your question about VLAN interactions with
> routing...
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 12:57 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> Eric,
> -->
> --> I am just trying to understand if there is consensus in a) or b).
> -->
> --> The impression I got talking with Radia is that she was in
> --> favor of a).
> -->
> --> Your reply is my b) model to which you have added a router.
> --> Since b) is
> --> two separate layer 2 networks, you can put a router between
> --> the two, as
> --> you did.
> -->
> --> Please also note that I can redraw the same network in a
> --> different way:
> -->
> -->                 +-----+
> -->                 | RB1 |
> -->                 +-----+
> -->                  |  |
> -->                1 |  | 2
> -->                  |  |
> -->  +-----+   1    +-----+    2     +-----+
> -->  | RB2 |--------| SW1 |----------| RB3 |
> -->  +-----+        +-----+          +-----+
> -->
> --> Where I replaced the Etherchannel with two links, one in
> --> OVLAN=1 and one
> --> in OVLAN=2.
> -->
> --> Now is RB2 capable of talking to RB3 through RB1?
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 15, 2006 12:13 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	First of all, I will take very large exception to the
way
> --> > which you have over-loaded the term "CRED."  This term was
coined
> --> > to eliminate confusion caused by the various different was
people
> --> > were over-loading the term "Campus."
> --> >
> --> > 	At the "core" of your question, however, is the issue of
> --> > how VLANs interact in a bridged/RBridge environment.  It is not
> --> > different than would be the case in a "classical bridged LAN."
> --> >
> --> > 	This issue is based on a misconception that existed very
> --> > early on in the life of the TRILL working group (in the first
> --> > BoF, in fact).  The misconception is that VLAN connectivity may
> --> > be provided by RBridges and/or bridges.
> --> >
> --> > 	This is fundamentally incorrect.
> --> >
> --> > 	Interconnection of VLANs is strictly a routing function.
> --> > In deployed equipment that does this today, there may be some
> --> > form of "smart VLAN bridging" that occurs in devices people are
> --> > used to referring to as "bridges" or "switches."  That does not
> --> > change the fact that forwarding from one VLAN to another is a
> --> > "routing function."
> --> >
> --> > 	Note that, in this context, when I say "forwarding from
> --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> --> > LAN" as a logical concept.  This has nothing to do with the fact
> --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> --> >
> --> > 	Consequently, in the picture you have below, the VLANs
> --> > represented by the VLAN-tag in the tunnel encapsulation may
> --> > not be connected together by RB1.
> --> >
> --> > 	To correctly restate your question, the original
topology
> --> > would be as follows:
> --> >
> --> >
> --> >                 +-----+  1,2  +-----------+
> --> >                 | RB1 |-------| Rtg Fnctn |
> --> >                 +-----+       +-----------+
> --> >                    |
> --> >                    | 1,2
> --> >                    |
> --> >  +-----+   1    +-----+    2     +-----+
> --> >  | RB2 |--------| SW1 |----------| RB3 |
> --> >  +-----+        +-----+          +-----+
> --> >
> --> > The resulting logical topology MUST then be as follows:
> --> >
> --> >
> --> >  +-----+        +-----+       +-----------+
> --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> --> >  +-----+        +-----+       +-----+-----+
> --> >                                     |
> --> >                                  +--+--+          +-----+
> --> >                                  | RB1 |----------| RB3 |
> --> >                                  +-----+          +-----+
> --> >
> --> > Since the "routing function" is orthogonal, and well understood,
> --> > it does not make sense for us to try to combine this concept
with
> --> > RBridge behaviors and protocol interactions.
> --> >
> --> > --
> --> > Eric
> --> >
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] IVLANs vs OVLANs
> --> > -->
> --> > -->
> --> > --> During the last WG meeting I had an action item to send an
> --> > --> email on the
> --> > --> VLAN issue. Here it is.
> --> > -->
> --> > --> In a previous email I introduced the concept of IVLAN
> --> and OVLAN.
> --> > -->
> --> > --> IVLAN refers to the VLAN present on the untagged frames,
> --> > --> which must be
> --> > --> propagated by ISIS, VLAN pruning must be performed and so
> --> > --> on. All the
> --> > --> IVLANs share the same core instance of ISIS.
> --> > -->
> --> > --> OVLAN refers to the fact that the traffic between two
> --> > --> RBridges can be
> --> > --> encapsulated into a VLAN.
> --> > -->
> --> > --> If we look to the format of a TRILL encapsulated frame the
> --> > --> position of
> --> > --> these two fields is as follow:
> --> > -->
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   OVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |    ET = TRILL  | RES  |  TTL   |
> --> > --> +--------------------------------+
> --> > --> | Egress Add.    | Ingress Add.  |
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   IVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |             Payload            |
> --> > -->
> --> > --> Now let's consider the following topology:
> --> > -->
> --> > -->                +-----+
> --> > -->                | RB1 |
> --> > -->                +-----+
> --> > -->                   |
> --> > -->                   | 1,2
> --> > -->                   |
> --> > --> +-----+   1    +-----+    2     +-----+
> --> > --> | RB2 |--------| SW1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> --> Ethernet switch.
> --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> > --> between SW1 and RB3
> --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> --> trunk and it
> --> > --> carries both OVLAN 1 and 2.
> --> > -->
> --> > --> Now my question is: "do we have one CRED or two?"
> --> > -->
> --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> > --> RB1 but not
> --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> > --> but not RB2.
> --> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> > --> instance of
> --> > --> ISIS. RB2 may reach RB3 through RB1.
> --> > -->
> --> > --> The TRILL equivalent topology is:
> --> > -->
> --> > --> +-----+        +-----+          +-----+
> --> > --> | RB2 |--------| RB1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> b) another possible answer: "we have two CREDs". One is
> --> > --> composed by RB2
> --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> > --> since they are
> --> > --> in different CREDs.
> --> > -->
> --> > --> The TRILL equivalent topologies are:
> --> > -->
> --> > --> +-----+        +-----+
> --> > --> | RB2 |--------| RB1 |
> --> > --> +-----+        +-----+
> --> > -->
> --> > --> +-----+          +-----+
> --> > --> | RB1 |----------| RB3 |
> --> > --> +-----+          +-----+
> --> > -->
> --> > --> I like a) and I hope we are in agreement that the right
> --> > --> answer is a),
> --> > --> but I haven't seen it explained in any of the documents.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 17:10:21 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 11250

Eric,

Inline the reply to your email, can you now reply to my email with the
two hosts added and explain me why I am incorrect?

Thank You

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:31 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,
> 
> 	Sorry, but you are incorrect.
> 
> 	Routers are "end-stations" to a layer 2 network - hence it is
> necessarily the case that TRILL frames MUST egress the RBridge CRED
> prior to being delivered to a "routing function."  In the same way,
> any frame delivered frome a "routing function" MUST ingress the CRED
> for subsequent delivery in the form of TRILL frames.
> 
> 	This is a logical distinction and does not - in any way - limit
> your implementation choices.  Logically, what happens is:
> 
> 1) the TRILL encapsulation is stripped, along with the SHIM header.

This happens only if the Dest. RBridge address in the shim matches the
RBridge address.

In the moment you strip the outer header, what do you do with the OVLAN
information? Do you simply discard it? This is key and I need a clear
reply to this question.

> 2) the frame is forwarded (possibly locally, possibly only logically)
>    to the component that implements the "routing function",

One step at the time: the frame is passed to the bridging function of
the IVLAN.

The bridging function of the IVLAN delivers the frame according to its
inner destination MAC address.

If and only if the inner destination MAC address is that of a router the
frame is delivered to the sub-interface of the router associated with
the IVLAN.

> 3) the remaining Ethernet header is stripped, delivering the data (an
>    IP packet) - along with relevant packet information (such as
length)
>    - to the "routing function",
> 4) the "routing function" is used (including, for example ACLs, policy
>    based forwarding, etc.) to determine how to forward the _packet_ -
>    including forwarding to a logical "interface" on a distinct VLAN,

This VLAN is an IVLAN, not an OVLAN.

> 5) after the forwarding decision is made, appropriate encapsulation is
>    added to the IP packet, again converting it (in this case) to an
>    Ethernet frame,
> 6) the resulting Ethernet frame is forwarded (possibly locally,
possibly
>    only logically) from the component implementing the "routing
function"
>    to the appropriate RBridge component,

The frame is delivered to the bridging function associated to the new
IVLAN.
If a designated RBridge is connected to that bridging function, the
frame will be reencapsulated and transmitted.

-- Silvano

> 7) the RBridge component then provides ingress for the frame by adding
>    a SHIM and re-encapsulating the frame with the appropriate TRILL
>    encapsulation.
> 
> 	To RE-EMPHASIZE, this is what happens logically.  What you do in
> your implementation may differ substantially from this.  It may - for
> example - be quite a bit simpler.  How you do this is why you get paid
> the big bucks.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 1:45 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> Eric,
> -->
> --> On a second thought, you cannot put a router between OVLAN=1 and
> --> OVLAN=2, the frame is not routable, since its Ethertype is
> --> TRILL, not
> --> IPv4 or IPv6.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 15, 2006 12:13 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	First of all, I will take very large exception to the
way
> --> > which you have over-loaded the term "CRED."  This term was
coined
> --> > to eliminate confusion caused by the various different was
people
> --> > were over-loading the term "Campus."
> --> >
> --> > 	At the "core" of your question, however, is the issue of
> --> > how VLANs interact in a bridged/RBridge environment.  It is not
> --> > different than would be the case in a "classical bridged LAN."
> --> >
> --> > 	This issue is based on a misconception that existed very
> --> > early on in the life of the TRILL working group (in the first
> --> > BoF, in fact).  The misconception is that VLAN connectivity may
> --> > be provided by RBridges and/or bridges.
> --> >
> --> > 	This is fundamentally incorrect.
> --> >
> --> > 	Interconnection of VLANs is strictly a routing function.
> --> > In deployed equipment that does this today, there may be some
> --> > form of "smart VLAN bridging" that occurs in devices people are
> --> > used to referring to as "bridges" or "switches."  That does not
> --> > change the fact that forwarding from one VLAN to another is a
> --> > "routing function."
> --> >
> --> > 	Note that, in this context, when I say "forwarding from
> --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> --> > LAN" as a logical concept.  This has nothing to do with the fact
> --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> --> >
> --> > 	Consequently, in the picture you have below, the VLANs
> --> > represented by the VLAN-tag in the tunnel encapsulation may
> --> > not be connected together by RB1.
> --> >
> --> > 	To correctly restate your question, the original
topology
> --> > would be as follows:
> --> >
> --> >
> --> >                 +-----+  1,2  +-----------+
> --> >                 | RB1 |-------| Rtg Fnctn |
> --> >                 +-----+       +-----------+
> --> >                    |
> --> >                    | 1,2
> --> >                    |
> --> >  +-----+   1    +-----+    2     +-----+
> --> >  | RB2 |--------| SW1 |----------| RB3 |
> --> >  +-----+        +-----+          +-----+
> --> >
> --> > The resulting logical topology MUST then be as follows:
> --> >
> --> >
> --> >  +-----+        +-----+       +-----------+
> --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> --> >  +-----+        +-----+       +-----+-----+
> --> >                                     |
> --> >                                  +--+--+          +-----+
> --> >                                  | RB1 |----------| RB3 |
> --> >                                  +-----+          +-----+
> --> >
> --> > Since the "routing function" is orthogonal, and well understood,
> --> > it does not make sense for us to try to combine this concept
with
> --> > RBridge behaviors and protocol interactions.
> --> >
> --> > --
> --> > Eric
> --> >
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] IVLANs vs OVLANs
> --> > -->
> --> > -->
> --> > --> During the last WG meeting I had an action item to send an
> --> > --> email on the
> --> > --> VLAN issue. Here it is.
> --> > -->
> --> > --> In a previous email I introduced the concept of IVLAN
> --> and OVLAN.
> --> > -->
> --> > --> IVLAN refers to the VLAN present on the untagged frames,
> --> > --> which must be
> --> > --> propagated by ISIS, VLAN pruning must be performed and so
> --> > --> on. All the
> --> > --> IVLANs share the same core instance of ISIS.
> --> > -->
> --> > --> OVLAN refers to the fact that the traffic between two
> --> > --> RBridges can be
> --> > --> encapsulated into a VLAN.
> --> > -->
> --> > --> If we look to the format of a TRILL encapsulated frame the
> --> > --> position of
> --> > --> these two fields is as follow:
> --> > -->
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   OVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |    ET = TRILL  | RES  |  TTL   |
> --> > --> +--------------------------------+
> --> > --> | Egress Add.    | Ingress Add.  |
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   IVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |             Payload            |
> --> > -->
> --> > --> Now let's consider the following topology:
> --> > -->
> --> > -->                +-----+
> --> > -->                | RB1 |
> --> > -->                +-----+
> --> > -->                   |
> --> > -->                   | 1,2
> --> > -->                   |
> --> > --> +-----+   1    +-----+    2     +-----+
> --> > --> | RB2 |--------| SW1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> --> Ethernet switch.
> --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> > --> between SW1 and RB3
> --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> --> trunk and it
> --> > --> carries both OVLAN 1 and 2.
> --> > -->
> --> > --> Now my question is: "do we have one CRED or two?"
> --> > -->
> --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> > --> RB1 but not
> --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> > --> but not RB2.
> --> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> > --> instance of
> --> > --> ISIS. RB2 may reach RB3 through RB1.
> --> > -->
> --> > --> The TRILL equivalent topology is:
> --> > -->
> --> > --> +-----+        +-----+          +-----+
> --> > --> | RB2 |--------| RB1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> b) another possible answer: "we have two CREDs". One is
> --> > --> composed by RB2
> --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> > --> since they are
> --> > --> in different CREDs.
> --> > -->
> --> > --> The TRILL equivalent topologies are:
> --> > -->
> --> > --> +-----+        +-----+
> --> > --> | RB2 |--------| RB1 |
> --> > --> +-----+        +-----+
> --> > -->
> --> > --> +-----+          +-----+
> --> > --> | RB1 |----------| RB3 |
> --> > --> +-----+          +-----+
> --> > -->
> --> > --> I like a) and I hope we are in agreement that the right
> --> > --> answer is a),
> --> > --> but I haven't seen it explained in any of the documents.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

From: "Gray, Eric" <[email-masked]>
To: "'Silvano Gai'" <[email-masked]>, "Gray, Eric" <[email-masked]>, Russ White <[email-masked]>
Date: Thu, 16 Nov 2006 16:55:45 -0500
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 12594

Silvano,

	You need to read my other mail.

	Once you realize that there are logical models that apply, and
start using them, it should become clear to you why there is not a
really useful reason to make the distinction you're making between
the VLANs that may exist for RBridges and the VANs that may exist 
around the RBridges.  They are logically distinct, not philosophically
distinct...

--
Eric

-----Original Message-----
From: Silvano Gai [mailto:[email-masked]] 
Sent: Thursday, November 16, 2006 11:01 AM
To: Gray, Eric; Russ White
Cc: [email-masked]
Subject: RE: [rbridge] IVLANs vs OVLANs

Eric,

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:39 AM
> To: Silvano Gai; Russ White
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,			(note: Russ - please read this!!)
> 
> 	For the first part of your question, Radia and I had almost
> this exact same discussion during the BoF I mentioned.  The only
> legitimate way to get from one (logical) VLAN to another is via a
> routing function.

Eric you really need to start to think in term of OVLAN and IVLAN and in
term of access ports and trunk port. The fact that products may use the
same port to be a trunk and an access at the same time is OK, so as it
is OK that the IVLANs and OVLANs are both implemented used using the 1Q
tagging scheme.

Without a clear terminology we will not be able to agree on anything.

What you are saying is not true for OVLANs. A frame, when it has an
OVLAN, i.e. it is on a trunk port, i.e. it has a TRILL shim, i.e. it has
an outer header, CANNOT have the outer MAC address of a router.
Therefore saying that "The only legitimate way to get from one (logical)
VLAN to another is via a
routing function" is incorrect in the case of OVLANs.

It may be the common case for IVLANs, but there are exceptions in today
networks, starting from NAT.

-- Silvano

> 
> 	Unless you include the "routing function" as part of the TRILL
> specification requirements - which does not, in any way, makes sense
> - then the model that applies is the one that has VLANs logically
> separated.
> 
> 	That is strictly a VLAN separation issue.  The second part of
> your question is trickier, hence it is good that you ask it and even
> better that you insisted on being understood.  :-)
> 
> 	From an RBridge perspective, I believe it is sufficient that all
> of the RBridges MUST support a common (probably the default - NULL)
> VLAN to ensure that all of them MUST peer with each other - at least
> for support of that (common) VLAN.  Hence, it should not be the case
> that any (proper) subset of RBridges would not peer exclusively with
> any other (proper) subset of RBridges in the same CRED.
> 
> 	Also, from an IS-IS perspective (help me out here Russ), I am
> reasonably sure that adjacent/connected IS-IS instances MUST discover
> each other during peer discovery - even if they do not subsequently
> peer with each other (or having peered with each other, exchange any
> routing information).  I believe this would be the case, even if there
> was potentially some strange virtual L3 overlay topology involving
> separate L3 VPN instancing in the IS-IS routing deployment.
> 
> 	If that is the case, then - from a peer discovery perspective -
> all RBridges will still be in the same CRED.  This is the perspective
> that matters, because it is the peer discovery process that allows the
> members of a CRED to "discover" potential _hidden_ loops in underlying
> L2 topology.
> 
> 	See also my reply to your question about VLAN interactions with
> routing...
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 12:57 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> Eric,
> -->
> --> I am just trying to understand if there is consensus in a) or b).
> -->
> --> The impression I got talking with Radia is that she was in
> --> favor of a).
> -->
> --> Your reply is my b) model to which you have added a router.
> --> Since b) is
> --> two separate layer 2 networks, you can put a router between
> --> the two, as
> --> you did.
> -->
> --> Please also note that I can redraw the same network in a
> --> different way:
> -->
> -->                 +-----+
> -->                 | RB1 |
> -->                 +-----+
> -->                  |  |
> -->                1 |  | 2
> -->                  |  |
> -->  +-----+   1    +-----+    2     +-----+
> -->  | RB2 |--------| SW1 |----------| RB3 |
> -->  +-----+        +-----+          +-----+
> -->
> --> Where I replaced the Etherchannel with two links, one in
> --> OVLAN=1 and one
> --> in OVLAN=2.
> -->
> --> Now is RB2 capable of talking to RB3 through RB1?
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 15, 2006 12:13 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	First of all, I will take very large exception to the
way
> --> > which you have over-loaded the term "CRED."  This term was
coined
> --> > to eliminate confusion caused by the various different was
people
> --> > were over-loading the term "Campus."
> --> >
> --> > 	At the "core" of your question, however, is the issue of
> --> > how VLANs interact in a bridged/RBridge environment.  It is not
> --> > different than would be the case in a "classical bridged LAN."
> --> >
> --> > 	This issue is based on a misconception that existed very
> --> > early on in the life of the TRILL working group (in the first
> --> > BoF, in fact).  The misconception is that VLAN connectivity may
> --> > be provided by RBridges and/or bridges.
> --> >
> --> > 	This is fundamentally incorrect.
> --> >
> --> > 	Interconnection of VLANs is strictly a routing function.
> --> > In deployed equipment that does this today, there may be some
> --> > form of "smart VLAN bridging" that occurs in devices people are
> --> > used to referring to as "bridges" or "switches."  That does not
> --> > change the fact that forwarding from one VLAN to another is a
> --> > "routing function."
> --> >
> --> > 	Note that, in this context, when I say "forwarding from
> --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> --> > LAN" as a logical concept.  This has nothing to do with the fact
> --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> --> >
> --> > 	Consequently, in the picture you have below, the VLANs
> --> > represented by the VLAN-tag in the tunnel encapsulation may
> --> > not be connected together by RB1.
> --> >
> --> > 	To correctly restate your question, the original
topology
> --> > would be as follows:
> --> >
> --> >
> --> >                 +-----+  1,2  +-----------+
> --> >                 | RB1 |-------| Rtg Fnctn |
> --> >                 +-----+       +-----------+
> --> >                    |
> --> >                    | 1,2
> --> >                    |
> --> >  +-----+   1    +-----+    2     +-----+
> --> >  | RB2 |--------| SW1 |----------| RB3 |
> --> >  +-----+        +-----+          +-----+
> --> >
> --> > The resulting logical topology MUST then be as follows:
> --> >
> --> >
> --> >  +-----+        +-----+       +-----------+
> --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> --> >  +-----+        +-----+       +-----+-----+
> --> >                                     |
> --> >                                  +--+--+          +-----+
> --> >                                  | RB1 |----------| RB3 |
> --> >                                  +-----+          +-----+
> --> >
> --> > Since the "routing function" is orthogonal, and well understood,
> --> > it does not make sense for us to try to combine this concept
with
> --> > RBridge behaviors and protocol interactions.
> --> >
> --> > --
> --> > Eric
> --> >
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] IVLANs vs OVLANs
> --> > -->
> --> > -->
> --> > --> During the last WG meeting I had an action item to send an
> --> > --> email on the
> --> > --> VLAN issue. Here it is.
> --> > -->
> --> > --> In a previous email I introduced the concept of IVLAN
> --> and OVLAN.
> --> > -->
> --> > --> IVLAN refers to the VLAN present on the untagged frames,
> --> > --> which must be
> --> > --> propagated by ISIS, VLAN pruning must be performed and so
> --> > --> on. All the
> --> > --> IVLANs share the same core instance of ISIS.
> --> > -->
> --> > --> OVLAN refers to the fact that the traffic between two
> --> > --> RBridges can be
> --> > --> encapsulated into a VLAN.
> --> > -->
> --> > --> If we look to the format of a TRILL encapsulated frame the
> --> > --> position of
> --> > --> these two fields is as follow:
> --> > -->
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   OVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |    ET = TRILL  | RES  |  TTL   |
> --> > --> +--------------------------------+
> --> > --> | Egress Add.    | Ingress Add.  |
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   IVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |             Payload            |
> --> > -->
> --> > --> Now let's consider the following topology:
> --> > -->
> --> > -->                +-----+
> --> > -->                | RB1 |
> --> > -->                +-----+
> --> > -->                   |
> --> > -->                   | 1,2
> --> > -->                   |
> --> > --> +-----+   1    +-----+    2     +-----+
> --> > --> | RB2 |--------| SW1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> --> Ethernet switch.
> --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> > --> between SW1 and RB3
> --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> --> trunk and it
> --> > --> carries both OVLAN 1 and 2.
> --> > -->
> --> > --> Now my question is: "do we have one CRED or two?"
> --> > -->
> --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> > --> RB1 but not
> --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> > --> but not RB2.
> --> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> > --> instance of
> --> > --> ISIS. RB2 may reach RB3 through RB1.
> --> > -->
> --> > --> The TRILL equivalent topology is:
> --> > -->
> --> > --> +-----+        +-----+          +-----+
> --> > --> | RB2 |--------| RB1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> b) another possible answer: "we have two CREDs". One is
> --> > --> composed by RB2
> --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> > --> since they are
> --> > --> in different CREDs.
> --> > -->
> --> > --> The TRILL equivalent topologies are:
> --> > -->
> --> > --> +-----+        +-----+
> --> > --> | RB2 |--------| RB1 |
> --> > --> +-----+        +-----+
> --> > -->
> --> > --> +-----+          +-----+
> --> > --> | RB1 |----------| RB3 |
> --> > --> +-----+          +-----+
> --> > -->
> --> > --> I like a) and I hope we are in agreement that the right
> --> > --> answer is a),
> --> > --> but I haven't seen it explained in any of the documents.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

Date: Thu, 16 Nov 2006 19:00:29 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Silvano Gai <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 9213

Silvano,
      I am glad you appreciate the value of hierarchy in L2 addresses.
       Can you elaborate on 2) ? Sorry, but I do not catch the idea.
Guillermo

Silvano Gai escribi?:
> Eric,
>
>
>   
>> -----Original Message-----
>> From: [email-masked] [mailto:[email-masked]] On
>> Behalf Of Gray, Eric
>> Sent: Wednesday, November 15, 2006 1:32 PM
>> To: Guillermo Ib??ez; J. R. Rivers
>> Cc: [email-masked]; Radia Perlman
>> Subject: Re: [rbridge] Should we optimize the common case?
>>
>> Guillermo,
>>
>> 	In an ideal world, this would be true.  However, these ideas
>> are recurring and - as a strictly practical issue - they have to
>> cooperate in a world that has moved on from past iterations of the
>> same ideas.
>>
>> 	For the most part, the answer you're going to find here is:
>> if you need hierarchical addressing, you've come to the right place
>> - just use IP...
>>     
>
> Can we stop making this argument? It is not constructive.
> I think Guillermo understand the difference between Layer 2 and IP, as well as we do.
>
> I am not sure I agree the TRILL should use Hierarchical MAC addresses, but I definitely agree that this has been proposed in several different forums/occasions and it has some value.
>
> We also need to clearly say that there are two different possible uses of Hierarchical MAC Addresses:
>
> 1) The switch assigns to the end node of a hierarchical MAC address. This goes in the inner header.
>
> 2) The switch uses in the outer header hierarchical MAC addresses to encode different kind of information.
>
> IMHO 1) is interesting but it does not support legacy and therefore is pragmatically difficult. I also don't believe in NATting the MAC addresses.
>
> 2) can be explored and used if needed.
>
> -- Silvano
>
>
>   
>> --
>> Eric
>>
>> --> -----Original Message-----
>> --> From: [email-masked]
>> --> [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
>> --> Sent: Wednesday, November 15, 2006 10:32 AM
>> --> To: J. R. Rivers
>> --> Cc: [email-masked]; Radia Perlman
>> --> Subject: Re: [rbridge] Should we optimize the common case?
>> -->
>> --> While agreeing with some of the arguments, I see far from ideal for
>> --> scalability that RBridges advertise host lists with a
>> --> number of host L2
>> --> addresses impossible to consolidate.
>> --> Looking for some hierarchy and structure in L2 addresses,
>> --> although not
>> --> easy at first glance, may provide long term benefits in scalability.
>> --> Guillermo
>> -->
>> --> J. R. Rivers escribi?:
>> --> > I've worked on such systems, and while the address
>> --> summarization creates a degree of scale, you generally find
>> --> that the fixed association between endnode and switch is
>> --> very restricting and limiting.
>> --> >
>> --> > This is one of the reasons that I find TRILL very
>> --> clean... the relationship between an endnode and an rbridge
>> --> is that of convenience, not requirement.
>> --> >
>> --> > I can build multi-homed networks... assuming that an edge
>> --> rbridge can maintain multiple endhost->rbridge associations
>> --> without changing the forwarding constructs of the rbridge
>> --> "core".  This occurs because each edge rbridge advertises
>> --> reachability to the host.
>> --> >
>> --> > I can redirect frames through an rbridge network without
>> --> changing the underlying L2 constructs (as required by many
>> --> IDS/crypto protocols).  Then I can forward them to their
>> --> intended destinations.
>> --> >
>> --> > All of these require support from coordinating edge
>> --> rbridges... the endhosts, other edge rbridges, and core
>> --> rbridges are blissfully unaware of these goings on.
>> --> >
>> --> > All this comes from partitioning the system into a
>> --> simple, fast, cheap HW forwarding plane and a fully SW
>> --> managed control plane.
>> --> >
>> --> > JR
>> --> >
>> --> >
>> --> >
>> --> >> -----Original Message-----
>> --> >> From: Guillermo Ib??ez [mailto:[email-masked]]
>> --> >> Sent: Tuesday, November 14, 2006 2:37 AM
>> --> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
>> --> >> Cc: [email-masked]
>> --> >> Subject: Re: [rbridge] Should we optimize the common case?
>> --> >>
>> --> >> I think there is a misunderstanding.  This is IMHO a
>> --> >> practical alternative:
>> --> >> -An RBridge port is connected to a  "link" and receives
>> --> frames from
>> --> >> multiple hosts:  The RBridge builds an internal
>> --> translation table of
>> --> >> global MACs to hierarchical MACs (HMACs) assigned by him
>> --> and replaces
>> --> >> global MAC by hierarchical MAC in the original frame.
>> --> >> -These hierarchical MAC addresses for hosts contain the RBridge
>> --> >> Nickname, so it becomes *part* of the complete host address
>> --> >> transmitted
>> --> >> as "original" frame.  So these addresses should contain
>> --> >> RBridge Nickname
>> --> >> with host nickname appended (internal grouping of host
>> --> nicknames per
>> --> >> RBridge port ID would also help). To be defined.
>> --> >> - Hierarchical MAC MAY also be used in the ARP response
>> --> packets (when
>> --> >> RBridge acts as proxy ARP or by interception of the host
>> --> response
>> --> >> packet), so the requester obtains the hierarchical MAC
>> --> >> address instead
>> --> >> of the global one and uses it for all transactions.
>> --> >> - The hosts with hierarchical MAC addresses do not need being
>> --> >> announced
>> --> >> by the RBridges in their host lists, because their DR RBridge
>> --> >> nickname
>> --> >> is included in the hierarchical MAC address of host in
>> --> the "original"
>> --> >> (now altered with HMAC) frame.
>> --> >> - Frames with inner hierarchical destination address need
>> --> >> only to read
>> --> >> the destination RBridge Nickname to obtain the egrees RBridge
>> --> >> (no need
>> --> >> to look host-RBridge table). The host list mechanism is
>> --> not used by
>> --> >> hosts whose RBridge handles them with hierarchical addressing.
>> --> >> Both types, global and local hierarchical addresses may
>> --> >> coexist. Local
>> --> >> hierarchical save processing and enhance scalability.
>> --> >> Hope this clarifies.
>> --> >> Guillermo
>> --> >>
>> --> >> PD.
>> --> >> Other issues
>> --> >> -DHCP-like mechanism
>> --> >> Hierarchical MACs can be assigned with DHCP like mechanism to
>> --> >> hosts, but
>> --> >> IMHO this has impact on end nodes, so it can not be the standard
>> --> >> mechanism, only an option.
>> --> >> - Generic hierarchical MAC addresses and masks (ref. Dr.
>> --> >> Morales slide)
>> --> >> I proposed the generic addressing format  that includes
>> --> hierarchical
>> --> >> masks looking for a generic addressing space, that could
>> --> be useful to
>> --> >> scale further RBridges in the future. I understand that at
>> --> >> this stage of
>> --> >> definition of RBridges to look for a fully generic
>> --> format could be
>> --> >> disruptive. However, the need for a generic hierarchical
>> --> addressing
>> --> >> space in Ethernet is growing.
>> --> >>
>> --> >>
>> --> >>
>> --> >>
>> --> >> Caitlin Bestler escribi?:
>> --> >>> Radia Perlman wrote:
>> --> >>>
>> --> >>>> Not sure I've been following this, but let me conjecture what
>> --> >>>> people are suggesting, and if I'm right about the suggestion,
>> --> >>>> I think it's a good idea. Correct me if it's not what
>> --> people are
>> --> >>>> saying.
>> --> >>>>
>> --> >>>> So I think what they are saying is the following:
>> --> >>>> a) there are cases where an RBridge has a block of addresses
>> --> >>>> (like DHCP) that it hands out to endnodes
>> --> >>>> b) in that case, it would be nice if the RBridge can
>> --> >>>> announce, in its LSP, the whole range of addresses, rather
>> --> >>>> than reporting each individually
>> --> >>>> c) the change would be an ability to express a range in the
>> --> >>>> endnode announcement. This seems easy, but I think it would
>> --> >>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be
>> --> >> individual
>> --> >>>> addresses. The 2nd TLV would be pairs of addresses
>> --> (low, high). Or
>> --> >>>> (low, increment), as in "starting with address X,
>> --> >>>> 32 addresses" (which would take up a bit less space
>> --> than two MAC
>> --> >>>> addresses.
>> --> >>>>
>> --> >>>> I don't think of this as a hierarchical address---I just
>> --> >>>> think of it as a range of addresses reachable from one RBridge.
>> --> >>>>
>> --> >>>>
>> --> >>> Reduction in the total number of reports required to support N
>> --> >>> addresses is probably the only benefit of "hierarchical
>> --> addresses"
>> --> >>> that we can achieve if we are going to support global-scope MAC
>> --> >>> addresses as well. Which I'm certain everyone agrees is a given.
>> --> >>>
>> --> >>>
>> --> >
>> --> _______________________________________________
>> --> rbridge mailing list
>> --> [email-masked]
>> --> http://mailman.postel.org/mailman/listinfo/rbridge
>> -->
>>
>> _______________________________________________
>> rbridge mailing list
>> [email-masked]
>> http://mailman.postel.org/mailman/listinfo/rbridge
>>     

Date: Thu, 16 Nov 2006 18:18:30 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 9677

Of course there are a lot of them that do.
But there are others that do not: Provider Backbone Bridges performs 
Ethernet based
tunnelling. 
Guillermo

Gray, Eric escribi?:
> Guillermo,
>
> 	Are you sure we are not?  Are there not a plethora of L2
> overlay services based on one or more IP-based tunneling schemes?
>
> --
> Eric 
>
> --> -----Original Message-----
> --> From: Guillermo Ib??ez [mailto:[email-masked]] 
> --> Sent: Thursday, November 16, 2006 1:42 AM
> --> To: Gray, Eric
> --> Cc: J. R. Rivers; [email-masked]; Radia Perlman
> --> Subject: Re: [rbridge] Should we optimize the common case?
> --> 
> --> 
> --> 
> --> Gray, Eric escribi?:
> --> > Guillermo,
> --> >
> --> > 	In an ideal world, this would be true.  However, these ideas
> --> > are recurring and - as a strictly practical issue - they have to 
> --> > cooperate in a world that has moved on from past 
> --> iterations of the 
> --> > same ideas
> --> >   
> --> > 	For the most part, the answer you're going to find here is:
> --> > if you need hierarchical addressing, you've come to the 
> --> right place
> --> >   
> --> > - just use IP...
> --> >   
> --> If this is so, why are not using IP to scale up  Metro 
> --> Ethernet Networks 
> --> and Provider Backbone Bridges? 
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked] 
> --> > --> [mailto:[email-masked]] On Behalf Of 
> --> Guillermo Ib??ez
> --> > --> Sent: Wednesday, November 15, 2006 10:32 AM
> --> > --> To: J. R. Rivers
> --> > --> Cc: [email-masked]; Radia Perlman
> --> > --> Subject: Re: [rbridge] Should we optimize the common case?
> --> > --> 
> --> > --> While agreeing with some of the arguments, I see far 
> --> from ideal for 
> --> > --> scalability that RBridges advertise host lists with a 
> --> > --> number of host L2 
> --> > --> addresses impossible to consolidate.
> --> > --> Looking for some hierarchy and structure in L2 addresses, 
> --> > --> although not 
> --> > --> easy at first glance, may provide long term benefits 
> --> in scalability.
> --> > --> Guillermo
> --> > --> 
> --> > --> J. R. Rivers escribi?:
> --> > --> > I've worked on such systems, and while the address 
> --> > --> summarization creates a degree of scale, you generally find 
> --> > --> that the fixed association between endnode and switch is 
> --> > --> very restricting and limiting.  
> --> > --> > 
> --> > --> > This is one of the reasons that I find TRILL very 
> --> > --> clean... the relationship between an endnode and an rbridge 
> --> > --> is that of convenience, not requirement.
> --> > --> > 
> --> > --> > I can build multi-homed networks... assuming that an edge 
> --> > --> rbridge can maintain multiple endhost->rbridge associations 
> --> > --> without changing the forwarding constructs of the rbridge 
> --> > --> "core".  This occurs because each edge rbridge advertises 
> --> > --> reachability to the host.
> --> > --> > 
> --> > --> > I can redirect frames through an rbridge network without 
> --> > --> changing the underlying L2 constructs (as required by many 
> --> > --> IDS/crypto protocols).  Then I can forward them to their 
> --> > --> intended destinations.
> --> > --> > 
> --> > --> > All of these require support from coordinating edge 
> --> > --> rbridges... the endhosts, other edge rbridges, and core 
> --> > --> rbridges are blissfully unaware of these goings on.
> --> > --> > 
> --> > --> > All this comes from partitioning the system into a 
> --> > --> simple, fast, cheap HW forwarding plane and a fully SW 
> --> > --> managed control plane.
> --> > --> > 
> --> > --> > JR
> --> > --> > 
> --> > --> > 
> --> > --> > 
> --> > --> >> -----Original Message-----
> --> > --> >> From: Guillermo Ib??ez [mailto:[email-masked]] 
> --> > --> >> Sent: Tuesday, November 14, 2006 2:37 AM
> --> > --> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; 
> --> Silvano Gai
> --> > --> >> Cc: [email-masked]
> --> > --> >> Subject: Re: [rbridge] Should we optimize the common case?
> --> > --> >>
> --> > --> >> I think there is a misunderstanding.  This is IMHO a 
> --> > --> >> practical alternative:
> --> > --> >> -An RBridge port is connected to a  "link" and receives 
> --> > --> frames from 
> --> > --> >> multiple hosts:  The RBridge builds an internal 
> --> > --> translation table of  
> --> > --> >> global MACs to hierarchical MACs (HMACs) assigned by him 
> --> > --> and replaces 
> --> > --> >> global MAC by hierarchical MAC in the original frame.
> --> > --> >> -These hierarchical MAC addresses for hosts 
> --> contain the RBridge 
> --> > --> >> Nickname, so it becomes *part* of the complete 
> --> host address 
> --> > --> >> transmitted 
> --> > --> >> as "original" frame.  So these addresses should contain 
> --> > --> >> RBridge Nickname 
> --> > --> >> with host nickname appended (internal grouping of host 
> --> > --> nicknames per 
> --> > --> >> RBridge port ID would also help). To be defined.
> --> > --> >> - Hierarchical MAC MAY also be used in the ARP response 
> --> > --> packets (when 
> --> > --> >> RBridge acts as proxy ARP or by interception of the host 
> --> > --> response 
> --> > --> >> packet), so the requester obtains the hierarchical MAC 
> --> > --> >> address instead 
> --> > --> >> of the global one and uses it for all transactions.
> --> > --> >> - The hosts with hierarchical MAC addresses do not 
> --> need being 
> --> > --> >> announced 
> --> > --> >> by the RBridges in their host lists, because their 
> --> DR RBridge 
> --> > --> >> nickname  
> --> > --> >> is included in the hierarchical MAC address of host in 
> --> > --> the "original" 
> --> > --> >> (now altered with HMAC) frame.
> --> > --> >> - Frames with inner hierarchical destination address need 
> --> > --> >> only to read 
> --> > --> >> the destination RBridge Nickname to obtain the 
> --> egrees RBridge 
> --> > --> >> (no need 
> --> > --> >> to look host-RBridge table). The host list mechanism is 
> --> > --> not used by  
> --> > --> >> hosts whose RBridge handles them with hierarchical 
> --> addressing. 
> --> > --> >> Both types, global and local hierarchical addresses may 
> --> > --> >> coexist. Local 
> --> > --> >> hierarchical save processing and enhance scalability.
> --> > --> >> Hope this clarifies.
> --> > --> >> Guillermo
> --> > --> >>
> --> > --> >> PD.
> --> > --> >> Other issues
> --> > --> >> -DHCP-like mechanism
> --> > --> >> Hierarchical MACs can be assigned with DHCP like 
> --> mechanism to 
> --> > --> >> hosts, but 
> --> > --> >> IMHO this has impact on end nodes, so it can not 
> --> be the standard 
> --> > --> >> mechanism, only an option.
> --> > --> >> - Generic hierarchical MAC addresses and masks (ref. Dr. 
> --> > --> >> Morales slide)
> --> > --> >> I proposed the generic addressing format  that includes 
> --> > --> hierarchical 
> --> > --> >> masks looking for a generic addressing space, that could 
> --> > --> be useful to 
> --> > --> >> scale further RBridges in the future. I understand that at 
> --> > --> >> this stage of 
> --> > --> >> definition of RBridges to look for a fully generic 
> --> > --> format could be 
> --> > --> >> disruptive. However, the need for a generic hierarchical 
> --> > --> addressing 
> --> > --> >> space in Ethernet is growing.
> --> > --> >>  
> --> > --> >>
> --> > --> >>
> --> > --> >>
> --> > --> >> Caitlin Bestler escribi?:
> --> > --> >>> Radia Perlman wrote:
> --> > --> >>>   
> --> > --> >>>> Not sure I've been following this, but let me 
> --> conjecture what
> --> > --> >>>> people are suggesting, and if I'm right about 
> --> the suggestion,
> --> > --> >>>> I think it's a good idea. Correct me if it's not what 
> --> > --> people are
> --> > --> >>>> saying. 
> --> > --> >>>>
> --> > --> >>>> So I think what they are saying is the following:
> --> > --> >>>> a) there are cases where an RBridge has a block 
> --> of addresses
> --> > --> >>>> (like DHCP) that it hands out to endnodes
> --> > --> >>>> b) in that case, it would be nice if the RBridge can
> --> > --> >>>> announce, in its LSP, the whole range of 
> --> addresses, rather
> --> > --> >>>> than reporting each individually
> --> > --> >>>> c) the change would be an ability to express a 
> --> range in the
> --> > --> >>>> endnode announcement. This seems easy, but I 
> --> think it would
> --> > --> >>>> be best done with a 2nd TLV in IS-IS. The 1st 
> --> TLV would be 
> --> > --> >> individual
> --> > --> >>>> addresses. The 2nd TLV would be pairs of addresses 
> --> > --> (low, high). Or
> --> > --> >>>> (low, increment), as in "starting with address X,
> --> > --> >>>> 32 addresses" (which would take up a bit less space 
> --> > --> than two MAC
> --> > --> >>>> addresses. 
> --> > --> >>>>
> --> > --> >>>> I don't think of this as a hierarchical address---I just
> --> > --> >>>> think of it as a range of addresses reachable 
> --> from one RBridge.
> --> > --> >>>>
> --> > --> >>>>     
> --> > --> >>> Reduction in the total number of reports required 
> --> to support N
> --> > --> >>> addresses is probably the only benefit of "hierarchical 
> --> > --> addresses"
> --> > --> >>> that we can achieve if we are going to support 
> --> global-scope MAC
> --> > --> >>> addresses as well. Which I'm certain everyone 
> --> agrees is a given.
> --> > --> >>>
> --> > --> >>>   
> --> > --> > 
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > --> 
> --> >   
> --> 
>   

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 08:01:16 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Russ White" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 11982

Eric,

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:39 AM
> To: Silvano Gai; Russ White
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,			(note: Russ - please read this!!)
> 
> 	For the first part of your question, Radia and I had almost
> this exact same discussion during the BoF I mentioned.  The only
> legitimate way to get from one (logical) VLAN to another is via a
> routing function.

Eric you really need to start to think in term of OVLAN and IVLAN and in
term of access ports and trunk port. The fact that products may use the
same port to be a trunk and an access at the same time is OK, so as it
is OK that the IVLANs and OVLANs are both implemented used using the 1Q
tagging scheme.

Without a clear terminology we will not be able to agree on anything.

What you are saying is not true for OVLANs. A frame, when it has an
OVLAN, i.e. it is on a trunk port, i.e. it has a TRILL shim, i.e. it has
an outer header, CANNOT have the outer MAC address of a router.
Therefore saying that "The only legitimate way to get from one (logical)
VLAN to another is via a
routing function" is incorrect in the case of OVLANs.

It may be the common case for IVLANs, but there are exceptions in today
networks, starting from NAT.

-- Silvano

> 
> 	Unless you include the "routing function" as part of the TRILL
> specification requirements - which does not, in any way, makes sense
> - then the model that applies is the one that has VLANs logically
> separated.
> 
> 	That is strictly a VLAN separation issue.  The second part of
> your question is trickier, hence it is good that you ask it and even
> better that you insisted on being understood.  :-)
> 
> 	From an RBridge perspective, I believe it is sufficient that all
> of the RBridges MUST support a common (probably the default - NULL)
> VLAN to ensure that all of them MUST peer with each other - at least
> for support of that (common) VLAN.  Hence, it should not be the case
> that any (proper) subset of RBridges would not peer exclusively with
> any other (proper) subset of RBridges in the same CRED.
> 
> 	Also, from an IS-IS perspective (help me out here Russ), I am
> reasonably sure that adjacent/connected IS-IS instances MUST discover
> each other during peer discovery - even if they do not subsequently
> peer with each other (or having peered with each other, exchange any
> routing information).  I believe this would be the case, even if there
> was potentially some strange virtual L3 overlay topology involving
> separate L3 VPN instancing in the IS-IS routing deployment.
> 
> 	If that is the case, then - from a peer discovery perspective -
> all RBridges will still be in the same CRED.  This is the perspective
> that matters, because it is the peer discovery process that allows the
> members of a CRED to "discover" potential _hidden_ loops in underlying
> L2 topology.
> 
> 	See also my reply to your question about VLAN interactions with
> routing...
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 12:57 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> Eric,
> -->
> --> I am just trying to understand if there is consensus in a) or b).
> -->
> --> The impression I got talking with Radia is that she was in
> --> favor of a).
> -->
> --> Your reply is my b) model to which you have added a router.
> --> Since b) is
> --> two separate layer 2 networks, you can put a router between
> --> the two, as
> --> you did.
> -->
> --> Please also note that I can redraw the same network in a
> --> different way:
> -->
> -->                 +-----+
> -->                 | RB1 |
> -->                 +-----+
> -->                  |  |
> -->                1 |  | 2
> -->                  |  |
> -->  +-----+   1    +-----+    2     +-----+
> -->  | RB2 |--------| SW1 |----------| RB3 |
> -->  +-----+        +-----+          +-----+
> -->
> --> Where I replaced the Etherchannel with two links, one in
> --> OVLAN=1 and one
> --> in OVLAN=2.
> -->
> --> Now is RB2 capable of talking to RB3 through RB1?
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 15, 2006 12:13 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	First of all, I will take very large exception to the
way
> --> > which you have over-loaded the term "CRED."  This term was
coined
> --> > to eliminate confusion caused by the various different was
people
> --> > were over-loading the term "Campus."
> --> >
> --> > 	At the "core" of your question, however, is the issue of
> --> > how VLANs interact in a bridged/RBridge environment.  It is not
> --> > different than would be the case in a "classical bridged LAN."
> --> >
> --> > 	This issue is based on a misconception that existed very
> --> > early on in the life of the TRILL working group (in the first
> --> > BoF, in fact).  The misconception is that VLAN connectivity may
> --> > be provided by RBridges and/or bridges.
> --> >
> --> > 	This is fundamentally incorrect.
> --> >
> --> > 	Interconnection of VLANs is strictly a routing function.
> --> > In deployed equipment that does this today, there may be some
> --> > form of "smart VLAN bridging" that occurs in devices people are
> --> > used to referring to as "bridges" or "switches."  That does not
> --> > change the fact that forwarding from one VLAN to another is a
> --> > "routing function."
> --> >
> --> > 	Note that, in this context, when I say "forwarding from
> --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> --> > LAN" as a logical concept.  This has nothing to do with the fact
> --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> --> >
> --> > 	Consequently, in the picture you have below, the VLANs
> --> > represented by the VLAN-tag in the tunnel encapsulation may
> --> > not be connected together by RB1.
> --> >
> --> > 	To correctly restate your question, the original
topology
> --> > would be as follows:
> --> >
> --> >
> --> >                 +-----+  1,2  +-----------+
> --> >                 | RB1 |-------| Rtg Fnctn |
> --> >                 +-----+       +-----------+
> --> >                    |
> --> >                    | 1,2
> --> >                    |
> --> >  +-----+   1    +-----+    2     +-----+
> --> >  | RB2 |--------| SW1 |----------| RB3 |
> --> >  +-----+        +-----+          +-----+
> --> >
> --> > The resulting logical topology MUST then be as follows:
> --> >
> --> >
> --> >  +-----+        +-----+       +-----------+
> --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> --> >  +-----+        +-----+       +-----+-----+
> --> >                                     |
> --> >                                  +--+--+          +-----+
> --> >                                  | RB1 |----------| RB3 |
> --> >                                  +-----+          +-----+
> --> >
> --> > Since the "routing function" is orthogonal, and well understood,
> --> > it does not make sense for us to try to combine this concept
with
> --> > RBridge behaviors and protocol interactions.
> --> >
> --> > --
> --> > Eric
> --> >
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] IVLANs vs OVLANs
> --> > -->
> --> > -->
> --> > --> During the last WG meeting I had an action item to send an
> --> > --> email on the
> --> > --> VLAN issue. Here it is.
> --> > -->
> --> > --> In a previous email I introduced the concept of IVLAN
> --> and OVLAN.
> --> > -->
> --> > --> IVLAN refers to the VLAN present on the untagged frames,
> --> > --> which must be
> --> > --> propagated by ISIS, VLAN pruning must be performed and so
> --> > --> on. All the
> --> > --> IVLANs share the same core instance of ISIS.
> --> > -->
> --> > --> OVLAN refers to the fact that the traffic between two
> --> > --> RBridges can be
> --> > --> encapsulated into a VLAN.
> --> > -->
> --> > --> If we look to the format of a TRILL encapsulated frame the
> --> > --> position of
> --> > --> these two fields is as follow:
> --> > -->
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   OVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |    ET = TRILL  | RES  |  TTL   |
> --> > --> +--------------------------------+
> --> > --> | Egress Add.    | Ingress Add.  |
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   IVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |             Payload            |
> --> > -->
> --> > --> Now let's consider the following topology:
> --> > -->
> --> > -->                +-----+
> --> > -->                | RB1 |
> --> > -->                +-----+
> --> > -->                   |
> --> > -->                   | 1,2
> --> > -->                   |
> --> > --> +-----+   1    +-----+    2     +-----+
> --> > --> | RB2 |--------| SW1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> --> Ethernet switch.
> --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> > --> between SW1 and RB3
> --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> --> trunk and it
> --> > --> carries both OVLAN 1 and 2.
> --> > -->
> --> > --> Now my question is: "do we have one CRED or two?"
> --> > -->
> --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> > --> RB1 but not
> --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> > --> but not RB2.
> --> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> > --> instance of
> --> > --> ISIS. RB2 may reach RB3 through RB1.
> --> > -->
> --> > --> The TRILL equivalent topology is:
> --> > -->
> --> > --> +-----+        +-----+          +-----+
> --> > --> | RB2 |--------| RB1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> b) another possible answer: "we have two CREDs". One is
> --> > --> composed by RB2
> --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> > --> since they are
> --> > --> in different CREDs.
> --> > -->
> --> > --> The TRILL equivalent topologies are:
> --> > -->
> --> > --> +-----+        +-----+
> --> > --> | RB2 |--------| RB1 |
> --> > --> +-----+        +-----+
> --> > -->
> --> > --> +-----+          +-----+
> --> > --> | RB1 |----------| RB3 |
> --> > --> +-----+          +-----+
> --> > -->
> --> > --> I like a) and I hope we are in agreement that the right
> --> > --> answer is a),
> --> > --> but I haven't seen it explained in any of the documents.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 07:48:09 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 11567

Eric,

Let me take your example, add two hosts and then you can explain me why
I am "incorrect"

                 +-----+  1,2  +-----------+
                 | RB1 |-------| Rtg Fnctn |
                 +-----+       +-----------+
                    |
                    | 1,2
                    |
  +-----+   1    +-----+    2     +-----+
  | RB2 |--------| SW1 |----------| RB3 |
  +-----+        +-----+          +-----+
     |                               |
     | IVLAN=3                       | IVLAN=3
  +-----+                         +-----+
  |  H1 |                         |  H2 |
  +-----+                         +-----+

Frame originated by H1 (fields are in order separated by commas):

Original Frame
H2, H1, VLAN=3, Payload

>From RB2 to RB1:

Outer header     | TRILL Shim    |  Original Frame 
RB1, RB2, VLAN=1 | TTL, RB3, RB2 |  H2, H1, VLAN=3, Payload

>From RB1 to RB3:

Outer header     | TRILL Shim    |  Original Frame 
RB3, RB1, VLAN=2 | TTL, RB3, RB2 |  H2, H1, VLAN=3, Payload

Where is a routing function required?

RB1 CANNOT decapsulate the frame, since it is not the destination in the
TRILL shim.

Even if it violates the previous rule, it CANNOT pass the frame to the
router, since it is not addressed to the router at the MAC layer.

Where am I incorrect?

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:31 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,
> 
> 	Sorry, but you are incorrect.
> 
> 	Routers are "end-stations" to a layer 2 network - hence it is
> necessarily the case that TRILL frames MUST egress the RBridge CRED
> prior to being delivered to a "routing function."  In the same way,
> any frame delivered frome a "routing function" MUST ingress the CRED
> for subsequent delivery in the form of TRILL frames.
> 
> 	This is a logical distinction and does not - in any way - limit
> your implementation choices.  Logically, what happens is:
> 
> 1) the TRILL encapsulation is stripped, along with the SHIM header,
> 2) the frame is forwarded (possibly locally, possibly only logically)
>    to the component that implements the "routing function",
> 3) the remaining Ethernet header is stripped, delivering the data (an
>    IP packet) - along with relevant packet information (such as
length)
>    - to the "routing function",
> 4) the "routing function" is used (including, for example ACLs, policy
>    based forwarding, etc.) to determine how to forward the _packet_ -
>    including forwarding to a logical "interface" on a distinct VLAN,
> 5) after the forwarding decision is made, appropriate encapsulation is
>    added to the IP packet, again converting it (in this case) to an
>    Ethernet frame,
> 6) the resulting Ethernet frame is forwarded (possibly locally,
possibly
>    only logically) from the component implementing the "routing
function"
>    to the appropriate RBridge component,
> 7) the RBridge component then provides ingress for the frame by adding
>    a SHIM and re-encapsulating the frame with the appropriate TRILL
>    encapsulation.
> 
> 	To RE-EMPHASIZE, this is what happens logically.  What you do in
> your implementation may differ substantially from this.  It may - for
> example - be quite a bit simpler.  How you do this is why you get paid
> the big bucks.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 1:45 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> Eric,
> -->
> --> On a second thought, you cannot put a router between OVLAN=1 and
> --> OVLAN=2, the frame is not routable, since its Ethertype is
> --> TRILL, not
> --> IPv4 or IPv6.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 15, 2006 12:13 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] IVLANs vs OVLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	First of all, I will take very large exception to the
way
> --> > which you have over-loaded the term "CRED."  This term was
coined
> --> > to eliminate confusion caused by the various different was
people
> --> > were over-loading the term "Campus."
> --> >
> --> > 	At the "core" of your question, however, is the issue of
> --> > how VLANs interact in a bridged/RBridge environment.  It is not
> --> > different than would be the case in a "classical bridged LAN."
> --> >
> --> > 	This issue is based on a misconception that existed very
> --> > early on in the life of the TRILL working group (in the first
> --> > BoF, in fact).  The misconception is that VLAN connectivity may
> --> > be provided by RBridges and/or bridges.
> --> >
> --> > 	This is fundamentally incorrect.
> --> >
> --> > 	Interconnection of VLANs is strictly a routing function.
> --> > In deployed equipment that does this today, there may be some
> --> > form of "smart VLAN bridging" that occurs in devices people are
> --> > used to referring to as "bridges" or "switches."  That does not
> --> > change the fact that forwarding from one VLAN to another is a
> --> > "routing function."
> --> >
> --> > 	Note that, in this context, when I say "forwarding from
> --> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
> --> > LAN" as a logical concept.  This has nothing to do with the fact
> --> > that a VLAN ID might change in traversing a VLAN-aware bridge.
> --> >
> --> > 	Consequently, in the picture you have below, the VLANs
> --> > represented by the VLAN-tag in the tunnel encapsulation may
> --> > not be connected together by RB1.
> --> >
> --> > 	To correctly restate your question, the original
topology
> --> > would be as follows:
> --> >
> --> >
> --> >                 +-----+  1,2  +-----------+
> --> >                 | RB1 |-------| Rtg Fnctn |
> --> >                 +-----+       +-----------+
> --> >                    |
> --> >                    | 1,2
> --> >                    |
> --> >  +-----+   1    +-----+    2     +-----+
> --> >  | RB2 |--------| SW1 |----------| RB3 |
> --> >  +-----+        +-----+          +-----+
> --> >
> --> > The resulting logical topology MUST then be as follows:
> --> >
> --> >
> --> >  +-----+        +-----+       +-----------+
> --> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
> --> >  +-----+        +-----+       +-----+-----+
> --> >                                     |
> --> >                                  +--+--+          +-----+
> --> >                                  | RB1 |----------| RB3 |
> --> >                                  +-----+          +-----+
> --> >
> --> > Since the "routing function" is orthogonal, and well understood,
> --> > it does not make sense for us to try to combine this concept
with
> --> > RBridge behaviors and protocol interactions.
> --> >
> --> > --
> --> > Eric
> --> >
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] IVLANs vs OVLANs
> --> > -->
> --> > -->
> --> > --> During the last WG meeting I had an action item to send an
> --> > --> email on the
> --> > --> VLAN issue. Here it is.
> --> > -->
> --> > --> In a previous email I introduced the concept of IVLAN
> --> and OVLAN.
> --> > -->
> --> > --> IVLAN refers to the VLAN present on the untagged frames,
> --> > --> which must be
> --> > --> propagated by ISIS, VLAN pruning must be performed and so
> --> > --> on. All the
> --> > --> IVLANs share the same core instance of ISIS.
> --> > -->
> --> > --> OVLAN refers to the fact that the traffic between two
> --> > --> RBridges can be
> --> > --> encapsulated into a VLAN.
> --> > -->
> --> > --> If we look to the format of a TRILL encapsulated frame the
> --> > --> position of
> --> > --> these two fields is as follow:
> --> > -->
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   OVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |    ET = TRILL  | RES  |  TTL   |
> --> > --> +--------------------------------+
> --> > --> | Egress Add.    | Ingress Add.  |
> --> > --> +--------------------------------+
> --> > --> |               DA               |
> --> > --> +----------------+---------------+
> --> > --> |       DA       |     SA        |
> --> > --> +----------------+---------------+
> --> > --> |               SA               |
> --> > --> +--------------------------------+
> --> > --> |    ET = 1Q     |   IVLAN ...   |
> --> > --> +--------------------------------+
> --> > --> |             Payload            |
> --> > -->
> --> > --> Now let's consider the following topology:
> --> > -->
> --> > -->                +-----+
> --> > -->                | RB1 |
> --> > -->                +-----+
> --> > -->                   |
> --> > -->                   | 1,2
> --> > -->                   |
> --> > --> +-----+   1    +-----+    2     +-----+
> --> > --> | RB2 |--------| SW1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical
> --> Ethernet switch.
> --> > --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> > --> between SW1 and RB3
> --> > --> is in OVLAN 2 and the links between SW1 and RB1 is a
> --> trunk and it
> --> > --> carries both OVLAN 1 and 2.
> --> > -->
> --> > --> Now my question is: "do we have one CRED or two?"
> --> > -->
> --> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> > --> RB1 but not
> --> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> > --> but not RB2.
> --> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> > --> instance of
> --> > --> ISIS. RB2 may reach RB3 through RB1.
> --> > -->
> --> > --> The TRILL equivalent topology is:
> --> > -->
> --> > --> +-----+        +-----+          +-----+
> --> > --> | RB2 |--------| RB1 |----------| RB3 |
> --> > --> +-----+        +-----+          +-----+
> --> > -->
> --> > --> b) another possible answer: "we have two CREDs". One is
> --> > --> composed by RB2
> --> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> > --> since they are
> --> > --> in different CREDs.
> --> > -->
> --> > --> The TRILL equivalent topologies are:
> --> > -->
> --> > --> +-----+        +-----+
> --> > --> | RB2 |--------| RB1 |
> --> > --> +-----+        +-----+
> --> > -->
> --> > --> +-----+          +-----+
> --> > --> | RB1 |----------| RB3 |
> --> > --> +-----+          +-----+
> --> > -->
> --> > --> I like a) and I hope we are in agreement that the right
> --> > --> answer is a),
> --> > --> but I haven't seen it explained in any of the documents.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

From: "Gray, Eric" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Date: Thu, 16 Nov 2006 10:39:31 -0500
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case? - not sent (OBE	)
Status: RO
Content-Length: 20553

There are two complexity issues to consider here: specification complexity
and implementation complexity.

If we propose "cute" and "intriguing" protocols and encapsulations, but we
don't require support for them in all cases, then we have specification
complexity.  If we make the same proposals and require support for them in
all compliant implementations, then we have implementation complexity.

The potential for implementation complexity in this case is exactly a result
of the "cute" and "intriguing" nature of the proposal.  We're suggesting we
should expect RBridge hardware to be able to deal with multiple
encapsulation
types - and additional options associated at least one encapsulation type.

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Eastlake 
--> III Donald-LDE008
--> Sent: Wednesday, November 08, 2006 4:28 AM
--> To: [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> This seems like an intriguing possibility. We would need to get an OUI
--> to go into the top 24 bits of these addresses. With an OUI we can then
--> easily allocate our own multicast addresses (all rbridges, etc.) so we
--> would end up needing one OUI and one Ethertype allocated but nothing
--> else. (You might think that with these magic addresses, you could
--> dispense with the TRILL Ethertype but, besides the fact that that would
--> be non-standard, you can't anyway because, for example, you may need to
--> insert a VLAN tag and/or other tags between the addresses and the shim.)
--> 
--> Thanks,
--> Donald
--> 
--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On
--> Behalf Of [email-masked]
--> Sent: Wednesday, November 08, 2006 3:02 AM
--> To: Sanjay Sane (sanjays)
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> This is an extremely cute proposal, and it works. Let me explain
--> Sanjay's proposal in different words, in case it doesn't sink in the
--> first time one sees it.
--> 
--> He is proposing using the shim header that looks like an Ethernet
--> header, with SA=ingress RBridge MAC R1 and DA=egress RBridge MAC R2,
--> but solving the two problems brought up at the meeting which were:
--> 
--> a) bridges on an [intermediate] link might have previously incorrectly
--> learned the location of R2, because packets from R2 might have arrived
--> at the link from different directions.
--> 
--> b) if we avoid problem a) by using different MAC addresses for "to" and
--> "from" for each RBridge, so that we avoid bridges ever learning the
--> direction of the egress RBridge, the problem is that we don't benefit
--> from good bridge learning on the link.
--> 
--> And also, he is proposing making it possible to use that header on a
--> link with more than 2 RBridges.
--> 
--> The way he's proposing doing it is using the 48 bit Destination and
--> Source addresses in the Ethernet header in an unconventional way.
--> 
--> Instead of putting the MAC address of the ingress and egress RBridges
--> in those fields, he is suggesting the following:
--> 
--> a) assign 16-bit nicknames to all the RBridges (as we were going to do
--> with the short shim header)
--> b) assign, say, 8 bit link-local nicknames to all the RBridges on a link
--> (this can be done through the IS-IS Hello protocol quite easily--I'd
--> suggest doing it by having the Designated RBridge assign the values, but
--> it could also be done by having each RBridge choose a nickname and back
--> off if someone with a better ID has chosen that nickname)
--> c) in the Destination address field in the Ethernet header, put in both
--> the 16-bit egress RBridge nickname, and the nextop 8-bit nickname
--> d) in the Source address field in the Ethernet header, put in both the
--> 16-bit ingress RBridge nickname, and the transmitting RBridge on that
--> link's 8-bit nickname
--> 
--> So---bridges will never incorrectly learn the location of any RBridges,
--> because no matter where a packet from
--> R12 arrives into the link, the bottom bits will be specific to the
--> RBridge on the link that injected the packet.
--> 
--> And positive learning can happen as well. Suppose there are n total
--> RBridge nicknames in use in the whole campus. Suppose there are 5
--> RBridges on the link. The bridges inside the link will see 
--> 5*n RBridge
--> addresses as a result of this proposal. In other words, if 
--> the RBridge
--> nicknames are 1, 2, ... 517. and there are 5 RBridges on 
--> the link, the
--> MAC addresses the bridges will see are:
--> {1 - 517} | {1 - 5}
--> 
--> In Sanjay's picture, if R4 wants to direct a packet towards 
--> R2 rather
--> than R3 for egress R1, it encodes R2's nickname into the "neighbor's
--> nickname" portion of the egress RBridge field.
--> 
--> Anyway---something for people to think about.
--> 
--> Radia
--> 
--> ----- Original Message -----
--> From: "Sanjay Sane (sanjays)" <[email-masked]>
--> Date: Tuesday, November 7, 2006 12:24 pm
--> Subject: RE: [rbridge] Should we optimize the common case?
--> 
--> > Oops. Typed send before finishing. 
--> > 
--> > attached the diagram.
--> > Completed the description. See inline
--> > 
--> > -Sanjay
--> > 
--> > 
--> > 
--> > -----Original Message-----
--> > From: Sanjay Sane (sanjays)
--> > Sent: Tuesday, November 07, 2006 12:19 PM
--> > To: 'Radia Perlman'; Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Should we optimize the common case?
--> > 
--> > Radia,
--> > 
--> > In today's presentation, the last suggested format was 
--> the following
--> > 
--> > 48 bits - egress rbridge id
--> > 48 bits - ingress rbridge id
--> > 16 bits - pt = TRILL
--> > 16 bits - reserved + flag + TTL - the link local nicknames (who's 
--> > supposed to be the next-hop is in here) ....
--> > 
--> > 
--> > when this goes over a shared media, there were learning issues as 
--> > pointed out during the meeting. Pls refer to this diagram to 
--> > understandthe problem
--> > 
--> > 1. if packets from r1 to r5 are sent once via r2, and 
--> other times, via
--> 
--> > r3, the classical bridge b will learn r1 as behind link 1 or 2.
--> > So, this
--> > is the learning problem. 
--> > 2. thus, for return traffic frm r5 to r1, even though r4 
--> wants r2 to 
--> > be the next-hop for this packet, if we keep the 
--> destination rbridge id
--> 
--> > as r1, the classical bridge would forward the packet to link 1, 
--> > thereby blackholing this traffic.
--> > 
--> > So, there are multiple issues - learning issues and blakholing. 
--> > 
--> > Potential solution:
--> > 
--> > r2, r3 and r4 exchange the link-local nicknames, say link local 
--> > nicknamefor r2 = 1, r3 = 2, r4 = 3.
--> > 
--> > Now, instead of using the complete 48 bit rbridge ID as 
--> the rbridge 
--> > MAC address, we can fill the 48 bits as follows:
--> > 
--> > 16 bit - rbridge nickname
--> > 4 bits - link local nickname
--> > 
--> > 2 bits - I/G and U/L
--> > 26 bits - reserved. 
--> > 
--> > Thus, on this classical ethernet/bridging cloud, rbridge 
--> emits the 
--> > packet with the appropriate link-local nicknames.
--> > 
--> > For e.g. 
--> > - packets from r1 to r5, sent via r2, are sent with SA = r1.<link 
--> > source's link-local-nickname> = r1.1, , notice 
--> link-local-nickname of 
--> > r2 is chosen.
--> > If r2 intends r4 to be the next-hop, he'll put DA = r5.<link 
--> > destination's link-local-nickname> = r5.3, notice 
--> link-local-nickname 
--> > of r4 is chosen.
--> > Thus, classical bridge will learn r1.1 on the link 1. 
--> > 
--> > - packets from r1 to r5, sent via r3, are sent with SA = r1.<link 
--> > source's link-local-nickname> = r1.2, , notice 
--> link-local-nickname of 
--> > r3 is chosen.
--> > If r3 intends r4 to be the next-hop, he'll put DA = r5.<link 
--> > destination's link-local-nickname> = r5.3, notice 
--> link-local-nickname 
--> > of r4 is chosen.
--> > Thus, classical bridge will learn r1.2 on the link 1. 
--> > 
--> > -- thus no learning issues. 
--> > 
--> > - return traffic from r5 to r1, sent via r4. If r4 
--> intends r2 to be 
--> > the next hop, it'll put SA = r5.<link source's 
--> link-local-nickname> = 
--> > r5.3, , notice link-local-nickname of r4 is chosen.
--> > If r5 intends r2 to be the next-hop, he'll put DA = r1.<link 
--> > destination's link-local-nickname> = r1.1, notice 
--> link-local-nickname 
--> > of r1 is chosen.
--> > 
--> > -- thus no blackholing.
--> > 
--> > -Sanjay
--> > 
--> > 
--> > 
--> > -----Original Message-----
--> > From: [email-masked] [[email-masked]] On 
--> > Behalf Of Radia Perlman
--> > Sent: Tuesday, November 07, 2006 10:23 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: Re: [rbridge] Should we optimize the common case?
--> > 
--> > Looking at Silvano's proposed shim header---the only 
--> reason we need 
--> > the outer header is to distinguish between RBridge 
--> neighbors, in the 
--> > case of unicast, specifying next hop, and in the case of 
--> multicast, 
--> > specifying transmitter.
--> > 
--> > His format has two bytes after the Ethernet header 
--> portion of the shim
--> 
--> > for TTL, and a bunch of reserved bits.
--> > 
--> > That leaves 10 bits. We can dynamically (through the 
--> IS-IS Hello) give
--> 
--> > out, say, 4 bit link-local nicknames, and stick them there.
--> > 
--> > Then the only time we'd need an outer header is if there are more 
--> > than,say, 16 RBridges on the same link.
--> > 
--> > Radia
--> > 
--> > Silvano Gai wrote:
--> > 
--> > >I am not looking at TRILL for increased scalability, but for
--> > spanning
--> > >tree replacement to get high bisectional bandwidth.
--> > >
--> > >-- Silvano
--> > >
--> > >  
--> > >
--> > >>-----Original Message-----
--> > >>From: Gray, Eric [[email-masked]]
--> > >>Sent: Monday, November 06, 2006 10:38 AM
--> > >>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
--> > >>Subject: RE: [rbridge] Should we optimize the common case?
--> > >>
--> > >>Silvano,
--> > >>
--> > >>	The assertion that only fortune 500 companies 
--> are interested in
--> > TRILL
--> > >>is baseless and untrue.  One reason why you may believe this is
--> > the
--> > >>case, is that you are making certain assumptions about
--> > complexity and
--> > >>scale of the desired solution that are equally 
--> unfounded or false.
--> > >>
--> > >>	There is nothing that particularly prohibits 
--> definition of some
--> > form
--> > >>of RBridge functionality that might be simple enough to deploy
--> > in
--> > >>relatively small networks - where higher speed link are becoming
--> > more
--> > >>common and wasting high speed links is also a problem.
--> > >>
--> > >>	The types of networks you're talking about 
--> cannot realistically 
--> > >>operate with plug & play devices, and greater scalability is
--> > >>    
--> > >>
--> > >paramount.
--> > >  
--> > >
--> > >>The work we're doing in this WG is aimed at simplistic, plug &
--> > play
--> > >>deployment where increased scalability is a secondary 
--> consideration.
--> > >>
--> > >>--
--> > >>Eric
--> > >>
--> > >>--> -----Original Message-----
--> > >>--> From: [email-masked] 
--> [[email-masked]] On
--> 
--> > >>--> Behalf Of Silvano Gai
--> > >>--> Sent: Monday, November 06, 2006 1:51 AM
--> > >>--> To: Eastlake III Donald-LDE008; [email-masked]
--> > >>--> Subject: Re: [rbridge] Should we optimize the common case?
--> > >>-->
--> > >>-->
--> > >>--> Donald,
--> > >>-->
--> > >>--> The high end and the low end are extremely different.
--> > >>-->
--> > >>--> The customers interested in TRILL are the Fortune 500
--> > companies. 
--> > >>--> Large Enterprise networks and large data centers 
--> used to run 
--> > >>--> Financial, Insurance, Health, Chemical, Oil, 
--> Information and 
--> > >>--> manufacturing companies.
--> > >>-->
--> > >>--> They have huge demand for high bandwidth and low latency.
--> > >>-->
--> > >>--> Each of these companies spends millions each year 
--> in network 
--> > >>--> operation
--> > >>--> (OPEX) and millions in new equipment (CAPEX). In all of them
--> > OPEX>>    
--> > >>
--> > >is
--> > >  
--> > >
--> > >>--> much larger than CAPEX. They only buy major vendor
--> > equipments and
--> > >>--> they install them according to the recommended 
--> vendor design 
--> > >>--> guideline.
--> > >>--> Typically they have an internal certification lab in which
--> > they
--> > >>--> test the network configuration and the software releases
--> > before
--> > >>--> putting them in production networks.
--> > >>-->
--> > >>--> They have a very well defined concept of backbone ports and
--> > access
--> > >>--> ports. All the backbone ports are in fiber at the highest
--> > possible
--> > >>--> speed (today 10 GE). For the access port they use a mix of
--> > fiber
--> > >>--> and copper.
--> > >>--> The backbone has a regular structure that matches the vendor
--> > >>    
--> > >>
--> > >design
--> > >  
--> > >
--> > >>--> guideline and the result of the certification 
--> experiment they 
--> > >>--> have done independently.
--> > >>-->
--> > >>--> A network outage can cost millions/hour.
--> > >>-->
--> > >>--> There is no way you will see in one of these 
--> backbones a hub or
--> > >>    
--> > >>
--> > >any
--> > >  
--> > >
--> > >>--> other uncontrolled device. NEVER.
--> > >>-->
--> > >>--> That is the reason why I think this is the most important
--> > case for
--> > >>--> TRILL.
--> > >>-->
--> > >>--> More inline.
--> > >>-->
--> > >>--> > -----Original Message-----
--> > >>--> > From: [email-masked]
--> > >>--> [[email-masked]]
--> > >>--> On
--> > >>--> > Behalf Of Eastlake III Donald-LDE008
--> > >>--> > Sent: Sunday, November 05, 2006 10:20 PM
--> > >>--> > To: [email-masked]
--> > >>--> > Subject: Re: [rbridge] Should we optimize the common case?
--> > >>--> >
--> > >>--> > Silvano,
--> > >>--> >
--> > >>--> > Why do you think that 90% of Rbridge deployment will be
--> > for this
--> > >>--> unusual
--> > >>--> > case? I mean, I have no problem with the belief that
--> > >>--> Rbridges would be
--> > >>--> > better than bridges in this case but why shouldn't that be
--> > true>>    
--> > >>
--> > >of
--> > >  
--> > >
--> > >>--> less
--> > >>--> > high end uses?
--> > >>--> >
--> > >>--> > A while ago on this list I posted a rhetorical 
--> question as to
--> > >>    
--> > >>
--> > >why
--> > >  
--> > >
--> > >>--> > Rbriges shouldn't eventually replace all bridges. No one
--> > posted>>    
--> > >>
--> > >an
--> > >  
--> > >
--> > >>--> > answer.
--> > >>-->
--> > >>--> This technology will start in the high end and move 
--> down to the 
--> > >>--> lower end. How low will it goes is a good question.
--> > >>-->
--> > >>--> The low end is extremely cost sensitive. When we buys a
--> > switch or
--> > >>    
--> > >>
--> > >a
--> > >  
--> > >
--> > >>--> router on the Internet for 50-100$, the COGS cannot 
--> be more that
--> 
--> > >>--> 15-30$, even with low margins. This implies that 
--> few dollar more
--> 
--> > >>--> to increase the memory size or the processor speed 
--> are a big 
--> > >>--> deal. Add software development cost. Couple this 
--> with the fact 
--> > >>--> that today we have low cost 1GE switches used by 
--> low-end users 
--> > >>--> that have problems pushing or pulling more than few 
--> Mb/s. There 
--> > >>--> is no bandwidth demand in the low end.
--> > >>--> Spanning tree is just fine. Cost is the big issue. Moreover 
--> > >>--> there is the huge issue of training home/small 
--> office installers
--> 
--> > >>--> in this new technology.
--> > >>-->
--> > >>--> My 0.2 cents
--> > >>-->
--> > >>--> -- Silvano
--> > >>-->
--> > >>--> >
--> > >>--> > Why not specify Rbridges more or less as we have been for
--> > >>--> the common
--> > >>--> > bridge case and, in the backbone case you are talking
--> > >>--> about, just drop
--> > >>--> > the MAC addresses on the point-to-point links within the
--> > >>    
--> > >>
--> > >backbone?
--> > >  
--> > >
--> > >>--> > Doesn't that produce less overhead than your proposal
--> > >>--> below in both
--> > >>--> the
--> > >>--> > point-to-point and shared media cases?
--> > >>--> >
--> > >>--> > Donald
--> > >>--> >
--> > >>--> > -----Original Message-----
--> > >>--> > From: [email-masked]
--> > >>--> [[email-masked]]
--> > >>--> On
--> > >>--> > Behalf Of Silvano Gai
--> > >>--> > Sent: Wednesday, November 01, 2006 9:07 PM
--> > >>--> > To: [email-masked]
--> > >>--> > Subject: [rbridge] Should we optimize the common case?
--> > >>--> >
--> > >>--> >
--> > >>--> > With 16 bit addresses the current TRILL overhead over
--> > >>--> Ethernet is 20
--> > >>--> > bytes. If we want to expand the RBridge addresses, it we
--> > >>--> will go to
--> > >>--> > 22-24 bytes.
--> > >>--> >
--> > >>--> > What customers are telling us is that they will deploy
--> > RBridges>>    
--> > >>
--> > >by
--> > >  
--> > >
--> > >>--> > creating an RBridge backbone in which all the 
--> links will be
--> > >>    
--> > >>
--> > >10GE.
--> > >  
--> > >
--> > >>--> >
--> > >>--> > They will connect regular bridges and host to the
--> > >>--> periphery of this
--> > >>--> > backbone.
--> > >>--> >
--> > >>--> > They will not mix backbone ports with access ports,
--> > because this
--> > >>--> screws
--> > >>--> > up management, traffic engineering, debugging, and
--> > >>--> troubleshooting.
--> > >>--> > Regular network design, easy to understand, is very
--> > >>--> important. Ports
--> > >>--> are
--> > >>--> > cheap, labor is expensive.
--> > >>--> >
--> > >>--> > I am totally convinced that this will account for 90+ % of
--> > TRILL>>--> > deployment.
--> > >>--> >
--> > >>--> > I am wondering if it makes sense to have a solution
--> > >>--> highly optimized
--> > >>--> for
--> > >>--> > such an environment.
--> > >>--> >
--> > >>--> > For example we can put the egress/ingress RBridge
--> > addresses in
--> > >>    
--> > >>
--> > >the
--> > >  
--> > >
--> > >>--> outer
--> > >>--> > MAC addresses and define a TRILL shim header that
--> > >>--> contains 1 byte of
--> > >>--> hop
--> > >>--> > limit and 1 byte reserved. For this common case 
--> we will get:
--> > >>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
--> > >>--> > 2) nickname = MAC address, i.e no hash collision
--> > >>--> > 3) zero-conf achieved
--> > >>--> >
--> > >>--> > In the case we need to go over a shared media we 
--> will need to
--> > >>    
--> > >>
--> > >add
--> > >  
--> > >
--> > >>--> > another Ethernet encapsulation to carry the next hop
--> > >>--> address, i.e. 14
--> > >>--> > bytes
--> > >>--> > - total overhead will be 30 bytes
--> > >>--> >
--> > >>--> > Summarizing:
--> > >>--> > - current proposal 20-24 bytes overhead
--> > >>--> > - new proposal on point to point: 16 bytes
--> > >>--> > - new proposal on shared media: 30 bytes
--> > >>--> >
--> > >>--> > Comments?
--> > >>--> >
--> > >>--> > -- Silvano
--> > >>--> >
--> > >>--> >
--> > >>--> > _______________________________________________
--> > >>--> > rbridge mailing list
--> > >>--> > [email-masked]
--> > >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> > >>--> >
--> > >>--> > _______________________________________________
--> > >>--> > rbridge mailing list
--> > >>--> > [email-masked]
--> > >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> > >>-->
--> > >>--> _______________________________________________
--> > >>--> rbridge mailing list
--> > >>--> [email-masked]
--> > >>--> http://mailman.postel.org/mailman/listinfo/rbridge
--> > >>-->
--> > >>    
--> > >>
--> > >
--> > >_______________________________________________
--> > >rbridge mailing list
--> > >[email-masked]
--> > >http://mailman.postel.org/mailman/listinfo/rbridge
--> > >  
--> > >
--> > 
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> > 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Russ White <[email-masked]>
Date: Thu, 16 Nov 2006 10:39:04 -0500
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 10392

Silvano,			(note: Russ - please read this!!)

	For the first part of your question, Radia and I had almost 
this exact same discussion during the BoF I mentioned.  The only
legitimate way to get from one (logical) VLAN to another is via a
routing function.

	Unless you include the "routing function" as part of the TRILL
specification requirements - which does not, in any way, makes sense
- then the model that applies is the one that has VLANs logically
separated.

	That is strictly a VLAN separation issue.  The second part of
your question is trickier, hence it is good that you ask it and even
better that you insisted on being understood.  :-)

	From an RBridge perspective, I believe it is sufficient that all
of the RBridges MUST support a common (probably the default - NULL)
VLAN to ensure that all of them MUST peer with each other - at least
for support of that (common) VLAN.  Hence, it should not be the case
that any (proper) subset of RBridges would not peer exclusively with 
any other (proper) subset of RBridges in the same CRED.

	Also, from an IS-IS perspective (help me out here Russ), I am
reasonably sure that adjacent/connected IS-IS instances MUST discover
each other during peer discovery - even if they do not subsequently
peer with each other (or having peered with each other, exchange any
routing information).  I believe this would be the case, even if there
was potentially some strange virtual L3 overlay topology involving
separate L3 VPN instancing in the IS-IS routing deployment.

	If that is the case, then - from a peer discovery perspective -
all RBridges will still be in the same CRED.  This is the perspective
that matters, because it is the peer discovery process that allows the
members of a CRED to "discover" potential _hidden_ loops in underlying
L2 topology.

	See also my reply to your question about VLAN interactions with
routing...

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Thursday, November 16, 2006 12:57 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] IVLANs vs OVLANs
--> 
--> 
--> Eric,
--> 
--> I am just trying to understand if there is consensus in a) or b).
--> 
--> The impression I got talking with Radia is that she was in 
--> favor of a).
--> 
--> Your reply is my b) model to which you have added a router. 
--> Since b) is
--> two separate layer 2 networks, you can put a router between 
--> the two, as
--> you did.
--> 
--> Please also note that I can redraw the same network in a 
--> different way:
--> 
-->                 +-----+
-->                 | RB1 |
-->                 +-----+
-->                  |  |
-->                1 |  | 2
-->                  |  |
-->  +-----+   1    +-----+    2     +-----+
-->  | RB2 |--------| SW1 |----------| RB3 |
-->  +-----+        +-----+          +-----+
--> 
--> Where I replaced the Etherchannel with two links, one in 
--> OVLAN=1 and one
--> in OVLAN=2. 
--> 
--> Now is RB2 capable of talking to RB3 through RB1?
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 15, 2006 12:13 PM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] IVLANs vs OVLANs
--> > 
--> > Silvano,
--> > 
--> > 	First of all, I will take very large exception to the way
--> > which you have over-loaded the term "CRED."  This term was coined
--> > to eliminate confusion caused by the various different was people
--> > were over-loading the term "Campus."
--> > 
--> > 	At the "core" of your question, however, is the issue of
--> > how VLANs interact in a bridged/RBridge environment.  It is not
--> > different than would be the case in a "classical bridged LAN."
--> > 
--> > 	This issue is based on a misconception that existed very
--> > early on in the life of the TRILL working group (in the first
--> > BoF, in fact).  The misconception is that VLAN connectivity may
--> > be provided by RBridges and/or bridges.
--> > 
--> > 	This is fundamentally incorrect.
--> > 
--> > 	Interconnection of VLANs is strictly a routing function.
--> > In deployed equipment that does this today, there may be some
--> > form of "smart VLAN bridging" that occurs in devices people are
--> > used to referring to as "bridges" or "switches."  That does not
--> > change the fact that forwarding from one VLAN to another is a
--> > "routing function."
--> > 
--> > 	Note that, in this context, when I say "forwarding from
--> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
--> > LAN" as a logical concept.  This has nothing to do with the fact
--> > that a VLAN ID might change in traversing a VLAN-aware bridge.
--> > 
--> > 	Consequently, in the picture you have below, the VLANs
--> > represented by the VLAN-tag in the tunnel encapsulation may
--> > not be connected together by RB1.
--> > 
--> > 	To correctly restate your question, the original topology
--> > would be as follows:
--> > 
--> > 
--> >                 +-----+  1,2  +-----------+
--> >                 | RB1 |-------| Rtg Fnctn |
--> >                 +-----+       +-----------+
--> >                    |
--> >                    | 1,2
--> >                    |
--> >  +-----+   1    +-----+    2     +-----+
--> >  | RB2 |--------| SW1 |----------| RB3 |
--> >  +-----+        +-----+          +-----+
--> > 
--> > The resulting logical topology MUST then be as follows:
--> > 
--> > 
--> >  +-----+        +-----+       +-----------+
--> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
--> >  +-----+        +-----+       +-----+-----+
--> >                                     |
--> >                                  +--+--+          +-----+
--> >                                  | RB1 |----------| RB3 |
--> >                                  +-----+          +-----+
--> > 
--> > Since the "routing function" is orthogonal, and well understood,
--> > it does not make sense for us to try to combine this concept with
--> > RBridge behaviors and protocol interactions.
--> > 
--> > --
--> > Eric
--> > 
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked]
--> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> > --> Sent: Tuesday, November 14, 2006 8:11 PM
--> > --> To: [email-masked]
--> > --> Subject: [rbridge] IVLANs vs OVLANs
--> > -->
--> > -->
--> > --> During the last WG meeting I had an action item to send an
--> > --> email on the
--> > --> VLAN issue. Here it is.
--> > -->
--> > --> In a previous email I introduced the concept of IVLAN 
--> and OVLAN.
--> > -->
--> > --> IVLAN refers to the VLAN present on the untagged frames,
--> > --> which must be
--> > --> propagated by ISIS, VLAN pruning must be performed and so
--> > --> on. All the
--> > --> IVLANs share the same core instance of ISIS.
--> > -->
--> > --> OVLAN refers to the fact that the traffic between two
--> > --> RBridges can be
--> > --> encapsulated into a VLAN.
--> > -->
--> > --> If we look to the format of a TRILL encapsulated frame the
--> > --> position of
--> > --> these two fields is as follow:
--> > -->
--> > --> +--------------------------------+
--> > --> |               DA               |
--> > --> +----------------+---------------+
--> > --> |       DA       |     SA        |
--> > --> +----------------+---------------+
--> > --> |               SA               |
--> > --> +--------------------------------+
--> > --> |    ET = 1Q     |   OVLAN ...   |
--> > --> +--------------------------------+
--> > --> |    ET = TRILL  | RES  |  TTL   |
--> > --> +--------------------------------+
--> > --> | Egress Add.    | Ingress Add.  |
--> > --> +--------------------------------+
--> > --> |               DA               |
--> > --> +----------------+---------------+
--> > --> |       DA       |     SA        |
--> > --> +----------------+---------------+
--> > --> |               SA               |
--> > --> +--------------------------------+
--> > --> |    ET = 1Q     |   IVLAN ...   |
--> > --> +--------------------------------+
--> > --> |             Payload            |
--> > -->
--> > --> Now let's consider the following topology:
--> > -->
--> > -->                +-----+
--> > -->                | RB1 |
--> > -->                +-----+
--> > -->                   |
--> > -->                   | 1,2
--> > -->                   |
--> > --> +-----+   1    +-----+    2     +-----+
--> > --> | RB2 |--------| SW1 |----------| RB3 |
--> > --> +-----+        +-----+          +-----+
--> > -->
--> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical 
--> Ethernet switch.
--> > --> The link between RB2 and SW1 is in OVLAN 1, the link
--> > --> between SW1 and RB3
--> > --> is in OVLAN 2 and the links between SW1 and RB1 is a 
--> trunk and it
--> > --> carries both OVLAN 1 and 2.
--> > -->
--> > --> Now my question is: "do we have one CRED or two?"
--> > -->
--> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
--> > --> RB1 but not
--> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
--> > --> but not RB2.
--> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
--> > --> instance of
--> > --> ISIS. RB2 may reach RB3 through RB1.
--> > -->
--> > --> The TRILL equivalent topology is:
--> > -->
--> > --> +-----+        +-----+          +-----+
--> > --> | RB2 |--------| RB1 |----------| RB3 |
--> > --> +-----+        +-----+          +-----+
--> > -->
--> > --> b) another possible answer: "we have two CREDs". One is
--> > --> composed by RB2
--> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
--> > --> since they are
--> > --> in different CREDs.
--> > -->
--> > --> The TRILL equivalent topologies are:
--> > -->
--> > --> +-----+        +-----+
--> > --> | RB2 |--------| RB1 |
--> > --> +-----+        +-----+
--> > -->
--> > --> +-----+          +-----+
--> > --> | RB1 |----------| RB3 |
--> > --> +-----+          +-----+
--> > -->
--> > --> I like a) and I hope we are in agreement that the right
--> > --> answer is a),
--> > --> but I haven't seen it explained in any of the documents.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > -->
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, =?iso-8859-1?Q?Guillermo_Ib=E1?= =?iso-8859-1?Q?=F1ez?= <[email-masked]>, "J. R. Rivers" <[email-masked]>
Date: Thu, 16 Nov 2006 10:34:41 -0500
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 10326

Silvano,

	Actually, no.  We cannot stop making this argument, especially
in this venue.  Arguing that it might be appropriate to use IP is 
ALWAYS a legitimate argument in the IETF.  Period.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Thursday, November 16, 2006 10:11 AM
--> To: Gray, Eric; Guillermo Ib??ez; J. R. Rivers
--> Cc: [email-masked]; Radia Perlman
--> Subject: RE: [rbridge] Should we optimize the common case?
--> 
--> 
--> Eric,
--> 
--> 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]] On
--> > Behalf Of Gray, Eric
--> > Sent: Wednesday, November 15, 2006 1:32 PM
--> > To: Guillermo Ib??ez; J. R. Rivers
--> > Cc: [email-masked]; Radia Perlman
--> > Subject: Re: [rbridge] Should we optimize the common case?
--> > 
--> > Guillermo,
--> > 
--> > 	In an ideal world, this would be true.  However, these ideas
--> > are recurring and - as a strictly practical issue - they have to
--> > cooperate in a world that has moved on from past iterations of the
--> > same ideas.
--> > 
--> > 	For the most part, the answer you're going to find here is:
--> > if you need hierarchical addressing, you've come to the 
--> right place
--> > - just use IP...
--> 
--> Can we stop making this argument? It is not constructive.
--> I think Guillermo understand the difference between Layer 2 
--> and IP, as well as we do.
--> 
--> I am not sure I agree the TRILL should use Hierarchical MAC 
--> addresses, but I definitely agree that this has been 
--> proposed in several different forums/occasions and it has 
--> some value.
--> 
--> We also need to clearly say that there are two different 
--> possible uses of Hierarchical MAC Addresses:
--> 
--> 1) The switch assigns to the end node of a hierarchical MAC 
--> address. This goes in the inner header.
--> 
--> 2) The switch uses in the outer header hierarchical MAC 
--> addresses to encode different kind of information.
--> 
--> IMHO 1) is interesting but it does not support legacy and 
--> therefore is pragmatically difficult. I also don't believe 
--> in NATting the MAC addresses.
--> 
--> 2) can be explored and used if needed.
--> 
--> -- Silvano
--> 
--> 
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked]
--> > --> [mailto:[email-masked]] On Behalf Of 
--> Guillermo Ib??ez
--> > --> Sent: Wednesday, November 15, 2006 10:32 AM
--> > --> To: J. R. Rivers
--> > --> Cc: [email-masked]; Radia Perlman
--> > --> Subject: Re: [rbridge] Should we optimize the common case?
--> > -->
--> > --> While agreeing with some of the arguments, I see far 
--> from ideal for
--> > --> scalability that RBridges advertise host lists with a
--> > --> number of host L2
--> > --> addresses impossible to consolidate.
--> > --> Looking for some hierarchy and structure in L2 addresses,
--> > --> although not
--> > --> easy at first glance, may provide long term benefits 
--> in scalability.
--> > --> Guillermo
--> > -->
--> > --> J. R. Rivers escribi?:
--> > --> > I've worked on such systems, and while the address
--> > --> summarization creates a degree of scale, you generally find
--> > --> that the fixed association between endnode and switch is
--> > --> very restricting and limiting.
--> > --> >
--> > --> > This is one of the reasons that I find TRILL very
--> > --> clean... the relationship between an endnode and an rbridge
--> > --> is that of convenience, not requirement.
--> > --> >
--> > --> > I can build multi-homed networks... assuming that an edge
--> > --> rbridge can maintain multiple endhost->rbridge associations
--> > --> without changing the forwarding constructs of the rbridge
--> > --> "core".  This occurs because each edge rbridge advertises
--> > --> reachability to the host.
--> > --> >
--> > --> > I can redirect frames through an rbridge network without
--> > --> changing the underlying L2 constructs (as required by many
--> > --> IDS/crypto protocols).  Then I can forward them to their
--> > --> intended destinations.
--> > --> >
--> > --> > All of these require support from coordinating edge
--> > --> rbridges... the endhosts, other edge rbridges, and core
--> > --> rbridges are blissfully unaware of these goings on.
--> > --> >
--> > --> > All this comes from partitioning the system into a
--> > --> simple, fast, cheap HW forwarding plane and a fully SW
--> > --> managed control plane.
--> > --> >
--> > --> > JR
--> > --> >
--> > --> >
--> > --> >
--> > --> >> -----Original Message-----
--> > --> >> From: Guillermo Ib??ez [mailto:[email-masked]]
--> > --> >> Sent: Tuesday, November 14, 2006 2:37 AM
--> > --> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; 
--> Silvano Gai
--> > --> >> Cc: [email-masked]
--> > --> >> Subject: Re: [rbridge] Should we optimize the common case?
--> > --> >>
--> > --> >> I think there is a misunderstanding.  This is IMHO a
--> > --> >> practical alternative:
--> > --> >> -An RBridge port is connected to a  "link" and receives
--> > --> frames from
--> > --> >> multiple hosts:  The RBridge builds an internal
--> > --> translation table of
--> > --> >> global MACs to hierarchical MACs (HMACs) assigned by him
--> > --> and replaces
--> > --> >> global MAC by hierarchical MAC in the original frame.
--> > --> >> -These hierarchical MAC addresses for hosts 
--> contain the RBridge
--> > --> >> Nickname, so it becomes *part* of the complete host address
--> > --> >> transmitted
--> > --> >> as "original" frame.  So these addresses should contain
--> > --> >> RBridge Nickname
--> > --> >> with host nickname appended (internal grouping of host
--> > --> nicknames per
--> > --> >> RBridge port ID would also help). To be defined.
--> > --> >> - Hierarchical MAC MAY also be used in the ARP response
--> > --> packets (when
--> > --> >> RBridge acts as proxy ARP or by interception of the host
--> > --> response
--> > --> >> packet), so the requester obtains the hierarchical MAC
--> > --> >> address instead
--> > --> >> of the global one and uses it for all transactions.
--> > --> >> - The hosts with hierarchical MAC addresses do not 
--> need being
--> > --> >> announced
--> > --> >> by the RBridges in their host lists, because their 
--> DR RBridge
--> > --> >> nickname
--> > --> >> is included in the hierarchical MAC address of host in
--> > --> the "original"
--> > --> >> (now altered with HMAC) frame.
--> > --> >> - Frames with inner hierarchical destination address need
--> > --> >> only to read
--> > --> >> the destination RBridge Nickname to obtain the 
--> egrees RBridge
--> > --> >> (no need
--> > --> >> to look host-RBridge table). The host list mechanism is
--> > --> not used by
--> > --> >> hosts whose RBridge handles them with hierarchical 
--> addressing.
--> > --> >> Both types, global and local hierarchical addresses may
--> > --> >> coexist. Local
--> > --> >> hierarchical save processing and enhance scalability.
--> > --> >> Hope this clarifies.
--> > --> >> Guillermo
--> > --> >>
--> > --> >> PD.
--> > --> >> Other issues
--> > --> >> -DHCP-like mechanism
--> > --> >> Hierarchical MACs can be assigned with DHCP like 
--> mechanism to
--> > --> >> hosts, but
--> > --> >> IMHO this has impact on end nodes, so it can not 
--> be the standard
--> > --> >> mechanism, only an option.
--> > --> >> - Generic hierarchical MAC addresses and masks (ref. Dr.
--> > --> >> Morales slide)
--> > --> >> I proposed the generic addressing format  that includes
--> > --> hierarchical
--> > --> >> masks looking for a generic addressing space, that could
--> > --> be useful to
--> > --> >> scale further RBridges in the future. I understand that at
--> > --> >> this stage of
--> > --> >> definition of RBridges to look for a fully generic
--> > --> format could be
--> > --> >> disruptive. However, the need for a generic hierarchical
--> > --> addressing
--> > --> >> space in Ethernet is growing.
--> > --> >>
--> > --> >>
--> > --> >>
--> > --> >>
--> > --> >> Caitlin Bestler escribi?:
--> > --> >>> Radia Perlman wrote:
--> > --> >>>
--> > --> >>>> Not sure I've been following this, but let me 
--> conjecture what
--> > --> >>>> people are suggesting, and if I'm right about 
--> the suggestion,
--> > --> >>>> I think it's a good idea. Correct me if it's not what
--> > --> people are
--> > --> >>>> saying.
--> > --> >>>>
--> > --> >>>> So I think what they are saying is the following:
--> > --> >>>> a) there are cases where an RBridge has a block 
--> of addresses
--> > --> >>>> (like DHCP) that it hands out to endnodes
--> > --> >>>> b) in that case, it would be nice if the RBridge can
--> > --> >>>> announce, in its LSP, the whole range of 
--> addresses, rather
--> > --> >>>> than reporting each individually
--> > --> >>>> c) the change would be an ability to express a 
--> range in the
--> > --> >>>> endnode announcement. This seems easy, but I 
--> think it would
--> > --> >>>> be best done with a 2nd TLV in IS-IS. The 1st 
--> TLV would be
--> > --> >> individual
--> > --> >>>> addresses. The 2nd TLV would be pairs of addresses
--> > --> (low, high). Or
--> > --> >>>> (low, increment), as in "starting with address X,
--> > --> >>>> 32 addresses" (which would take up a bit less space
--> > --> than two MAC
--> > --> >>>> addresses.
--> > --> >>>>
--> > --> >>>> I don't think of this as a hierarchical address---I just
--> > --> >>>> think of it as a range of addresses reachable 
--> from one RBridge.
--> > --> >>>>
--> > --> >>>>
--> > --> >>> Reduction in the total number of reports required 
--> to support N
--> > --> >>> addresses is probably the only benefit of "hierarchical
--> > --> addresses"
--> > --> >>> that we can achieve if we are going to support 
--> global-scope MAC
--> > --> >>> addresses as well. Which I'm certain everyone 
--> agrees is a given.
--> > --> >>>
--> > --> >>>
--> > --> >
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > -->
--> > 
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Thu, 16 Nov 2006 10:31:10 -0500
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 9580

Silvano,

	Sorry, but you are incorrect.

	Routers are "end-stations" to a layer 2 network - hence it is 
necessarily the case that TRILL frames MUST egress the RBridge CRED
prior to being delivered to a "routing function."  In the same way,
any frame delivered frome a "routing function" MUST ingress the CRED
for subsequent delivery in the form of TRILL frames.

	This is a logical distinction and does not - in any way - limit
your implementation choices.  Logically, what happens is:

1) the TRILL encapsulation is stripped, along with the SHIM header,
2) the frame is forwarded (possibly locally, possibly only logically) 
   to the component that implements the "routing function",
3) the remaining Ethernet header is stripped, delivering the data (an
   IP packet) - along with relevant packet information (such as length) 
   - to the "routing function",
4) the "routing function" is used (including, for example ACLs, policy
   based forwarding, etc.) to determine how to forward the _packet_ -
   including forwarding to a logical "interface" on a distinct VLAN,
5) after the forwarding decision is made, appropriate encapsulation is
   added to the IP packet, again converting it (in this case) to an
   Ethernet frame,
6) the resulting Ethernet frame is forwarded (possibly locally, possibly 
   only logically) from the component implementing the "routing function"
   to the appropriate RBridge component,
7) the RBridge component then provides ingress for the frame by adding
   a SHIM and re-encapsulating the frame with the appropriate TRILL
   encapsulation.

	To RE-EMPHASIZE, this is what happens logically.  What you do in
your implementation may differ substantially from this.  It may - for
example - be quite a bit simpler.  How you do this is why you get paid
the big bucks.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Thursday, November 16, 2006 1:45 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] IVLANs vs OVLANs
--> 
--> 
--> Eric,
--> 
--> On a second thought, you cannot put a router between OVLAN=1 and
--> OVLAN=2, the frame is not routable, since its Ethertype is 
--> TRILL, not
--> IPv4 or IPv6.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 15, 2006 12:13 PM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] IVLANs vs OVLANs
--> > 
--> > Silvano,
--> > 
--> > 	First of all, I will take very large exception to the way
--> > which you have over-loaded the term "CRED."  This term was coined
--> > to eliminate confusion caused by the various different was people
--> > were over-loading the term "Campus."
--> > 
--> > 	At the "core" of your question, however, is the issue of
--> > how VLANs interact in a bridged/RBridge environment.  It is not
--> > different than would be the case in a "classical bridged LAN."
--> > 
--> > 	This issue is based on a misconception that existed very
--> > early on in the life of the TRILL working group (in the first
--> > BoF, in fact).  The misconception is that VLAN connectivity may
--> > be provided by RBridges and/or bridges.
--> > 
--> > 	This is fundamentally incorrect.
--> > 
--> > 	Interconnection of VLANs is strictly a routing function.
--> > In deployed equipment that does this today, there may be some
--> > form of "smart VLAN bridging" that occurs in devices people are
--> > used to referring to as "bridges" or "switches."  That does not
--> > change the fact that forwarding from one VLAN to another is a
--> > "routing function."
--> > 
--> > 	Note that, in this context, when I say "forwarding from
--> > one VLAN to another" - I mean "VLAN" in the sense of "virtual
--> > LAN" as a logical concept.  This has nothing to do with the fact
--> > that a VLAN ID might change in traversing a VLAN-aware bridge.
--> > 
--> > 	Consequently, in the picture you have below, the VLANs
--> > represented by the VLAN-tag in the tunnel encapsulation may
--> > not be connected together by RB1.
--> > 
--> > 	To correctly restate your question, the original topology
--> > would be as follows:
--> > 
--> > 
--> >                 +-----+  1,2  +-----------+
--> >                 | RB1 |-------| Rtg Fnctn |
--> >                 +-----+       +-----------+
--> >                    |
--> >                    | 1,2
--> >                    |
--> >  +-----+   1    +-----+    2     +-----+
--> >  | RB2 |--------| SW1 |----------| RB3 |
--> >  +-----+        +-----+          +-----+
--> > 
--> > The resulting logical topology MUST then be as follows:
--> > 
--> > 
--> >  +-----+        +-----+       +-----------+
--> >  | RB2 |--------| RB1 |-------| Rtg Fnctn |
--> >  +-----+        +-----+       +-----+-----+
--> >                                     |
--> >                                  +--+--+          +-----+
--> >                                  | RB1 |----------| RB3 |
--> >                                  +-----+          +-----+
--> > 
--> > Since the "routing function" is orthogonal, and well understood,
--> > it does not make sense for us to try to combine this concept with
--> > RBridge behaviors and protocol interactions.
--> > 
--> > --
--> > Eric
--> > 
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked]
--> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> > --> Sent: Tuesday, November 14, 2006 8:11 PM
--> > --> To: [email-masked]
--> > --> Subject: [rbridge] IVLANs vs OVLANs
--> > -->
--> > -->
--> > --> During the last WG meeting I had an action item to send an
--> > --> email on the
--> > --> VLAN issue. Here it is.
--> > -->
--> > --> In a previous email I introduced the concept of IVLAN 
--> and OVLAN.
--> > -->
--> > --> IVLAN refers to the VLAN present on the untagged frames,
--> > --> which must be
--> > --> propagated by ISIS, VLAN pruning must be performed and so
--> > --> on. All the
--> > --> IVLANs share the same core instance of ISIS.
--> > -->
--> > --> OVLAN refers to the fact that the traffic between two
--> > --> RBridges can be
--> > --> encapsulated into a VLAN.
--> > -->
--> > --> If we look to the format of a TRILL encapsulated frame the
--> > --> position of
--> > --> these two fields is as follow:
--> > -->
--> > --> +--------------------------------+
--> > --> |               DA               |
--> > --> +----------------+---------------+
--> > --> |       DA       |     SA        |
--> > --> +----------------+---------------+
--> > --> |               SA               |
--> > --> +--------------------------------+
--> > --> |    ET = 1Q     |   OVLAN ...   |
--> > --> +--------------------------------+
--> > --> |    ET = TRILL  | RES  |  TTL   |
--> > --> +--------------------------------+
--> > --> | Egress Add.    | Ingress Add.  |
--> > --> +--------------------------------+
--> > --> |               DA               |
--> > --> +----------------+---------------+
--> > --> |       DA       |     SA        |
--> > --> +----------------+---------------+
--> > --> |               SA               |
--> > --> +--------------------------------+
--> > --> |    ET = 1Q     |   IVLAN ...   |
--> > --> +--------------------------------+
--> > --> |             Payload            |
--> > -->
--> > --> Now let's consider the following topology:
--> > -->
--> > -->                +-----+
--> > -->                | RB1 |
--> > -->                +-----+
--> > -->                   |
--> > -->                   | 1,2
--> > -->                   |
--> > --> +-----+   1    +-----+    2     +-----+
--> > --> | RB2 |--------| SW1 |----------| RB3 |
--> > --> +-----+        +-----+          +-----+
--> > -->
--> > --> RB1, RB2, RB3 are Rbridges, SW1 is a classical 
--> Ethernet switch.
--> > --> The link between RB2 and SW1 is in OVLAN 1, the link
--> > --> between SW1 and RB3
--> > --> is in OVLAN 2 and the links between SW1 and RB1 is a 
--> trunk and it
--> > --> carries both OVLAN 1 and 2.
--> > -->
--> > --> Now my question is: "do we have one CRED or two?"
--> > -->
--> > --> a) possible answer: "we have one CRED". RB2 is adjacent to
--> > --> RB1 but not
--> > --> to RB3. The same applies to RB3 that is adjacent to RB1,
--> > --> but not RB2.
--> > --> RB1 is adjacent to both RB2 and RB3. There is a single core
--> > --> instance of
--> > --> ISIS. RB2 may reach RB3 through RB1.
--> > -->
--> > --> The TRILL equivalent topology is:
--> > -->
--> > --> +-----+        +-----+          +-----+
--> > --> | RB2 |--------| RB1 |----------| RB3 |
--> > --> +-----+        +-----+          +-----+
--> > -->
--> > --> b) another possible answer: "we have two CREDs". One is
--> > --> composed by RB2
--> > --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
--> > --> since they are
--> > --> in different CREDs.
--> > -->
--> > --> The TRILL equivalent topologies are:
--> > -->
--> > --> +-----+        +-----+
--> > --> | RB2 |--------| RB1 |
--> > --> +-----+        +-----+
--> > -->
--> > --> +-----+          +-----+
--> > --> | RB1 |----------| RB3 |
--> > --> +-----+          +-----+
--> > -->
--> > --> I like a) and I hope we are in agreement that the right
--> > --> answer is a),
--> > --> but I haven't seen it explained in any of the documents.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > -->
--> 

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 07:13:57 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IEEE meeting
Status: RO
Content-Length: 1249

No problem, 

Take your time

Thanks

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Thursday, November 16, 2006 7:12 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: IEEE meeting
> 
> Silvano, et al,
> 
> I will be submitting a report to the WG as soon as possible.
> 
> To make sure there are no misunderstandings and the proper "protocol"
> is observed, I must first pass my intended report by way of the IEEE
> 802 chairs and the IETF/IEEE liaisons.
> 
> I have not yet done that, though I have started compiling notes from
> the meeting.
> 
> Please understand that the notion of even attending this meeting came
> up rather recently, so time for it (as well as time for reporting it)
> was not included in my plans for this month.  That does not mean it
> will not get done, only that it may not get done this week...
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Thursday, November 16, 2006 1:46 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: IEEE meeting
> -->
> -->
> --> Eric,
> -->
> --> How did the TRILL presentation to IEEE go?
> -->
> --> Thanks
> -->
> --> -- Silvano
> -->

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Thu, 16 Nov 2006 10:11:41 -0500
Cc: [email-masked]
Subject: Re: [rbridge] IEEE meeting
Status: RO
Content-Length: 939

Silvano, et al,

I will be submitting a report to the WG as soon as possible.

To make sure there are no misunderstandings and the proper "protocol"
is observed, I must first pass my intended report by way of the IEEE
802 chairs and the IETF/IEEE liaisons. 

I have not yet done that, though I have started compiling notes from
the meeting.

Please understand that the notion of even attending this meeting came
up rather recently, so time for it (as well as time for reporting it)
was not included in my plans for this month.  That does not mean it 
will not get done, only that it may not get done this week...

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Thursday, November 16, 2006 1:46 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: IEEE meeting
--> 
--> 
--> Eric,
--> 
--> How did the TRILL presentation to IEEE go?
--> 
--> Thanks
--> 
--> -- Silvano
--> 

Content-class: urn:content-classes:message
Date: Thu, 16 Nov 2006 07:11:22 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "J. R. Rivers" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 8789

Eric,

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Gray, Eric
> Sent: Wednesday, November 15, 2006 1:32 PM
> To: Guillermo Ib??ez; J. R. Rivers
> Cc: [email-masked]; Radia Perlman
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> Guillermo,
> 
> 	In an ideal world, this would be true.  However, these ideas
> are recurring and - as a strictly practical issue - they have to
> cooperate in a world that has moved on from past iterations of the
> same ideas.
> 
> 	For the most part, the answer you're going to find here is:
> if you need hierarchical addressing, you've come to the right place
> - just use IP...

Can we stop making this argument? It is not constructive.
I think Guillermo understand the difference between Layer 2 and IP, as well as we do.

I am not sure I agree the TRILL should use Hierarchical MAC addresses, but I definitely agree that this has been proposed in several different forums/occasions and it has some value.

We also need to clearly say that there are two different possible uses of Hierarchical MAC Addresses:

1) The switch assigns to the end node of a hierarchical MAC address. This goes in the inner header.

2) The switch uses in the outer header hierarchical MAC addresses to encode different kind of information.

IMHO 1) is interesting but it does not support legacy and therefore is pragmatically difficult. I also don't believe in NATting the MAC addresses.

2) can be explored and used if needed.

-- Silvano

> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
> --> Sent: Wednesday, November 15, 2006 10:32 AM
> --> To: J. R. Rivers
> --> Cc: [email-masked]; Radia Perlman
> --> Subject: Re: [rbridge] Should we optimize the common case?
> -->
> --> While agreeing with some of the arguments, I see far from ideal for
> --> scalability that RBridges advertise host lists with a
> --> number of host L2
> --> addresses impossible to consolidate.
> --> Looking for some hierarchy and structure in L2 addresses,
> --> although not
> --> easy at first glance, may provide long term benefits in scalability.
> --> Guillermo
> -->
> --> J. R. Rivers escribi?:
> --> > I've worked on such systems, and while the address
> --> summarization creates a degree of scale, you generally find
> --> that the fixed association between endnode and switch is
> --> very restricting and limiting.
> --> >
> --> > This is one of the reasons that I find TRILL very
> --> clean... the relationship between an endnode and an rbridge
> --> is that of convenience, not requirement.
> --> >
> --> > I can build multi-homed networks... assuming that an edge
> --> rbridge can maintain multiple endhost->rbridge associations
> --> without changing the forwarding constructs of the rbridge
> --> "core".  This occurs because each edge rbridge advertises
> --> reachability to the host.
> --> >
> --> > I can redirect frames through an rbridge network without
> --> changing the underlying L2 constructs (as required by many
> --> IDS/crypto protocols).  Then I can forward them to their
> --> intended destinations.
> --> >
> --> > All of these require support from coordinating edge
> --> rbridges... the endhosts, other edge rbridges, and core
> --> rbridges are blissfully unaware of these goings on.
> --> >
> --> > All this comes from partitioning the system into a
> --> simple, fast, cheap HW forwarding plane and a fully SW
> --> managed control plane.
> --> >
> --> > JR
> --> >
> --> >
> --> >
> --> >> -----Original Message-----
> --> >> From: Guillermo Ib??ez [mailto:[email-masked]]
> --> >> Sent: Tuesday, November 14, 2006 2:37 AM
> --> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
> --> >> Cc: [email-masked]
> --> >> Subject: Re: [rbridge] Should we optimize the common case?
> --> >>
> --> >> I think there is a misunderstanding.  This is IMHO a
> --> >> practical alternative:
> --> >> -An RBridge port is connected to a  "link" and receives
> --> frames from
> --> >> multiple hosts:  The RBridge builds an internal
> --> translation table of
> --> >> global MACs to hierarchical MACs (HMACs) assigned by him
> --> and replaces
> --> >> global MAC by hierarchical MAC in the original frame.
> --> >> -These hierarchical MAC addresses for hosts contain the RBridge
> --> >> Nickname, so it becomes *part* of the complete host address
> --> >> transmitted
> --> >> as "original" frame.  So these addresses should contain
> --> >> RBridge Nickname
> --> >> with host nickname appended (internal grouping of host
> --> nicknames per
> --> >> RBridge port ID would also help). To be defined.
> --> >> - Hierarchical MAC MAY also be used in the ARP response
> --> packets (when
> --> >> RBridge acts as proxy ARP or by interception of the host
> --> response
> --> >> packet), so the requester obtains the hierarchical MAC
> --> >> address instead
> --> >> of the global one and uses it for all transactions.
> --> >> - The hosts with hierarchical MAC addresses do not need being
> --> >> announced
> --> >> by the RBridges in their host lists, because their DR RBridge
> --> >> nickname
> --> >> is included in the hierarchical MAC address of host in
> --> the "original"
> --> >> (now altered with HMAC) frame.
> --> >> - Frames with inner hierarchical destination address need
> --> >> only to read
> --> >> the destination RBridge Nickname to obtain the egrees RBridge
> --> >> (no need
> --> >> to look host-RBridge table). The host list mechanism is
> --> not used by
> --> >> hosts whose RBridge handles them with hierarchical addressing.
> --> >> Both types, global and local hierarchical addresses may
> --> >> coexist. Local
> --> >> hierarchical save processing and enhance scalability.
> --> >> Hope this clarifies.
> --> >> Guillermo
> --> >>
> --> >> PD.
> --> >> Other issues
> --> >> -DHCP-like mechanism
> --> >> Hierarchical MACs can be assigned with DHCP like mechanism to
> --> >> hosts, but
> --> >> IMHO this has impact on end nodes, so it can not be the standard
> --> >> mechanism, only an option.
> --> >> - Generic hierarchical MAC addresses and masks (ref. Dr.
> --> >> Morales slide)
> --> >> I proposed the generic addressing format  that includes
> --> hierarchical
> --> >> masks looking for a generic addressing space, that could
> --> be useful to
> --> >> scale further RBridges in the future. I understand that at
> --> >> this stage of
> --> >> definition of RBridges to look for a fully generic
> --> format could be
> --> >> disruptive. However, the need for a generic hierarchical
> --> addressing
> --> >> space in Ethernet is growing.
> --> >>
> --> >>
> --> >>
> --> >>
> --> >> Caitlin Bestler escribi?:
> --> >>> Radia Perlman wrote:
> --> >>>
> --> >>>> Not sure I've been following this, but let me conjecture what
> --> >>>> people are suggesting, and if I'm right about the suggestion,
> --> >>>> I think it's a good idea. Correct me if it's not what
> --> people are
> --> >>>> saying.
> --> >>>>
> --> >>>> So I think what they are saying is the following:
> --> >>>> a) there are cases where an RBridge has a block of addresses
> --> >>>> (like DHCP) that it hands out to endnodes
> --> >>>> b) in that case, it would be nice if the RBridge can
> --> >>>> announce, in its LSP, the whole range of addresses, rather
> --> >>>> than reporting each individually
> --> >>>> c) the change would be an ability to express a range in the
> --> >>>> endnode announcement. This seems easy, but I think it would
> --> >>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be
> --> >> individual
> --> >>>> addresses. The 2nd TLV would be pairs of addresses
> --> (low, high). Or
> --> >>>> (low, increment), as in "starting with address X,
> --> >>>> 32 addresses" (which would take up a bit less space
> --> than two MAC
> --> >>>> addresses.
> --> >>>>
> --> >>>> I don't think of this as a hierarchical address---I just
> --> >>>> think of it as a range of addresses reachable from one RBridge.
> --> >>>>
> --> >>>>
> --> >>> Reduction in the total number of reports required to support N
> --> >>> addresses is probably the only benefit of "hierarchical
> --> addresses"
> --> >>> that we can achieve if we are going to support global-scope MAC
> --> >>> addresses as well. Which I'm certain everyone agrees is a given.
> --> >>>
> --> >>>
> --> >
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

From: "Gray, Eric" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Gray, Eric" <[email-masked]>
Date: Thu, 16 Nov 2006 10:06:35 -0500
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 9041

Guillermo,

	Are you sure we are not?  Are there not a plethora of L2
overlay services based on one or more IP-based tunneling schemes?

--
Eric 

--> -----Original Message-----
--> From: Guillermo Ib??ez [mailto:[email-masked]] 
--> Sent: Thursday, November 16, 2006 1:42 AM
--> To: Gray, Eric
--> Cc: J. R. Rivers; [email-masked]; Radia Perlman
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> 
--> 
--> Gray, Eric escribi?:
--> > Guillermo,
--> >
--> > 	In an ideal world, this would be true.  However, these ideas
--> > are recurring and - as a strictly practical issue - they have to 
--> > cooperate in a world that has moved on from past 
--> iterations of the 
--> > same ideas
--> >   
--> > 	For the most part, the answer you're going to find here is:
--> > if you need hierarchical addressing, you've come to the 
--> right place
--> >   
--> > - just use IP...
--> >   
--> If this is so, why are not using IP to scale up  Metro 
--> Ethernet Networks 
--> and Provider Backbone Bridges? 
--> > --
--> > Eric
--> >
--> > --> -----Original Message-----
--> > --> From: [email-masked] 
--> > --> [mailto:[email-masked]] On Behalf Of 
--> Guillermo Ib??ez
--> > --> Sent: Wednesday, November 15, 2006 10:32 AM
--> > --> To: J. R. Rivers
--> > --> Cc: [email-masked]; Radia Perlman
--> > --> Subject: Re: [rbridge] Should we optimize the common case?
--> > --> 
--> > --> While agreeing with some of the arguments, I see far 
--> from ideal for 
--> > --> scalability that RBridges advertise host lists with a 
--> > --> number of host L2 
--> > --> addresses impossible to consolidate.
--> > --> Looking for some hierarchy and structure in L2 addresses, 
--> > --> although not 
--> > --> easy at first glance, may provide long term benefits 
--> in scalability.
--> > --> Guillermo
--> > --> 
--> > --> J. R. Rivers escribi?:
--> > --> > I've worked on such systems, and while the address 
--> > --> summarization creates a degree of scale, you generally find 
--> > --> that the fixed association between endnode and switch is 
--> > --> very restricting and limiting.  
--> > --> > 
--> > --> > This is one of the reasons that I find TRILL very 
--> > --> clean... the relationship between an endnode and an rbridge 
--> > --> is that of convenience, not requirement.
--> > --> > 
--> > --> > I can build multi-homed networks... assuming that an edge 
--> > --> rbridge can maintain multiple endhost->rbridge associations 
--> > --> without changing the forwarding constructs of the rbridge 
--> > --> "core".  This occurs because each edge rbridge advertises 
--> > --> reachability to the host.
--> > --> > 
--> > --> > I can redirect frames through an rbridge network without 
--> > --> changing the underlying L2 constructs (as required by many 
--> > --> IDS/crypto protocols).  Then I can forward them to their 
--> > --> intended destinations.
--> > --> > 
--> > --> > All of these require support from coordinating edge 
--> > --> rbridges... the endhosts, other edge rbridges, and core 
--> > --> rbridges are blissfully unaware of these goings on.
--> > --> > 
--> > --> > All this comes from partitioning the system into a 
--> > --> simple, fast, cheap HW forwarding plane and a fully SW 
--> > --> managed control plane.
--> > --> > 
--> > --> > JR
--> > --> > 
--> > --> > 
--> > --> > 
--> > --> >> -----Original Message-----
--> > --> >> From: Guillermo Ib??ez [mailto:[email-masked]] 
--> > --> >> Sent: Tuesday, November 14, 2006 2:37 AM
--> > --> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; 
--> Silvano Gai
--> > --> >> Cc: [email-masked]
--> > --> >> Subject: Re: [rbridge] Should we optimize the common case?
--> > --> >>
--> > --> >> I think there is a misunderstanding.  This is IMHO a 
--> > --> >> practical alternative:
--> > --> >> -An RBridge port is connected to a  "link" and receives 
--> > --> frames from 
--> > --> >> multiple hosts:  The RBridge builds an internal 
--> > --> translation table of  
--> > --> >> global MACs to hierarchical MACs (HMACs) assigned by him 
--> > --> and replaces 
--> > --> >> global MAC by hierarchical MAC in the original frame.
--> > --> >> -These hierarchical MAC addresses for hosts 
--> contain the RBridge 
--> > --> >> Nickname, so it becomes *part* of the complete 
--> host address 
--> > --> >> transmitted 
--> > --> >> as "original" frame.  So these addresses should contain 
--> > --> >> RBridge Nickname 
--> > --> >> with host nickname appended (internal grouping of host 
--> > --> nicknames per 
--> > --> >> RBridge port ID would also help). To be defined.
--> > --> >> - Hierarchical MAC MAY also be used in the ARP response 
--> > --> packets (when 
--> > --> >> RBridge acts as proxy ARP or by interception of the host 
--> > --> response 
--> > --> >> packet), so the requester obtains the hierarchical MAC 
--> > --> >> address instead 
--> > --> >> of the global one and uses it for all transactions.
--> > --> >> - The hosts with hierarchical MAC addresses do not 
--> need being 
--> > --> >> announced 
--> > --> >> by the RBridges in their host lists, because their 
--> DR RBridge 
--> > --> >> nickname  
--> > --> >> is included in the hierarchical MAC address of host in 
--> > --> the "original" 
--> > --> >> (now altered with HMAC) frame.
--> > --> >> - Frames with inner hierarchical destination address need 
--> > --> >> only to read 
--> > --> >> the destination RBridge Nickname to obtain the 
--> egrees RBridge 
--> > --> >> (no need 
--> > --> >> to look host-RBridge table). The host list mechanism is 
--> > --> not used by  
--> > --> >> hosts whose RBridge handles them with hierarchical 
--> addressing. 
--> > --> >> Both types, global and local hierarchical addresses may 
--> > --> >> coexist. Local 
--> > --> >> hierarchical save processing and enhance scalability.
--> > --> >> Hope this clarifies.
--> > --> >> Guillermo
--> > --> >>
--> > --> >> PD.
--> > --> >> Other issues
--> > --> >> -DHCP-like mechanism
--> > --> >> Hierarchical MACs can be assigned with DHCP like 
--> mechanism to 
--> > --> >> hosts, but 
--> > --> >> IMHO this has impact on end nodes, so it can not 
--> be the standard 
--> > --> >> mechanism, only an option.
--> > --> >> - Generic hierarchical MAC addresses and masks (ref. Dr. 
--> > --> >> Morales slide)
--> > --> >> I proposed the generic addressing format  that includes 
--> > --> hierarchical 
--> > --> >> masks looking for a generic addressing space, that could 
--> > --> be useful to 
--> > --> >> scale further RBridges in the future. I understand that at 
--> > --> >> this stage of 
--> > --> >> definition of RBridges to look for a fully generic 
--> > --> format could be 
--> > --> >> disruptive. However, the need for a generic hierarchical 
--> > --> addressing 
--> > --> >> space in Ethernet is growing.
--> > --> >>  
--> > --> >>
--> > --> >>
--> > --> >>
--> > --> >> Caitlin Bestler escribi?:
--> > --> >>> Radia Perlman wrote:
--> > --> >>>   
--> > --> >>>> Not sure I've been following this, but let me 
--> conjecture what
--> > --> >>>> people are suggesting, and if I'm right about 
--> the suggestion,
--> > --> >>>> I think it's a good idea. Correct me if it's not what 
--> > --> people are
--> > --> >>>> saying. 
--> > --> >>>>
--> > --> >>>> So I think what they are saying is the following:
--> > --> >>>> a) there are cases where an RBridge has a block 
--> of addresses
--> > --> >>>> (like DHCP) that it hands out to endnodes
--> > --> >>>> b) in that case, it would be nice if the RBridge can
--> > --> >>>> announce, in its LSP, the whole range of 
--> addresses, rather
--> > --> >>>> than reporting each individually
--> > --> >>>> c) the change would be an ability to express a 
--> range in the
--> > --> >>>> endnode announcement. This seems easy, but I 
--> think it would
--> > --> >>>> be best done with a 2nd TLV in IS-IS. The 1st 
--> TLV would be 
--> > --> >> individual
--> > --> >>>> addresses. The 2nd TLV would be pairs of addresses 
--> > --> (low, high). Or
--> > --> >>>> (low, increment), as in "starting with address X,
--> > --> >>>> 32 addresses" (which would take up a bit less space 
--> > --> than two MAC
--> > --> >>>> addresses. 
--> > --> >>>>
--> > --> >>>> I don't think of this as a hierarchical address---I just
--> > --> >>>> think of it as a range of addresses reachable 
--> from one RBridge.
--> > --> >>>>
--> > --> >>>>     
--> > --> >>> Reduction in the total number of reports required 
--> to support N
--> > --> >>> addresses is probably the only benefit of "hierarchical 
--> > --> addresses"
--> > --> >>> that we can achieve if we are going to support 
--> global-scope MAC
--> > --> >>> addresses as well. Which I'm certain everyone 
--> agrees is a given.
--> > --> >>>
--> > --> >>>   
--> > --> > 
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > --> 
--> >   
--> 

Content-class: urn:content-classes:message
Date: Wed, 15 Nov 2006 22:44:49 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 6740

Eric,

On a second thought, you cannot put a router between OVLAN=1 and
OVLAN=2, the frame is not routable, since its Ethertype is TRILL, not
IPv4 or IPv6.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 15, 2006 12:13 PM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,
> 
> 	First of all, I will take very large exception to the way
> which you have over-loaded the term "CRED."  This term was coined
> to eliminate confusion caused by the various different was people
> were over-loading the term "Campus."
> 
> 	At the "core" of your question, however, is the issue of
> how VLANs interact in a bridged/RBridge environment.  It is not
> different than would be the case in a "classical bridged LAN."
> 
> 	This issue is based on a misconception that existed very
> early on in the life of the TRILL working group (in the first
> BoF, in fact).  The misconception is that VLAN connectivity may
> be provided by RBridges and/or bridges.
> 
> 	This is fundamentally incorrect.
> 
> 	Interconnection of VLANs is strictly a routing function.
> In deployed equipment that does this today, there may be some
> form of "smart VLAN bridging" that occurs in devices people are
> used to referring to as "bridges" or "switches."  That does not
> change the fact that forwarding from one VLAN to another is a
> "routing function."
> 
> 	Note that, in this context, when I say "forwarding from
> one VLAN to another" - I mean "VLAN" in the sense of "virtual
> LAN" as a logical concept.  This has nothing to do with the fact
> that a VLAN ID might change in traversing a VLAN-aware bridge.
> 
> 	Consequently, in the picture you have below, the VLANs
> represented by the VLAN-tag in the tunnel encapsulation may
> not be connected together by RB1.
> 
> 	To correctly restate your question, the original topology
> would be as follows:
> 
> 
>                 +-----+  1,2  +-----------+
>                 | RB1 |-------| Rtg Fnctn |
>                 +-----+       +-----------+
>                    |
>                    | 1,2
>                    |
>  +-----+   1    +-----+    2     +-----+
>  | RB2 |--------| SW1 |----------| RB3 |
>  +-----+        +-----+          +-----+
> 
> The resulting logical topology MUST then be as follows:
> 
> 
>  +-----+        +-----+       +-----------+
>  | RB2 |--------| RB1 |-------| Rtg Fnctn |
>  +-----+        +-----+       +-----+-----+
>                                     |
>                                  +--+--+          +-----+
>                                  | RB1 |----------| RB3 |
>                                  +-----+          +-----+
> 
> Since the "routing function" is orthogonal, and well understood,
> it does not make sense for us to try to combine this concept with
> RBridge behaviors and protocol interactions.
> 
> --
> Eric
> 
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> To: [email-masked]
> --> Subject: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> During the last WG meeting I had an action item to send an
> --> email on the
> --> VLAN issue. Here it is.
> -->
> --> In a previous email I introduced the concept of IVLAN and OVLAN.
> -->
> --> IVLAN refers to the VLAN present on the untagged frames,
> --> which must be
> --> propagated by ISIS, VLAN pruning must be performed and so
> --> on. All the
> --> IVLANs share the same core instance of ISIS.
> -->
> --> OVLAN refers to the fact that the traffic between two
> --> RBridges can be
> --> encapsulated into a VLAN.
> -->
> --> If we look to the format of a TRILL encapsulated frame the
> --> position of
> --> these two fields is as follow:
> -->
> --> +--------------------------------+
> --> |               DA               |
> --> +----------------+---------------+
> --> |       DA       |     SA        |
> --> +----------------+---------------+
> --> |               SA               |
> --> +--------------------------------+
> --> |    ET = 1Q     |   OVLAN ...   |
> --> +--------------------------------+
> --> |    ET = TRILL  | RES  |  TTL   |
> --> +--------------------------------+
> --> | Egress Add.    | Ingress Add.  |
> --> +--------------------------------+
> --> |               DA               |
> --> +----------------+---------------+
> --> |       DA       |     SA        |
> --> +----------------+---------------+
> --> |               SA               |
> --> +--------------------------------+
> --> |    ET = 1Q     |   IVLAN ...   |
> --> +--------------------------------+
> --> |             Payload            |
> -->
> --> Now let's consider the following topology:
> -->
> -->                +-----+
> -->                | RB1 |
> -->                +-----+
> -->                   |
> -->                   | 1,2
> -->                   |
> --> +-----+   1    +-----+    2     +-----+
> --> | RB2 |--------| SW1 |----------| RB3 |
> --> +-----+        +-----+          +-----+
> -->
> --> RB1, RB2, RB3 are Rbridges, SW1 is a classical Ethernet switch.
> --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> between SW1 and RB3
> --> is in OVLAN 2 and the links between SW1 and RB1 is a trunk and it
> --> carries both OVLAN 1 and 2.
> -->
> --> Now my question is: "do we have one CRED or two?"
> -->
> --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> RB1 but not
> --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> but not RB2.
> --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> instance of
> --> ISIS. RB2 may reach RB3 through RB1.
> -->
> --> The TRILL equivalent topology is:
> -->
> --> +-----+        +-----+          +-----+
> --> | RB2 |--------| RB1 |----------| RB3 |
> --> +-----+        +-----+          +-----+
> -->
> --> b) another possible answer: "we have two CREDs". One is
> --> composed by RB2
> --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> since they are
> --> in different CREDs.
> -->
> --> The TRILL equivalent topologies are:
> -->
> --> +-----+        +-----+
> --> | RB2 |--------| RB1 |
> --> +-----+        +-----+
> -->
> --> +-----+          +-----+
> --> | RB1 |----------| RB3 |
> --> +-----+          +-----+
> -->
> --> I like a) and I hope we are in agreement that the right
> --> answer is a),
> --> but I haven't seen it explained in any of the documents.
> -->
> --> -- Silvano
> -->
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->

Content-class: urn:content-classes:message
Date: Wed, 15 Nov 2006 22:45:53 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: [rbridge] IEEE meeting
Status: RO
Content-Length: 73

Eric,

How did the TRILL presentation to IEEE go?

Thanks

-- Silvano

Date: Thu, 16 Nov 2006 07:49:08 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Joe Touch <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 941

Joe Touch escribi?:
> Gray, Eric wrote:
> ...
>   
>> 	With the exception of the fact that I am still not sold on the
>> notion that 12, 14 or 16 bits gives us a big-enough nickname space,
>> I agree that Radia's option 2.A makes sense.
>>     
>
> Me too.
>
> ...
>   
I think option 2.A makes most sense compared with the others.
>> 	IMO, we should stick to a single SHIM format.  Also, I am very
>> much opposed to inventing any new MAC formats here in the IETF - and 
>> I think we are out of line in talking about doing so.
>>     
>
> I agree with this too.
>
> Joe
>
>   
The "invented" "new" MAC format is the standard MAC format for locally 
assigned L2 addresses. It is the handling which is different. So perhaps 
is more invention in the encapsulation and shim formats discussed.
I said before that TRILL is at an advanced stage of definition, for sure 
too late to discuss this questions.
I agree to stop discussion on this.

Date: Thu, 16 Nov 2006 07:42:17 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 7726

Gray, Eric escribi?:
> Guillermo,
>
> 	In an ideal world, this would be true.  However, these ideas
> are recurring and - as a strictly practical issue - they have to 
> cooperate in a world that has moved on from past iterations of the 
> same ideas
>   
> 	For the most part, the answer you're going to find here is:
> if you need hierarchical addressing, you've come to the right place
>   
> - just use IP...
>   
If this is so, why are not using IP to scale up  Metro Ethernet Networks 
and Provider Backbone Bridges? 
> --
> Eric
>
> --> -----Original Message-----
> --> From: [email-masked] 
> --> [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
> --> Sent: Wednesday, November 15, 2006 10:32 AM
> --> To: J. R. Rivers
> --> Cc: [email-masked]; Radia Perlman
> --> Subject: Re: [rbridge] Should we optimize the common case?
> --> 
> --> While agreeing with some of the arguments, I see far from ideal for 
> --> scalability that RBridges advertise host lists with a 
> --> number of host L2 
> --> addresses impossible to consolidate.
> --> Looking for some hierarchy and structure in L2 addresses, 
> --> although not 
> --> easy at first glance, may provide long term benefits in scalability.
> --> Guillermo
> --> 
> --> J. R. Rivers escribi?:
> --> > I've worked on such systems, and while the address 
> --> summarization creates a degree of scale, you generally find 
> --> that the fixed association between endnode and switch is 
> --> very restricting and limiting.  
> --> > 
> --> > This is one of the reasons that I find TRILL very 
> --> clean... the relationship between an endnode and an rbridge 
> --> is that of convenience, not requirement.
> --> > 
> --> > I can build multi-homed networks... assuming that an edge 
> --> rbridge can maintain multiple endhost->rbridge associations 
> --> without changing the forwarding constructs of the rbridge 
> --> "core".  This occurs because each edge rbridge advertises 
> --> reachability to the host.
> --> > 
> --> > I can redirect frames through an rbridge network without 
> --> changing the underlying L2 constructs (as required by many 
> --> IDS/crypto protocols).  Then I can forward them to their 
> --> intended destinations.
> --> > 
> --> > All of these require support from coordinating edge 
> --> rbridges... the endhosts, other edge rbridges, and core 
> --> rbridges are blissfully unaware of these goings on.
> --> > 
> --> > All this comes from partitioning the system into a 
> --> simple, fast, cheap HW forwarding plane and a fully SW 
> --> managed control plane.
> --> > 
> --> > JR
> --> > 
> --> > 
> --> > 
> --> >> -----Original Message-----
> --> >> From: Guillermo Ib??ez [mailto:[email-masked]] 
> --> >> Sent: Tuesday, November 14, 2006 2:37 AM
> --> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
> --> >> Cc: [email-masked]
> --> >> Subject: Re: [rbridge] Should we optimize the common case?
> --> >>
> --> >> I think there is a misunderstanding.  This is IMHO a 
> --> >> practical alternative:
> --> >> -An RBridge port is connected to a  "link" and receives 
> --> frames from 
> --> >> multiple hosts:  The RBridge builds an internal 
> --> translation table of  
> --> >> global MACs to hierarchical MACs (HMACs) assigned by him 
> --> and replaces 
> --> >> global MAC by hierarchical MAC in the original frame.
> --> >> -These hierarchical MAC addresses for hosts contain the RBridge 
> --> >> Nickname, so it becomes *part* of the complete host address 
> --> >> transmitted 
> --> >> as "original" frame.  So these addresses should contain 
> --> >> RBridge Nickname 
> --> >> with host nickname appended (internal grouping of host 
> --> nicknames per 
> --> >> RBridge port ID would also help). To be defined.
> --> >> - Hierarchical MAC MAY also be used in the ARP response 
> --> packets (when 
> --> >> RBridge acts as proxy ARP or by interception of the host 
> --> response 
> --> >> packet), so the requester obtains the hierarchical MAC 
> --> >> address instead 
> --> >> of the global one and uses it for all transactions.
> --> >> - The hosts with hierarchical MAC addresses do not need being 
> --> >> announced 
> --> >> by the RBridges in their host lists, because their DR RBridge 
> --> >> nickname  
> --> >> is included in the hierarchical MAC address of host in 
> --> the "original" 
> --> >> (now altered with HMAC) frame.
> --> >> - Frames with inner hierarchical destination address need 
> --> >> only to read 
> --> >> the destination RBridge Nickname to obtain the egrees RBridge 
> --> >> (no need 
> --> >> to look host-RBridge table). The host list mechanism is 
> --> not used by  
> --> >> hosts whose RBridge handles them with hierarchical addressing. 
> --> >> Both types, global and local hierarchical addresses may 
> --> >> coexist. Local 
> --> >> hierarchical save processing and enhance scalability.
> --> >> Hope this clarifies.
> --> >> Guillermo
> --> >>
> --> >> PD.
> --> >> Other issues
> --> >> -DHCP-like mechanism
> --> >> Hierarchical MACs can be assigned with DHCP like mechanism to 
> --> >> hosts, but 
> --> >> IMHO this has impact on end nodes, so it can not be the standard 
> --> >> mechanism, only an option.
> --> >> - Generic hierarchical MAC addresses and masks (ref. Dr. 
> --> >> Morales slide)
> --> >> I proposed the generic addressing format  that includes 
> --> hierarchical 
> --> >> masks looking for a generic addressing space, that could 
> --> be useful to 
> --> >> scale further RBridges in the future. I understand that at 
> --> >> this stage of 
> --> >> definition of RBridges to look for a fully generic 
> --> format could be 
> --> >> disruptive. However, the need for a generic hierarchical 
> --> addressing 
> --> >> space in Ethernet is growing.
> --> >>  
> --> >>
> --> >>
> --> >>
> --> >> Caitlin Bestler escribi?:
> --> >>> Radia Perlman wrote:
> --> >>>   
> --> >>>> Not sure I've been following this, but let me conjecture what
> --> >>>> people are suggesting, and if I'm right about the suggestion,
> --> >>>> I think it's a good idea. Correct me if it's not what 
> --> people are
> --> >>>> saying. 
> --> >>>>
> --> >>>> So I think what they are saying is the following:
> --> >>>> a) there are cases where an RBridge has a block of addresses
> --> >>>> (like DHCP) that it hands out to endnodes
> --> >>>> b) in that case, it would be nice if the RBridge can
> --> >>>> announce, in its LSP, the whole range of addresses, rather
> --> >>>> than reporting each individually
> --> >>>> c) the change would be an ability to express a range in the
> --> >>>> endnode announcement. This seems easy, but I think it would
> --> >>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be 
> --> >> individual
> --> >>>> addresses. The 2nd TLV would be pairs of addresses 
> --> (low, high). Or
> --> >>>> (low, increment), as in "starting with address X,
> --> >>>> 32 addresses" (which would take up a bit less space 
> --> than two MAC
> --> >>>> addresses. 
> --> >>>>
> --> >>>> I don't think of this as a hierarchical address---I just
> --> >>>> think of it as a range of addresses reachable from one RBridge.
> --> >>>>
> --> >>>>     
> --> >>> Reduction in the total number of reports required to support N
> --> >>> addresses is probably the only benefit of "hierarchical 
> --> addresses"
> --> >>> that we can achieve if we are going to support global-scope MAC
> --> >>> addresses as well. Which I'm certain everyone agrees is a given.
> --> >>>
> --> >>>   
> --> > 
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> 
>   

Content-class: urn:content-classes:message
Date: Wed, 15 Nov 2006 21:56:31 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 7359

Eric,

I am just trying to understand if there is consensus in a) or b).

The impression I got talking with Radia is that she was in favor of a).

Your reply is my b) model to which you have added a router. Since b) is
two separate layer 2 networks, you can put a router between the two, as
you did.

Please also note that I can redraw the same network in a different way:

                +-----+
                | RB1 |
                +-----+
                 |  |
               1 |  | 2
                 |  |
 +-----+   1    +-----+    2     +-----+
 | RB2 |--------| SW1 |----------| RB3 |
 +-----+        +-----+          +-----+

Where I replaced the Etherchannel with two links, one in OVLAN=1 and one
in OVLAN=2. 

Now is RB2 capable of talking to RB3 through RB1?

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 15, 2006 12:13 PM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] IVLANs vs OVLANs
> 
> Silvano,
> 
> 	First of all, I will take very large exception to the way
> which you have over-loaded the term "CRED."  This term was coined
> to eliminate confusion caused by the various different was people
> were over-loading the term "Campus."
> 
> 	At the "core" of your question, however, is the issue of
> how VLANs interact in a bridged/RBridge environment.  It is not
> different than would be the case in a "classical bridged LAN."
> 
> 	This issue is based on a misconception that existed very
> early on in the life of the TRILL working group (in the first
> BoF, in fact).  The misconception is that VLAN connectivity may
> be provided by RBridges and/or bridges.
> 
> 	This is fundamentally incorrect.
> 
> 	Interconnection of VLANs is strictly a routing function.
> In deployed equipment that does this today, there may be some
> form of "smart VLAN bridging" that occurs in devices people are
> used to referring to as "bridges" or "switches."  That does not
> change the fact that forwarding from one VLAN to another is a
> "routing function."
> 
> 	Note that, in this context, when I say "forwarding from
> one VLAN to another" - I mean "VLAN" in the sense of "virtual
> LAN" as a logical concept.  This has nothing to do with the fact
> that a VLAN ID might change in traversing a VLAN-aware bridge.
> 
> 	Consequently, in the picture you have below, the VLANs
> represented by the VLAN-tag in the tunnel encapsulation may
> not be connected together by RB1.
> 
> 	To correctly restate your question, the original topology
> would be as follows:
> 
> 
>                 +-----+  1,2  +-----------+
>                 | RB1 |-------| Rtg Fnctn |
>                 +-----+       +-----------+
>                    |
>                    | 1,2
>                    |
>  +-----+   1    +-----+    2     +-----+
>  | RB2 |--------| SW1 |----------| RB3 |
>  +-----+        +-----+          +-----+
> 
> The resulting logical topology MUST then be as follows:
> 
> 
>  +-----+        +-----+       +-----------+
>  | RB2 |--------| RB1 |-------| Rtg Fnctn |
>  +-----+        +-----+       +-----+-----+
>                                     |
>                                  +--+--+          +-----+
>                                  | RB1 |----------| RB3 |
>                                  +-----+          +-----+
> 
> Since the "routing function" is orthogonal, and well understood,
> it does not make sense for us to try to combine this concept with
> RBridge behaviors and protocol interactions.
> 
> --
> Eric
> 
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> Sent: Tuesday, November 14, 2006 8:11 PM
> --> To: [email-masked]
> --> Subject: [rbridge] IVLANs vs OVLANs
> -->
> -->
> --> During the last WG meeting I had an action item to send an
> --> email on the
> --> VLAN issue. Here it is.
> -->
> --> In a previous email I introduced the concept of IVLAN and OVLAN.
> -->
> --> IVLAN refers to the VLAN present on the untagged frames,
> --> which must be
> --> propagated by ISIS, VLAN pruning must be performed and so
> --> on. All the
> --> IVLANs share the same core instance of ISIS.
> -->
> --> OVLAN refers to the fact that the traffic between two
> --> RBridges can be
> --> encapsulated into a VLAN.
> -->
> --> If we look to the format of a TRILL encapsulated frame the
> --> position of
> --> these two fields is as follow:
> -->
> --> +--------------------------------+
> --> |               DA               |
> --> +----------------+---------------+
> --> |       DA       |     SA        |
> --> +----------------+---------------+
> --> |               SA               |
> --> +--------------------------------+
> --> |    ET = 1Q     |   OVLAN ...   |
> --> +--------------------------------+
> --> |    ET = TRILL  | RES  |  TTL   |
> --> +--------------------------------+
> --> | Egress Add.    | Ingress Add.  |
> --> +--------------------------------+
> --> |               DA               |
> --> +----------------+---------------+
> --> |       DA       |     SA        |
> --> +----------------+---------------+
> --> |               SA               |
> --> +--------------------------------+
> --> |    ET = 1Q     |   IVLAN ...   |
> --> +--------------------------------+
> --> |             Payload            |
> -->
> --> Now let's consider the following topology:
> -->
> -->                +-----+
> -->                | RB1 |
> -->                +-----+
> -->                   |
> -->                   | 1,2
> -->                   |
> --> +-----+   1    +-----+    2     +-----+
> --> | RB2 |--------| SW1 |----------| RB3 |
> --> +-----+        +-----+          +-----+
> -->
> --> RB1, RB2, RB3 are Rbridges, SW1 is a classical Ethernet switch.
> --> The link between RB2 and SW1 is in OVLAN 1, the link
> --> between SW1 and RB3
> --> is in OVLAN 2 and the links between SW1 and RB1 is a trunk and it
> --> carries both OVLAN 1 and 2.
> -->
> --> Now my question is: "do we have one CRED or two?"
> -->
> --> a) possible answer: "we have one CRED". RB2 is adjacent to
> --> RB1 but not
> --> to RB3. The same applies to RB3 that is adjacent to RB1,
> --> but not RB2.
> --> RB1 is adjacent to both RB2 and RB3. There is a single core
> --> instance of
> --> ISIS. RB2 may reach RB3 through RB1.
> -->
> --> The TRILL equivalent topology is:
> -->
> --> +-----+        +-----+          +-----+
> --> | RB2 |--------| RB1 |----------| RB3 |
> --> +-----+        +-----+          +-----+
> -->
> --> b) another possible answer: "we have two CREDs". One is
> --> composed by RB2
> --> and RB1, the other by RB3 and RB1. RB2 may not reach RB3,
> --> since they are
> --> in different CREDs.
> -->
> --> The TRILL equivalent topologies are:
> -->
> --> +-----+        +-----+
> --> | RB2 |--------| RB1 |
> --> +-----+        +-----+
> -->
> --> +-----+          +-----+
> --> | RB1 |----------| RB3 |
> --> +-----+          +-----+
> -->
> --> I like a) and I hope we are in agreement that the right
> --> answer is a),
> --> but I haven't seen it explained in any of the documents.
> -->
> --> -- Silvano
> -->
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->

Date: Wed, 15 Nov 2006 14:43:59 -0800
From: Joe Touch <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1152

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig66A821AC1BCE1F99D74BD535
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Gray, Eric wrote:
=2E..
> 	With the exception of the fact that I am still not sold on the
> notion that 12, 14 or 16 bits gives us a big-enough nickname space,
> I agree that Radia's option 2.A makes sense.

Me too.

=2E..
> 	IMO, we should stick to a single SHIM format.  Also, I am very
> much opposed to inventing any new MAC formats here in the IETF - and=20
> I think we are out of line in talking about doing so.

I agree with this too.

Joe

--------------enig66A821AC1BCE1F99D74BD535
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enig66A821AC1BCE1F99D74BD535--

From: "Gray, Eric" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "J. R. Rivers" <[email-masked]>
Date: Wed, 15 Nov 2006 16:31:40 -0500
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 7224

Guillermo,

	In an ideal world, this would be true.  However, these ideas
are recurring and - as a strictly practical issue - they have to 
cooperate in a world that has moved on from past iterations of the 
same ideas.

	For the most part, the answer you're going to find here is:
if you need hierarchical addressing, you've come to the right place 
- just use IP...

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
--> Sent: Wednesday, November 15, 2006 10:32 AM
--> To: J. R. Rivers
--> Cc: [email-masked]; Radia Perlman
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> While agreeing with some of the arguments, I see far from ideal for 
--> scalability that RBridges advertise host lists with a 
--> number of host L2 
--> addresses impossible to consolidate.
--> Looking for some hierarchy and structure in L2 addresses, 
--> although not 
--> easy at first glance, may provide long term benefits in scalability.
--> Guillermo
--> 
--> J. R. Rivers escribi?:
--> > I've worked on such systems, and while the address 
--> summarization creates a degree of scale, you generally find 
--> that the fixed association between endnode and switch is 
--> very restricting and limiting.  
--> > 
--> > This is one of the reasons that I find TRILL very 
--> clean... the relationship between an endnode and an rbridge 
--> is that of convenience, not requirement.
--> > 
--> > I can build multi-homed networks... assuming that an edge 
--> rbridge can maintain multiple endhost->rbridge associations 
--> without changing the forwarding constructs of the rbridge 
--> "core".  This occurs because each edge rbridge advertises 
--> reachability to the host.
--> > 
--> > I can redirect frames through an rbridge network without 
--> changing the underlying L2 constructs (as required by many 
--> IDS/crypto protocols).  Then I can forward them to their 
--> intended destinations.
--> > 
--> > All of these require support from coordinating edge 
--> rbridges... the endhosts, other edge rbridges, and core 
--> rbridges are blissfully unaware of these goings on.
--> > 
--> > All this comes from partitioning the system into a 
--> simple, fast, cheap HW forwarding plane and a fully SW 
--> managed control plane.
--> > 
--> > JR
--> > 
--> > 
--> > 
--> >> -----Original Message-----
--> >> From: Guillermo Ib??ez [mailto:[email-masked]] 
--> >> Sent: Tuesday, November 14, 2006 2:37 AM
--> >> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
--> >> Cc: [email-masked]
--> >> Subject: Re: [rbridge] Should we optimize the common case?
--> >>
--> >> I think there is a misunderstanding.  This is IMHO a 
--> >> practical alternative:
--> >> -An RBridge port is connected to a  "link" and receives 
--> frames from 
--> >> multiple hosts:  The RBridge builds an internal 
--> translation table of  
--> >> global MACs to hierarchical MACs (HMACs) assigned by him 
--> and replaces 
--> >> global MAC by hierarchical MAC in the original frame.
--> >> -These hierarchical MAC addresses for hosts contain the RBridge 
--> >> Nickname, so it becomes *part* of the complete host address 
--> >> transmitted 
--> >> as "original" frame.  So these addresses should contain 
--> >> RBridge Nickname 
--> >> with host nickname appended (internal grouping of host 
--> nicknames per 
--> >> RBridge port ID would also help). To be defined.
--> >> - Hierarchical MAC MAY also be used in the ARP response 
--> packets (when 
--> >> RBridge acts as proxy ARP or by interception of the host 
--> response 
--> >> packet), so the requester obtains the hierarchical MAC 
--> >> address instead 
--> >> of the global one and uses it for all transactions.
--> >> - The hosts with hierarchical MAC addresses do not need being 
--> >> announced 
--> >> by the RBridges in their host lists, because their DR RBridge 
--> >> nickname  
--> >> is included in the hierarchical MAC address of host in 
--> the "original" 
--> >> (now altered with HMAC) frame.
--> >> - Frames with inner hierarchical destination address need 
--> >> only to read 
--> >> the destination RBridge Nickname to obtain the egrees RBridge 
--> >> (no need 
--> >> to look host-RBridge table). The host list mechanism is 
--> not used by  
--> >> hosts whose RBridge handles them with hierarchical addressing. 
--> >> Both types, global and local hierarchical addresses may 
--> >> coexist. Local 
--> >> hierarchical save processing and enhance scalability.
--> >> Hope this clarifies.
--> >> Guillermo
--> >>
--> >> PD.
--> >> Other issues
--> >> -DHCP-like mechanism
--> >> Hierarchical MACs can be assigned with DHCP like mechanism to 
--> >> hosts, but 
--> >> IMHO this has impact on end nodes, so it can not be the standard 
--> >> mechanism, only an option.
--> >> - Generic hierarchical MAC addresses and masks (ref. Dr. 
--> >> Morales slide)
--> >> I proposed the generic addressing format  that includes 
--> hierarchical 
--> >> masks looking for a generic addressing space, that could 
--> be useful to 
--> >> scale further RBridges in the future. I understand that at 
--> >> this stage of 
--> >> definition of RBridges to look for a fully generic 
--> format could be 
--> >> disruptive. However, the need for a generic hierarchical 
--> addressing 
--> >> space in Ethernet is growing.
--> >>  
--> >>
--> >>
--> >>
--> >> Caitlin Bestler escribi?:
--> >>> Radia Perlman wrote:
--> >>>   
--> >>>> Not sure I've been following this, but let me conjecture what
--> >>>> people are suggesting, and if I'm right about the suggestion,
--> >>>> I think it's a good idea. Correct me if it's not what 
--> people are
--> >>>> saying. 
--> >>>>
--> >>>> So I think what they are saying is the following:
--> >>>> a) there are cases where an RBridge has a block of addresses
--> >>>> (like DHCP) that it hands out to endnodes
--> >>>> b) in that case, it would be nice if the RBridge can
--> >>>> announce, in its LSP, the whole range of addresses, rather
--> >>>> than reporting each individually
--> >>>> c) the change would be an ability to express a range in the
--> >>>> endnode announcement. This seems easy, but I think it would
--> >>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be 
--> >> individual
--> >>>> addresses. The 2nd TLV would be pairs of addresses 
--> (low, high). Or
--> >>>> (low, increment), as in "starting with address X,
--> >>>> 32 addresses" (which would take up a bit less space 
--> than two MAC
--> >>>> addresses. 
--> >>>>
--> >>>> I don't think of this as a hierarchical address---I just
--> >>>> think of it as a range of addresses reachable from one RBridge.
--> >>>>
--> >>>>     
--> >>> Reduction in the total number of reports required to support N
--> >>> addresses is probably the only benefit of "hierarchical 
--> addresses"
--> >>> that we can achieve if we are going to support global-scope MAC
--> >>> addresses as well. Which I'm certain everyone agrees is a given.
--> >>>
--> >>>   
--> > 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Radia Perlman <[email-masked]>, =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
Date: Wed, 15 Nov 2006 16:02:05 -0500
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 5950

Radia/Silvano,

	As I understand it, a summary of the current proposals (with 
apologies for omitting discussion prior to and including Guillermo's 
suggestion) would be as follows:

Radia suggests:

1 - create a MAC header with SA derived from combining ingress and
    sending RBridge nicknames, and DA derived from combining egress
    and receiving RBridge nicknames.  Variations -
    A) TTL is a separate field in the mutated MAC header
    B) TTL is embedded in one or the other derived "MAC address",
       or in some concatenation of both derived "MAC addresses" -
       still in the mutated header.

2 - including both ingress and egress RBridge nicknames in a SHIM,
    that also includes TTL.  Variations - 
    A) fixed (6 octet) length SHIM
    B) variable (6+ octet).

Radia stated a preference for 2.A.

Silvano's modification?

2.A (?) but including the option of using a standard MAC header with
the appropriate DA/SA for a point-to-point link.

=======================================================================

	IMO, Radia's proposals 1.A and 1.B are evidence of how far from
the beaten path we can wander when we try designing things in committee.

	With the exception of the fact that I am still not sold on the
notion that 12, 14 or 16 bits gives us a big-enough nickname space,
I agree that Radia's option 2.A makes sense.

	Alternative proposal 2.B suffers from the fact that it adds more
complexity to hardware implementation in every case in the misleading 
intention of reducing hardware implementation complexity in some cases.

	Given the fact that I think we're starting to gain some degree of 
convergence on the 2.A proposal, I am willing to go along with it.

	However, the additional option proposed by Silvano also suffers
from adding complexity in all cases by trying to simplify hardware in
some cases.  You might simplify your implementation by assuming it will
only ever be deployed in point-to-point networks, but that makes it more
difficult for an implementer who is targeting a super-set of deployment
scenarios your implementation targets.  Also, it will end up making your
implementation more complex by the time you discover that users don't
necessarily deploy things according to a vendor's plans in all cases.

	IMO, we should stick to a single SHIM format.  Also, I am very
much opposed to inventing any new MAC formats here in the IETF - and 
I think we are out of line in talking about doing so.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> Sent: Tuesday, November 14, 2006 7:35 PM
--> To: Radia Perlman; Guillermo Ib??ez
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> 
--> Radia,
--> 
--> May I propose:
--> 
--> c) Your b) proposal plus the option that on point-to-point 
--> link we can use a well know destination MAC address, i.e. 
--> RBridge-Next-Hop. 
--> 
--> This allows building a simplified HW that works only on 
--> point-to-point links and that does not keep a next hop 
--> adjacency table.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Radia Perlman [mailto:[email-masked]]
--> > Sent: Tuesday, November 14, 2006 6:59 AM
--> > To: Guillermo Ib??ez
--> > Cc: Caitlin Bestler; J. R. Rivers; Silvano Gai; [email-masked]
--> > Subject: Re: [rbridge] Should we optimize the common case?
--> > 
--> > The first RBridge has to recognize a true MAC address, so we can't
--> > reassign endnodes hierarchicaladdresses. I think trying to see 
--> > nickname | nexthop as a hierarchical address is just confusing, 
--> > especially since the "hierarchical address" will change at every 
--> > hop. With the LIDs, it's sort of like a hierarchical address, but 
--> > not really, since lots of endnodes (all the ones on the same link) 
--> > will share the same "hierarchical address". But with Sanjay's 
--> > proposal of folding "egress nickname" and "next hop nickname" into 
--> > the destination address of the hop-by-hop header, this is *not* a
--> > hierarchical address of the destination endnode.
--> >
--> > And besides, this doesn't change the technical proposal, so trying
--> > to think of it that way is, I think, a digression.
--> > 
--> > The real question I think is between two proposals, with variants:
--> > 
--> > a) have 2 byte + Ethernet header: by folding next hop and egress
--> > nickname into "destination MAC" and transmitting RBridge and ingress 
--> > RBridge nickname into "source MAC", with TTL as the only thing left 
--> > over, with possible variant being folding TTL into the source and
--> > destination MACs as well.
--> > 
--> > b) have 6 byte + Ethernet header; putting ingress and egress RBridge
--> > nicknames and TTL into the 6 bytes; with possible variant being a 
--> > variable length shim to add things like LIDs.
--> > 
--> > I'd prefer b) with fixed length at 6 bytes. My second choice is a) 
--> > with the 2 byte addition for TTL, since I think also folding TTL 
--> > into the MACs will be even more confusing.
--> > 
--> > Radia
--> > 
--> > 
--> > 
--> > I do think we should allow advertisement of MAC address 
--> ranges in IS-IS
--> > endnode reports, because
--> > in some cases this will make smaller tables.
--> > 
--> > I'd prefer the "true" hop by hop header, where next hop 
--> and this hop is
--> > used as the MAC addresses,
--> > and a shim header with 6 bytes, partially because it is simpler to
--> > understand, and will be perceived as
--> > pretty straightforward compared with what routers do; 
--> i.e., take a piece
--> > of information, put an end-to
--> > end header (e.g., IP header, but in our case the shim with
--> > ingress/egress RBridge and
--> > TTL) on the information, and then hop by hop put a 
--> link-specific header
--> > on (e.g.,
--> > an Ethernet header).
--> > 
--> > Radia
--> > 
-- [SNIP] --

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 15 Nov 2006 15:12:47 -0500
Cc: [email-masked]
Subject: Re: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 6041

Silvano,

	First of all, I will take very large exception to the way
which you have over-loaded the term "CRED."  This term was coined
to eliminate confusion caused by the various different was people
were over-loading the term "Campus."

	At the "core" of your question, however, is the issue of
how VLANs interact in a bridged/RBridge environment.  It is not
different than would be the case in a "classical bridged LAN." 

	This issue is based on a misconception that existed very 
early on in the life of the TRILL working group (in the first
BoF, in fact).  The misconception is that VLAN connectivity may
be provided by RBridges and/or bridges.  

	This is fundamentally incorrect.

	Interconnection of VLANs is strictly a routing function.
In deployed equipment that does this today, there may be some
form of "smart VLAN bridging" that occurs in devices people are
used to referring to as "bridges" or "switches."  That does not
change the fact that forwarding from one VLAN to another is a
"routing function."

	Note that, in this context, when I say "forwarding from
one VLAN to another" - I mean "VLAN" in the sense of "virtual
LAN" as a logical concept.  This has nothing to do with the fact
that a VLAN ID might change in traversing a VLAN-aware bridge.

	Consequently, in the picture you have below, the VLANs
represented by the VLAN-tag in the tunnel encapsulation may 
not be connected together by RB1.

	To correctly restate your question, the original topology
would be as follows:

                +-----+  1,2  +-----------+
                | RB1 |-------| Rtg Fnctn |
                +-----+       +-----------+
                   |
                   | 1,2
                   |
 +-----+   1    +-----+    2     +-----+ 
 | RB2 |--------| SW1 |----------| RB3 |
 +-----+        +-----+          +-----+

The resulting logical topology MUST then be as follows:

 +-----+        +-----+       +-----------+
 | RB2 |--------| RB1 |-------| Rtg Fnctn |
 +-----+        +-----+       +-----+-----+
                                    |
                                 +--+--+          +-----+
                                 | RB1 |----------| RB3 |
                                 +-----+          +-----+

Since the "routing function" is orthogonal, and well understood,
it does not make sense for us to try to combine this concept with
RBridge behaviors and protocol interactions.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> Sent: Tuesday, November 14, 2006 8:11 PM
--> To: [email-masked]
--> Subject: [rbridge] IVLANs vs OVLANs
--> 
--> 
--> During the last WG meeting I had an action item to send an 
--> email on the
--> VLAN issue. Here it is.
--> 
--> In a previous email I introduced the concept of IVLAN and OVLAN.
--> 
--> IVLAN refers to the VLAN present on the untagged frames, 
--> which must be
--> propagated by ISIS, VLAN pruning must be performed and so 
--> on. All the
--> IVLANs share the same core instance of ISIS.
--> 
--> OVLAN refers to the fact that the traffic between two 
--> RBridges can be
--> encapsulated into a VLAN.
--> 
--> If we look to the format of a TRILL encapsulated frame the 
--> position of
--> these two fields is as follow:
--> 
--> +--------------------------------+
--> |               DA               |
--> +----------------+---------------+
--> |       DA       |     SA        |
--> +----------------+---------------+
--> |               SA               |
--> +--------------------------------+
--> |    ET = 1Q     |   OVLAN ...   |
--> +--------------------------------+
--> |    ET = TRILL  | RES  |  TTL   |
--> +--------------------------------+
--> | Egress Add.    | Ingress Add.  |
--> +--------------------------------+
--> |               DA               |
--> +----------------+---------------+
--> |       DA       |     SA        |
--> +----------------+---------------+
--> |               SA               |
--> +--------------------------------+
--> |    ET = 1Q     |   IVLAN ...   |
--> +--------------------------------+
--> |             Payload            |
--> 
--> Now let's consider the following topology:
--> 
-->                +-----+
-->                | RB1 |
-->                +-----+
-->                   |
-->                   | 1,2
-->                   |
--> +-----+   1    +-----+    2     +-----+
--> | RB2 |--------| SW1 |----------| RB3 |
--> +-----+        +-----+          +-----+
--> 
--> RB1, RB2, RB3 are Rbridges, SW1 is a classical Ethernet switch.
--> The link between RB2 and SW1 is in OVLAN 1, the link 
--> between SW1 and RB3
--> is in OVLAN 2 and the links between SW1 and RB1 is a trunk and it
--> carries both OVLAN 1 and 2.
--> 
--> Now my question is: "do we have one CRED or two?"
--> 
--> a) possible answer: "we have one CRED". RB2 is adjacent to 
--> RB1 but not
--> to RB3. The same applies to RB3 that is adjacent to RB1, 
--> but not RB2.
--> RB1 is adjacent to both RB2 and RB3. There is a single core 
--> instance of
--> ISIS. RB2 may reach RB3 through RB1.
--> 
--> The TRILL equivalent topology is:
--> 
--> +-----+        +-----+          +-----+
--> | RB2 |--------| RB1 |----------| RB3 |
--> +-----+        +-----+          +-----+
--> 
--> b) another possible answer: "we have two CREDs". One is 
--> composed by RB2
--> and RB1, the other by RB3 and RB1. RB2 may not reach RB3, 
--> since they are
--> in different CREDs.
--> 
--> The TRILL equivalent topologies are:
--> 
--> +-----+        +-----+
--> | RB2 |--------| RB1 |
--> +-----+        +-----+
--> 
--> +-----+          +-----+
--> | RB1 |----------| RB3 |
--> +-----+          +-----+
--> 
--> I like a) and I hope we are in agreement that the right 
--> answer is a),
--> but I haven't seen it explained in any of the documents.
--> 
--> -- Silvano
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Wed, 15 Nov 2006 16:32:14 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "J. R. Rivers" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 5713

While agreeing with some of the arguments, I see far from ideal for 
scalability that RBridges advertise host lists with a number of host L2 
addresses impossible to consolidate.
Looking for some hierarchy and structure in L2 addresses, although not 
easy at first glance, may provide long term benefits in scalability.
Guillermo

J. R. Rivers escribi?:
> I've worked on such systems, and while the address summarization creates a degree of scale, you generally find that the fixed association between endnode and switch is very restricting and limiting.  
> 
> This is one of the reasons that I find TRILL very clean... the relationship between an endnode and an rbridge is that of convenience, not requirement.
> 
> I can build multi-homed networks... assuming that an edge rbridge can maintain multiple endhost->rbridge associations without changing the forwarding constructs of the rbridge "core".  This occurs because each edge rbridge advertises reachability to the host.
> 
> I can redirect frames through an rbridge network without changing the underlying L2 constructs (as required by many IDS/crypto protocols).  Then I can forward them to their intended destinations.
> 
> All of these require support from coordinating edge rbridges... the endhosts, other edge rbridges, and core rbridges are blissfully unaware of these goings on.
> 
> All this comes from partitioning the system into a simple, fast, cheap HW forwarding plane and a fully SW managed control plane.
> 
> JR
> 
> 
> 
>> -----Original Message-----
>> From: Guillermo Ib??ez [mailto:[email-masked]] 
>> Sent: Tuesday, November 14, 2006 2:37 AM
>> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
>> Cc: [email-masked]
>> Subject: Re: [rbridge] Should we optimize the common case?
>>
>> I think there is a misunderstanding.  This is IMHO a 
>> practical alternative:
>> -An RBridge port is connected to a  "link" and receives frames from 
>> multiple hosts:  The RBridge builds an internal translation table of  
>> global MACs to hierarchical MACs (HMACs) assigned by him and replaces 
>> global MAC by hierarchical MAC in the original frame.
>> -These hierarchical MAC addresses for hosts contain the RBridge 
>> Nickname, so it becomes *part* of the complete host address 
>> transmitted 
>> as "original" frame.  So these addresses should contain 
>> RBridge Nickname 
>> with host nickname appended (internal grouping of host nicknames per 
>> RBridge port ID would also help). To be defined.
>> - Hierarchical MAC MAY also be used in the ARP response packets (when 
>> RBridge acts as proxy ARP or by interception of the host response 
>> packet), so the requester obtains the hierarchical MAC 
>> address instead 
>> of the global one and uses it for all transactions.
>> - The hosts with hierarchical MAC addresses do not need being 
>> announced 
>> by the RBridges in their host lists, because their DR RBridge 
>> nickname  
>> is included in the hierarchical MAC address of host in the "original" 
>> (now altered with HMAC) frame.
>> - Frames with inner hierarchical destination address need 
>> only to read 
>> the destination RBridge Nickname to obtain the egrees RBridge 
>> (no need 
>> to look host-RBridge table). The host list mechanism is not used by  
>> hosts whose RBridge handles them with hierarchical addressing. 
>> Both types, global and local hierarchical addresses may 
>> coexist. Local 
>> hierarchical save processing and enhance scalability.
>> Hope this clarifies.
>> Guillermo
>>
>> PD.
>> Other issues
>> -DHCP-like mechanism
>> Hierarchical MACs can be assigned with DHCP like mechanism to 
>> hosts, but 
>> IMHO this has impact on end nodes, so it can not be the standard 
>> mechanism, only an option.
>> - Generic hierarchical MAC addresses and masks (ref. Dr. 
>> Morales slide)
>> I proposed the generic addressing format  that includes hierarchical 
>> masks looking for a generic addressing space, that could be useful to 
>> scale further RBridges in the future. I understand that at 
>> this stage of 
>> definition of RBridges to look for a fully generic format could be 
>> disruptive. However, the need for a generic hierarchical addressing 
>> space in Ethernet is growing.
>>  
>>
>>
>>
>> Caitlin Bestler escribi?:
>>> Radia Perlman wrote:
>>>   
>>>> Not sure I've been following this, but let me conjecture what
>>>> people are suggesting, and if I'm right about the suggestion,
>>>> I think it's a good idea. Correct me if it's not what people are
>>>> saying. 
>>>>
>>>> So I think what they are saying is the following:
>>>> a) there are cases where an RBridge has a block of addresses
>>>> (like DHCP) that it hands out to endnodes
>>>> b) in that case, it would be nice if the RBridge can
>>>> announce, in its LSP, the whole range of addresses, rather
>>>> than reporting each individually
>>>> c) the change would be an ability to express a range in the
>>>> endnode announcement. This seems easy, but I think it would
>>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be 
>> individual
>>>> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
>>>> (low, increment), as in "starting with address X,
>>>> 32 addresses" (which would take up a bit less space than two MAC
>>>> addresses. 
>>>>
>>>> I don't think of this as a hierarchical address---I just
>>>> think of it as a range of addresses reachable from one RBridge.
>>>>
>>>>     
>>> Reduction in the total number of reports required to support N
>>> addresses is probably the only benefit of "hierarchical addresses"
>>> that we can achieve if we are going to support global-scope MAC
>>> addresses as well. Which I'm certain everyone agrees is a given.
>>>
>>>   
> 

Content-class: urn:content-classes:message
Date: Tue, 14 Nov 2006 17:10:48 -0800
From: "Silvano Gai" <[email-masked]>
To: <[email-masked]>
Subject: [rbridge] IVLANs vs OVLANs
Status: RO
Content-Length: 2800

During the last WG meeting I had an action item to send an email on the
VLAN issue. Here it is.

In a previous email I introduced the concept of IVLAN and OVLAN.

IVLAN refers to the VLAN present on the untagged frames, which must be
propagated by ISIS, VLAN pruning must be performed and so on. All the
IVLANs share the same core instance of ISIS.

OVLAN refers to the fact that the traffic between two RBridges can be
encapsulated into a VLAN.

If we look to the format of a TRILL encapsulated frame the position of
these two fields is as follow:

+--------------------------------+
|               DA               |
+----------------+---------------+
|       DA       |     SA        |
+----------------+---------------+
|               SA               |
+--------------------------------+
|    ET = 1Q     |   OVLAN ...   |
+--------------------------------+
|    ET = TRILL  | RES  |  TTL   |
+--------------------------------+
| Egress Add.    | Ingress Add.  |
+--------------------------------+
|               DA               |
+----------------+---------------+
|       DA       |     SA        |
+----------------+---------------+
|               SA               |
+--------------------------------+
|    ET = 1Q     |   IVLAN ...   |
+--------------------------------+
|             Payload            |

Now let's consider the following topology:

               +-----+
               | RB1 |
               +-----+
                  |
                  | 1,2
                  |
+-----+   1    +-----+    2     +-----+
| RB2 |--------| SW1 |----------| RB3 |
+-----+        +-----+          +-----+

RB1, RB2, RB3 are Rbridges, SW1 is a classical Ethernet switch.
The link between RB2 and SW1 is in OVLAN 1, the link between SW1 and RB3
is in OVLAN 2 and the links between SW1 and RB1 is a trunk and it
carries both OVLAN 1 and 2.

Now my question is: "do we have one CRED or two?"

a) possible answer: "we have one CRED". RB2 is adjacent to RB1 but not
to RB3. The same applies to RB3 that is adjacent to RB1, but not RB2.
RB1 is adjacent to both RB2 and RB3. There is a single core instance of
ISIS. RB2 may reach RB3 through RB1.

The TRILL equivalent topology is:

+-----+        +-----+          +-----+
| RB2 |--------| RB1 |----------| RB3 |
+-----+        +-----+          +-----+

b) another possible answer: "we have two CREDs". One is composed by RB2
and RB1, the other by RB3 and RB1. RB2 may not reach RB3, since they are
in different CREDs.

The TRILL equivalent topologies are:

+-----+        +-----+
| RB2 |--------| RB1 |
+-----+        +-----+

+-----+          +-----+
| RB1 |----------| RB3 |
+-----+          +-----+

I like a) and I hope we are in agreement that the right answer is a),
but I haven't seen it explained in any of the documents.

-- Silvano

Content-class: urn:content-classes:message
Date: Tue, 14 Nov 2006 16:35:24 -0800
From: "Silvano Gai" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 6790

Radia,

May I propose:

c) Your b) proposal plus the option that on point-to-point link we can use a well know destination MAC address, i.e. RBridge-Next-Hop. 

This allows building a simplified HW that works only on point-to-point links and that does not keep a next hop adjacency table.

-- Silvano

> -----Original Message-----
> From: Radia Perlman [mailto:[email-masked]]
> Sent: Tuesday, November 14, 2006 6:59 AM
> To: Guillermo Ib??ez
> Cc: Caitlin Bestler; J. R. Rivers; Silvano Gai; [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> The first RBridge has to recognize a true MAC address, so we can't
> reassign endnodes hierarchical
> addresses. I think trying to see nickname | nexthop as a hierarchical
> address is just confusing, especially
> since the "hierarchical address" will change at every hop. With the
> LIDs, it's sort of like a hierarchical
> address, but not really, since lots of endnodes (all the ones on the
> same link) will share the same "hierarchical
> address". But with Sanjay's proposal of folding "egress nickname" and
> "next hop nickname" into the
> destination address of the hop-by-hop header, this is *not* a
> hierarchical address of the destination endnode.
> And besides, this doesn't change the technical proposal, so trying to
> think of it that way is, I think, a digression.
> 
> The real question I think is between two proposals, with variants:
> 
> a) have 2 byte + Ethernet header: by folding next hop and egress
> nickname into "destination MAC" and
> transmitting RBridge and ingress RBridge nickname into "source MAC",
> with TTL as the only thing left over,
> with possible variant being folding TTL into the source and destination
> MACs as well.
> 
> b) have 6 byte + Ethernet header; putting ingress and egress RBridge
> nicknames and TTL into the 6 bytes;
> with possible variant being a variable length shim to add things like
> LIDs.
> 
> I'd prefer b) with fixed length at 6 bytes. My second choice is a) with
> the 2 byte addition for TTL, since
> I think also folding TTL into the MACs will be even more confusing.
> 
> Radia
> 
> 
> 
> I do think we should allow advertisement of MAC address ranges in IS-IS
> endnode reports, because
> in some cases this will make smaller tables.
> 
> I'd prefer the "true" hop by hop header, where next hop and this hop is
> used as the MAC addresses,
> and a shim header with 6 bytes, partially because it is simpler to
> understand, and will be perceived as
> pretty straightforward compared with what routers do; i.e., take a piece
> of information, put an end-to
> end header (e.g., IP header, but in our case the shim with
> ingress/egress RBridge and
> TTL) on the information, and then hop by hop put a link-specific header
> on (e.g.,
> an Ethernet header).
> 
> Radia
> 
> 
> 
> Guillermo Ib??ez wrote:
> 
> > I think there is a misunderstanding.  This is IMHO a practical
> > alternative:
> > -An RBridge port is connected to a  "link" and receives frames from
> > multiple hosts:  The RBridge builds an internal translation table of
> > global MACs to hierarchical MACs (HMACs) assigned by him and replaces
> > global MAC by hierarchical MAC in the original frame.
> > -These hierarchical MAC addresses for hosts contain the RBridge
> > Nickname, so it becomes *part* of the complete host address
> > transmitted as "original" frame.  So these addresses should contain
> > RBridge Nickname with host nickname appended (internal grouping of
> > host nicknames per RBridge port ID would also help). To be defined.
> > - Hierarchical MAC MAY also be used in the ARP response packets (when
> > RBridge acts as proxy ARP or by interception of the host response
> > packet), so the requester obtains the hierarchical MAC address instead
> > of the global one and uses it for all transactions.
> > - The hosts with hierarchical MAC addresses do not need being
> > announced by the RBridges in their host lists, because their DR
> > RBridge nickname  is included in the hierarchical MAC address of host
> > in the "original" (now altered with HMAC) frame.
> > - Frames with inner hierarchical destination address need only to read
> > the destination RBridge Nickname to obtain the egrees RBridge (no need
> > to look host-RBridge table). The host list mechanism is not used by
> > hosts whose RBridge handles them with hierarchical addressing. Both
> > types, global and local hierarchical addresses may coexist. Local
> > hierarchical save processing and enhance scalability.
> > Hope this clarifies.
> > Guillermo
> >
> > PD.
> > Other issues
> > -DHCP-like mechanism
> > Hierarchical MACs can be assigned with DHCP like mechanism to hosts,
> > but IMHO this has impact on end nodes, so it can not be the standard
> > mechanism, only an option.
> > - Generic hierarchical MAC addresses and masks (ref. Dr. Morales slide)
> > I proposed the generic addressing format  that includes hierarchical
> > masks looking for a generic addressing space, that could be useful to
> > scale further RBridges in the future. I understand that at this stage
> > of definition of RBridges to look for a fully generic format could be
> > disruptive. However, the need for a generic hierarchical addressing
> > space in Ethernet is growing.
> >
> >
> >
> >
> > Caitlin Bestler escribi?:
> >
> >> Radia Perlman wrote:
> >>
> >>
> >>> Not sure I've been following this, but let me conjecture what
> >>> people are suggesting, and if I'm right about the suggestion,
> >>> I think it's a good idea. Correct me if it's not what people are
> >>> saying.
> >>> So I think what they are saying is the following:
> >>> a) there are cases where an RBridge has a block of addresses
> >>> (like DHCP) that it hands out to endnodes
> >>> b) in that case, it would be nice if the RBridge can
> >>> announce, in its LSP, the whole range of addresses, rather
> >>> than reporting each individually
> >>> c) the change would be an ability to express a range in the
> >>> endnode announcement. This seems easy, but I think it would
> >>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be individual
> >>> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
> >>> (low, increment), as in "starting with address X,
> >>> 32 addresses" (which would take up a bit less space than two MAC
> >>> addresses.
> >>> I don't think of this as a hierarchical address---I just
> >>> think of it as a range of addresses reachable from one RBridge.
> >>>
> >>>
> >>
> >>
> >> Reduction in the total number of reports required to support N
> >> addresses is probably the only benefit of "hierarchical addresses"
> >> that we can achieve if we are going to support global-scope MAC
> >> addresses as well. Which I'm certain everyone agrees is a given.
> >>
> >>
> >

Date: Tue, 14 Nov 2006 09:21:45 -0800
From: Joe Touch <[email-masked]>
To: Caitlin Bestler <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1680

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigE8E50D294611FF31D5B07DE8
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Caitlin Bestler wrote:
> Guillermo Ib=E1=F1ez wrote:
>> Two comments.
>> Guillermo
>>
>> Radia Perlman escribi=F3:
>>> The first RBridge has to recognize a true MAC address,
>> The first RBridge recognizes a true MAC adress and replaces
>> in the encapsulated frame with the hierarchical address (MAC
>> swapping).
>=20
> I think you are suggesting that the RBRidge act as proxy ARP
> so that all remote traffic thinks that the local MAC address
> is *the* MAC address, complete with translation of MAC addresses
> on the fly.

That's now a router. IMO, it should act more like a bridge - it might
use MAC address wrappers to direct ingressed packets to the egress
rbridge, but should NOT affect the ARP table of hosts outside the rbridge=
=2E

Removal of the rbridge should ONLY cause reconfiguration of the spanning
tree in the remaining ethernet segments, NOT cause communication failure
due to incorrect ARP entries (i.e., that would destroy "unplug-and-play")=
=2E

Joe

--------------enigE8E50D294611FF31D5B07DE8
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enigE8E50D294611FF31D5B07DE8--

Date: Tue, 14 Nov 2006 17:52:55 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Caitlin Bestler <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1185

You are likely right (DHCP and IPv6 defaul). But it is probably
worth to think a moment how to circunvent it before rejecting the 
approach, given the advantages involved.
Hierarchical addresses are an option to global standard host list 
mechanism, they could be enabled and disabled per RBridge.
Guillermo

Caitlin Bestler escribi?:
> Guillermo Ib??ez wrote:
>   
>> Two comments.
>> Guillermo
>>
>> Radia Perlman escribi?:
>>     
>>> The first RBridge has to recognize a true MAC address,
>>>       
>> The first RBridge recognizes a true MAC adress and replaces
>> in the encapsulated frame with the hierarchical address (MAC
>> swapping).
>>     
>
> I think you are suggesting that the RBRidge act as proxy ARP
> so that all remote traffic thinks that the local MAC address
> is *the* MAC address, complete with translation of MAC addresses
> on the fly.
>
> There are some cool possibilities there, but unfortunately I
> do not think such a solution is universally viable. For a local
> connection applications may attach actual meaning to the MAC
> address. Some immediate examples that come to mind include
> DHCP servers and the generation of default IPv6 addresses.
>
>   

Content-class: urn:content-classes:message
Date: Tue, 14 Nov 2006 08:51:13 -0800
From: "J. R. Rivers" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Caitlin Bestler" <[email-masked]>, "Radia Perlman" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 5273

I've worked on such systems, and while the address summarization creates a degree of scale, you generally find that the fixed association between endnode and switch is very restricting and limiting.  

This is one of the reasons that I find TRILL very clean... the relationship between an endnode and an rbridge is that of convenience, not requirement.

I can build multi-homed networks... assuming that an edge rbridge can maintain multiple endhost->rbridge associations without changing the forwarding constructs of the rbridge "core".  This occurs because each edge rbridge advertises reachability to the host.

I can redirect frames through an rbridge network without changing the underlying L2 constructs (as required by many IDS/crypto protocols).  Then I can forward them to their intended destinations.

All of these require support from coordinating edge rbridges... the endhosts, other edge rbridges, and core rbridges are blissfully unaware of these goings on.

All this comes from partitioning the system into a simple, fast, cheap HW forwarding plane and a fully SW managed control plane.

JR

> -----Original Message-----
> From: Guillermo Ib??ez [mailto:[email-masked]] 
> Sent: Tuesday, November 14, 2006 2:37 AM
> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
> Cc: [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> I think there is a misunderstanding.  This is IMHO a 
> practical alternative:
> -An RBridge port is connected to a  "link" and receives frames from 
> multiple hosts:  The RBridge builds an internal translation table of  
> global MACs to hierarchical MACs (HMACs) assigned by him and replaces 
> global MAC by hierarchical MAC in the original frame.
> -These hierarchical MAC addresses for hosts contain the RBridge 
> Nickname, so it becomes *part* of the complete host address 
> transmitted 
> as "original" frame.  So these addresses should contain 
> RBridge Nickname 
> with host nickname appended (internal grouping of host nicknames per 
> RBridge port ID would also help). To be defined.
> - Hierarchical MAC MAY also be used in the ARP response packets (when 
> RBridge acts as proxy ARP or by interception of the host response 
> packet), so the requester obtains the hierarchical MAC 
> address instead 
> of the global one and uses it for all transactions.
> - The hosts with hierarchical MAC addresses do not need being 
> announced 
> by the RBridges in their host lists, because their DR RBridge 
> nickname  
> is included in the hierarchical MAC address of host in the "original" 
> (now altered with HMAC) frame.
> - Frames with inner hierarchical destination address need 
> only to read 
> the destination RBridge Nickname to obtain the egrees RBridge 
> (no need 
> to look host-RBridge table). The host list mechanism is not used by  
> hosts whose RBridge handles them with hierarchical addressing. 
> Both types, global and local hierarchical addresses may 
> coexist. Local 
> hierarchical save processing and enhance scalability.
> Hope this clarifies.
> Guillermo
> 
> PD.
> Other issues
> -DHCP-like mechanism
> Hierarchical MACs can be assigned with DHCP like mechanism to 
> hosts, but 
> IMHO this has impact on end nodes, so it can not be the standard 
> mechanism, only an option.
> - Generic hierarchical MAC addresses and masks (ref. Dr. 
> Morales slide)
> I proposed the generic addressing format  that includes hierarchical 
> masks looking for a generic addressing space, that could be useful to 
> scale further RBridges in the future. I understand that at 
> this stage of 
> definition of RBridges to look for a fully generic format could be 
> disruptive. However, the need for a generic hierarchical addressing 
> space in Ethernet is growing.
>  
> 
> 
> 
> Caitlin Bestler escribi?:
> > Radia Perlman wrote:
> >   
> >> Not sure I've been following this, but let me conjecture what
> >> people are suggesting, and if I'm right about the suggestion,
> >> I think it's a good idea. Correct me if it's not what people are
> >> saying. 
> >>
> >> So I think what they are saying is the following:
> >> a) there are cases where an RBridge has a block of addresses
> >> (like DHCP) that it hands out to endnodes
> >> b) in that case, it would be nice if the RBridge can
> >> announce, in its LSP, the whole range of addresses, rather
> >> than reporting each individually
> >> c) the change would be an ability to express a range in the
> >> endnode announcement. This seems easy, but I think it would
> >> be best done with a 2nd TLV in IS-IS. The 1st TLV would be 
> individual
> >> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
> >> (low, increment), as in "starting with address X,
> >> 32 addresses" (which would take up a bit less space than two MAC
> >> addresses. 
> >>
> >> I don't think of this as a hierarchical address---I just
> >> think of it as a range of addresses reachable from one RBridge.
> >>
> >>     
> >
> > Reduction in the total number of reports required to support N
> > addresses is probably the only benefit of "hierarchical addresses"
> > that we can achieve if we are going to support global-scope MAC
> > addresses as well. Which I'm certain everyone agrees is a given.
> >
> >   
> 

Content-class: urn:content-classes:message
Date: Tue, 14 Nov 2006 08:34:03 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "=?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?=" <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 784

Guillermo Ib??ez wrote:
> Two comments.
> Guillermo
> 
> Radia Perlman escribi?:
>> The first RBridge has to recognize a true MAC address,
> The first RBridge recognizes a true MAC adress and replaces
> in the encapsulated frame with the hierarchical address (MAC
> swapping).

I think you are suggesting that the RBRidge act as proxy ARP
so that all remote traffic thinks that the local MAC address
is *the* MAC address, complete with translation of MAC addresses
on the fly.

There are some cool possibilities there, but unfortunately I
do not think such a solution is universally viable. For a local
connection applications may attach actual meaning to the MAC
address. Some immediate examples that come to mind include
DHCP servers and the generation of default IPv6 addresses.

Date: Tue, 14 Nov 2006 17:28:27 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Radia Perlman <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Hierarchical addresses
Status: RO
Content-Length: 1540

Further clarifications
Guillermo

Radia Perlman escribi?:
> Ah. I think I misunderstood a bit the intent of the hierarchical 
> addresses in my previous
> message. I think the suggestion was for
> "endnodes" that don't have a fixed MAC address, so nobody would ever 
> learn
> their true MAC address. This was not an attempt to assign hierarchical 
> MAC addresses to
> all the endnodes, which I assumed.
> But even so, you want the perceived MAC address never
> to change once assigned, and the RBridge nickname might change, 
> creating confusion.
>
The RBridge nickname will change when the DR changes due to the previous 
DR being unavailable or not being root bridge anymore.
> We will achieve some scalability by announcing ranges of MAC addresses 
> (perhaps even from the local space)
> that an RBridge with virtual attached endnodes can assign. If the 
> block of MAC addresses is configured, then
> it's the "customer's fault" if the addresses are not unique within the 
> campus. Perhaps to avoid misconfiguration,
> RBridges can announce the block of MAC addresses they are going to 
> assign to virtual attached endnodes.
The hierarchical MAC shall contain the DR RBridge nickname plus host 
identifier. If the RBridge nickname is unique within the campus, so will 
be the hierarchical MAC addresses.
I am not in favour of "ranges", but of hierarchy.
> This can either be for just noticing misconfiguration, or can be a 
> negotiation -- choosing a different block if
> it conflicts with someone else.
>
> Radia
>
>
>>>  
>>
>

Content-class: urn:content-classes:message
Date: Tue, 14 Nov 2006 08:22:58 -0800
From: "J. R. Rivers" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Caitlin Bestler" <[email-masked]>, "Radia Perlman" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 4245

Are you suggesting address translation in the context of a layer 2 network?

JR

> -----Original Message-----
> From: Guillermo Ib??ez [mailto:[email-masked]] 
> Sent: Tuesday, November 14, 2006 2:37 AM
> To: Caitlin Bestler; Radia Perlman; J. R. Rivers; Silvano Gai
> Cc: [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> I think there is a misunderstanding.  This is IMHO a 
> practical alternative:
> -An RBridge port is connected to a  "link" and receives frames from 
> multiple hosts:  The RBridge builds an internal translation table of  
> global MACs to hierarchical MACs (HMACs) assigned by him and replaces 
> global MAC by hierarchical MAC in the original frame.
> -These hierarchical MAC addresses for hosts contain the RBridge 
> Nickname, so it becomes *part* of the complete host address 
> transmitted 
> as "original" frame.  So these addresses should contain 
> RBridge Nickname 
> with host nickname appended (internal grouping of host nicknames per 
> RBridge port ID would also help). To be defined.
> - Hierarchical MAC MAY also be used in the ARP response packets (when 
> RBridge acts as proxy ARP or by interception of the host response 
> packet), so the requester obtains the hierarchical MAC 
> address instead 
> of the global one and uses it for all transactions.
> - The hosts with hierarchical MAC addresses do not need being 
> announced 
> by the RBridges in their host lists, because their DR RBridge 
> nickname  
> is included in the hierarchical MAC address of host in the "original" 
> (now altered with HMAC) frame.
> - Frames with inner hierarchical destination address need 
> only to read 
> the destination RBridge Nickname to obtain the egrees RBridge 
> (no need 
> to look host-RBridge table). The host list mechanism is not used by  
> hosts whose RBridge handles them with hierarchical addressing. 
> Both types, global and local hierarchical addresses may 
> coexist. Local 
> hierarchical save processing and enhance scalability.
> Hope this clarifies.
> Guillermo
> 
> PD.
> Other issues
> -DHCP-like mechanism
> Hierarchical MACs can be assigned with DHCP like mechanism to 
> hosts, but 
> IMHO this has impact on end nodes, so it can not be the standard 
> mechanism, only an option.
> - Generic hierarchical MAC addresses and masks (ref. Dr. 
> Morales slide)
> I proposed the generic addressing format  that includes hierarchical 
> masks looking for a generic addressing space, that could be useful to 
> scale further RBridges in the future. I understand that at 
> this stage of 
> definition of RBridges to look for a fully generic format could be 
> disruptive. However, the need for a generic hierarchical addressing 
> space in Ethernet is growing.
>  
> 
> 
> 
> Caitlin Bestler escribi?:
> > Radia Perlman wrote:
> >   
> >> Not sure I've been following this, but let me conjecture what
> >> people are suggesting, and if I'm right about the suggestion,
> >> I think it's a good idea. Correct me if it's not what people are
> >> saying. 
> >>
> >> So I think what they are saying is the following:
> >> a) there are cases where an RBridge has a block of addresses
> >> (like DHCP) that it hands out to endnodes
> >> b) in that case, it would be nice if the RBridge can
> >> announce, in its LSP, the whole range of addresses, rather
> >> than reporting each individually
> >> c) the change would be an ability to express a range in the
> >> endnode announcement. This seems easy, but I think it would
> >> be best done with a 2nd TLV in IS-IS. The 1st TLV would be 
> individual
> >> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
> >> (low, increment), as in "starting with address X,
> >> 32 addresses" (which would take up a bit less space than two MAC
> >> addresses. 
> >>
> >> I don't think of this as a hierarchical address---I just
> >> think of it as a range of addresses reachable from one RBridge.
> >>
> >>     
> >
> > Reduction in the total number of reports required to support N
> > addresses is probably the only benefit of "hierarchical addresses"
> > that we can achieve if we are going to support global-scope MAC
> > addresses as well. Which I'm certain everyone agrees is a given.
> >
> >   
> 

Date: Tue, 14 Nov 2006 07:28:56 -0800
From: Radia Perlman <[email-masked]>
To: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, [email-masked]
Subject: [rbridge] Hierarchical addresses
Status: RO
Content-Length: 1070

Ah. I think I misunderstood a bit the intent of the hierarchical 
addresses in my previous
message. I think the suggestion was for
"endnodes" that don't have a fixed MAC address, so nobody would ever learn
their true MAC address. This was not an attempt to assign hierarchical 
MAC addresses to
all the endnodes, which I assumed.
But even so, you want the perceived MAC address never
to change once assigned, and the RBridge nickname might change, creating 
confusion.

We will achieve some scalability by announcing ranges of MAC addresses 
(perhaps even from the local space)
that an RBridge with virtual attached endnodes can assign. If the block 
of MAC addresses is configured, then
it's the "customer's fault" if the addresses are not unique within the 
campus. Perhaps to avoid misconfiguration,
RBridges can announce the block of MAC addresses they are going to 
assign to virtual attached endnodes.
This can either be for just noticing misconfiguration, or can be a 
negotiation -- choosing a different block if
it conflicts with someone else.

Radia

Content-class: urn:content-classes:message
Date: Tue, 14 Nov 2006 07:25:03 -0800
From: "J. R. Rivers" <[email-masked]>
To: "Caitlin Bestler" <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1693

I agree here. 

> -----Original Message-----
> From: Caitlin Bestler [mailto:[email-masked]] 
> Sent: Monday, November 13, 2006 6:14 PM
> To: Radia Perlman; J. R. Rivers
> Cc: Silvano Gai; Guillermo Ib??ez; [email-masked]
> Subject: RE: [rbridge] Should we optimize the common case?
> 
> Radia Perlman wrote:
> > Not sure I've been following this, but let me conjecture what
> > people are suggesting, and if I'm right about the suggestion,
> > I think it's a good idea. Correct me if it's not what people are
> > saying. 
> > 
> > So I think what they are saying is the following:
> > a) there are cases where an RBridge has a block of addresses
> > (like DHCP) that it hands out to endnodes
> > b) in that case, it would be nice if the RBridge can
> > announce, in its LSP, the whole range of addresses, rather
> > than reporting each individually
> > c) the change would be an ability to express a range in the
> > endnode announcement. This seems easy, but I think it would
> > be best done with a 2nd TLV in IS-IS. The 1st TLV would be 
> individual
> > addresses. The 2nd TLV would be pairs of addresses (low, high). Or
> > (low, increment), as in "starting with address X,
> > 32 addresses" (which would take up a bit less space than two MAC
> > addresses. 
> > 
> > I don't think of this as a hierarchical address---I just
> > think of it as a range of addresses reachable from one RBridge.
> > 
> 
> Reduction in the total number of reports required to support N
> addresses is probably the only benefit of "hierarchical addresses"
> that we can achieve if we are going to support global-scope MAC
> addresses as well. Which I'm certain everyone agrees is a given.
> 
> 

Date: Tue, 14 Nov 2006 16:16:43 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Radia Perlman <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 6481

Two comments.
Guillermo

Radia Perlman escribi?:
> The first RBridge has to recognize a true MAC address, 
The first RBridge recognizes a true MAC adress and replaces in the 
encapsulated frame with the hierarchical address (MAC swapping).
> so we can't reassign endnodes hierarchical
> addresses. I think trying to see nickname | nexthop as a hierarchical 
> address is just confusing, especially
> since the "hierarchical address" will change at every hop.
The hierarchical address consists of DR RBridge nickname plus host 
nickname (assigned by DR), so it does not change at every hop.
> With the LIDs, it's sort of like a hierarchical
> address, but not really, since lots of endnodes (all the ones on the 
> same link) will share the same "hierarchical
> address". But with Sanjay's proposal of folding "egress nickname" and 
> "next hop nickname" into the
> destination address of the hop-by-hop header, this is *not* a 
> hierarchical address of the destination endnode.
> And besides, this doesn't change the technical proposal, so trying to 
> think of it that way is, I think, a digression.
>
> The real question I think is between two proposals, with variants:
>
> a) have 2 byte + Ethernet header: by folding next hop and egress 
> nickname into "destination MAC" and
> transmitting RBridge and ingress RBridge nickname into "source MAC", 
> with TTL as the only thing left over,
> with possible variant being folding TTL into the source and 
> destination MACs as well.
>
> b) have 6 byte + Ethernet header; putting ingress and egress RBridge 
> nicknames and TTL into the 6 bytes;
> with possible variant being a variable length shim to add things like 
> LIDs.
>
> I'd prefer b) with fixed length at 6 bytes. My second choice is a) 
> with the 2 byte addition for TTL, since
> I think also folding TTL into the MACs will be even more confusing.
>
> Radia
>
>
>
> I do think we should allow advertisement of MAC address ranges in 
> IS-IS endnode reports, because
> in some cases this will make smaller tables.
>
> I'd prefer the "true" hop by hop header, where next hop and this hop 
> is used as the MAC addresses,
> and a shim header with 6 bytes, partially because it is simpler to 
> understand, and will be perceived as
> pretty straightforward compared with what routers do; i.e., take a 
> piece of information, put an end-to
> end header (e.g., IP header, but in our case the shim with 
> ingress/egress RBridge and
> TTL) on the information, and then hop by hop put a link-specific 
> header on (e.g.,
> an Ethernet header).
>
> Radia
>
>
>
> Guillermo Ib??ez wrote:
>
>> I think there is a misunderstanding.  This is IMHO a practical 
>> alternative:
>> -An RBridge port is connected to a  "link" and receives frames from 
>> multiple hosts:  The RBridge builds an internal translation table of  
>> global MACs to hierarchical MACs (HMACs) assigned by him and replaces 
>> global MAC by hierarchical MAC in the original frame.
>> -These hierarchical MAC addresses for hosts contain the RBridge 
>> Nickname, so it becomes *part* of the complete host address 
>> transmitted as "original" frame.  So these addresses should contain 
>> RBridge Nickname with host nickname appended (internal grouping of 
>> host nicknames per RBridge port ID would also help). To be defined.
>> - Hierarchical MAC MAY also be used in the ARP response packets (when 
>> RBridge acts as proxy ARP or by interception of the host response 
>> packet), so the requester obtains the hierarchical MAC address 
>> instead of the global one and uses it for all transactions.
>> - The hosts with hierarchical MAC addresses do not need being 
>> announced by the RBridges in their host lists, because their DR 
>> RBridge nickname  is included in the hierarchical MAC address of host 
>> in the "original" (now altered with HMAC) frame.
>> - Frames with inner hierarchical destination address need only to 
>> read the destination RBridge Nickname to obtain the egrees RBridge 
>> (no need to look host-RBridge table). The host list mechanism is not 
>> used by  hosts whose RBridge handles them with hierarchical 
>> addressing. Both types, global and local hierarchical addresses may 
>> coexist. Local hierarchical save processing and enhance scalability.
>> Hope this clarifies.
>> Guillermo
>>
>> PD.
>> Other issues
>> -DHCP-like mechanism
>> Hierarchical MACs can be assigned with DHCP like mechanism to hosts, 
>> but IMHO this has impact on end nodes, so it can not be the standard 
>> mechanism, only an option.
>> - Generic hierarchical MAC addresses and masks (ref. Dr. Morales slide)
>> I proposed the generic addressing format  that includes hierarchical 
>> masks looking for a generic addressing space, that could be useful to 
>> scale further RBridges in the future. I understand that at this stage 
>> of definition of RBridges to look for a fully generic format could be 
>> disruptive. However, the need for a generic hierarchical addressing 
>> space in Ethernet is growing.
>>
>>
>>
>>
>> Caitlin Bestler escribi?:
>>
>>> Radia Perlman wrote:
>>>  
>>>
>>>> Not sure I've been following this, but let me conjecture what
>>>> people are suggesting, and if I'm right about the suggestion,
>>>> I think it's a good idea. Correct me if it's not what people are
>>>> saying.
>>>> So I think what they are saying is the following:
>>>> a) there are cases where an RBridge has a block of addresses
>>>> (like DHCP) that it hands out to endnodes
>>>> b) in that case, it would be nice if the RBridge can
>>>> announce, in its LSP, the whole range of addresses, rather
>>>> than reporting each individually
>>>> c) the change would be an ability to express a range in the
>>>> endnode announcement. This seems easy, but I think it would
>>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be individual
>>>> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
>>>> (low, increment), as in "starting with address X,
>>>> 32 addresses" (which would take up a bit less space than two MAC
>>>> addresses.
>>>> I don't think of this as a hierarchical address---I just
>>>> think of it as a range of addresses reachable from one RBridge.
>>>>
>>>>     
>>>
>>>
>>> Reduction in the total number of reports required to support N
>>> addresses is probably the only benefit of "hierarchical addresses"
>>> that we can achieve if we are going to support global-scope MAC
>>> addresses as well. Which I'm certain everyone agrees is a given.
>>>
>>>   
>>
>

Date: Tue, 14 Nov 2006 06:59:17 -0800
From: Radia Perlman <[email-masked]>
To: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 5983

The first RBridge has to recognize a true MAC address, so we can't 
reassign endnodes hierarchical
addresses. I think trying to see nickname | nexthop as a hierarchical 
address is just confusing, especially
since the "hierarchical address" will change at every hop. With the 
LIDs, it's sort of like a hierarchical
address, but not really, since lots of endnodes (all the ones on the 
same link) will share the same "hierarchical
address". But with Sanjay's proposal of folding "egress nickname" and 
"next hop nickname" into the
destination address of the hop-by-hop header, this is *not* a 
hierarchical address of the destination endnode.
And besides, this doesn't change the technical proposal, so trying to 
think of it that way is, I think, a digression.

The real question I think is between two proposals, with variants:

a) have 2 byte + Ethernet header: by folding next hop and egress 
nickname into "destination MAC" and
transmitting RBridge and ingress RBridge nickname into "source MAC", 
with TTL as the only thing left over,
with possible variant being folding TTL into the source and destination 
MACs as well.

b) have 6 byte + Ethernet header; putting ingress and egress RBridge 
nicknames and TTL into the 6 bytes;
with possible variant being a variable length shim to add things like LIDs.

I'd prefer b) with fixed length at 6 bytes. My second choice is a) with 
the 2 byte addition for TTL, since
I think also folding TTL into the MACs will be even more confusing.

Radia

I do think we should allow advertisement of MAC address ranges in IS-IS 
endnode reports, because
in some cases this will make smaller tables.

I'd prefer the "true" hop by hop header, where next hop and this hop is 
used as the MAC addresses,
and a shim header with 6 bytes, partially because it is simpler to 
understand, and will be perceived as
pretty straightforward compared with what routers do; i.e., take a piece 
of information, put an end-to
end header (e.g., IP header, but in our case the shim with 
ingress/egress RBridge and
TTL) on the information, and then hop by hop put a link-specific header 
on (e.g.,
an Ethernet header).

Radia

Guillermo Ib??ez wrote:

> I think there is a misunderstanding.  This is IMHO a practical 
> alternative:
> -An RBridge port is connected to a  "link" and receives frames from 
> multiple hosts:  The RBridge builds an internal translation table of  
> global MACs to hierarchical MACs (HMACs) assigned by him and replaces 
> global MAC by hierarchical MAC in the original frame.
> -These hierarchical MAC addresses for hosts contain the RBridge 
> Nickname, so it becomes *part* of the complete host address 
> transmitted as "original" frame.  So these addresses should contain 
> RBridge Nickname with host nickname appended (internal grouping of 
> host nicknames per RBridge port ID would also help). To be defined.
> - Hierarchical MAC MAY also be used in the ARP response packets (when 
> RBridge acts as proxy ARP or by interception of the host response 
> packet), so the requester obtains the hierarchical MAC address instead 
> of the global one and uses it for all transactions.
> - The hosts with hierarchical MAC addresses do not need being 
> announced by the RBridges in their host lists, because their DR 
> RBridge nickname  is included in the hierarchical MAC address of host 
> in the "original" (now altered with HMAC) frame.
> - Frames with inner hierarchical destination address need only to read 
> the destination RBridge Nickname to obtain the egrees RBridge (no need 
> to look host-RBridge table). The host list mechanism is not used by  
> hosts whose RBridge handles them with hierarchical addressing. Both 
> types, global and local hierarchical addresses may coexist. Local 
> hierarchical save processing and enhance scalability.
> Hope this clarifies.
> Guillermo
>
> PD.
> Other issues
> -DHCP-like mechanism
> Hierarchical MACs can be assigned with DHCP like mechanism to hosts, 
> but IMHO this has impact on end nodes, so it can not be the standard 
> mechanism, only an option.
> - Generic hierarchical MAC addresses and masks (ref. Dr. Morales slide)
> I proposed the generic addressing format  that includes hierarchical 
> masks looking for a generic addressing space, that could be useful to 
> scale further RBridges in the future. I understand that at this stage 
> of definition of RBridges to look for a fully generic format could be 
> disruptive. However, the need for a generic hierarchical addressing 
> space in Ethernet is growing.
>
>
>
>
> Caitlin Bestler escribi?:
>
>> Radia Perlman wrote:
>>  
>>
>>> Not sure I've been following this, but let me conjecture what
>>> people are suggesting, and if I'm right about the suggestion,
>>> I think it's a good idea. Correct me if it's not what people are
>>> saying.
>>> So I think what they are saying is the following:
>>> a) there are cases where an RBridge has a block of addresses
>>> (like DHCP) that it hands out to endnodes
>>> b) in that case, it would be nice if the RBridge can
>>> announce, in its LSP, the whole range of addresses, rather
>>> than reporting each individually
>>> c) the change would be an ability to express a range in the
>>> endnode announcement. This seems easy, but I think it would
>>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be individual
>>> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
>>> (low, increment), as in "starting with address X,
>>> 32 addresses" (which would take up a bit less space than two MAC
>>> addresses.
>>> I don't think of this as a hierarchical address---I just
>>> think of it as a range of addresses reachable from one RBridge.
>>>
>>>     
>>
>>
>> Reduction in the total number of reports required to support N
>> addresses is probably the only benefit of "hierarchical addresses"
>> that we can achieve if we are going to support global-scope MAC
>> addresses as well. Which I'm certain everyone agrees is a given.
>>
>>   
>

Date: Tue, 14 Nov 2006 11:36:30 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Caitlin Bestler <[email-masked]>, Radia Perlman <[email-masked]>, "J. R. Rivers" <[email-masked]>, Silvano Gai <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 3687

I think there is a misunderstanding.  This is IMHO a practical alternative:
-An RBridge port is connected to a  "link" and receives frames from 
multiple hosts:  The RBridge builds an internal translation table of  
global MACs to hierarchical MACs (HMACs) assigned by him and replaces 
global MAC by hierarchical MAC in the original frame.
-These hierarchical MAC addresses for hosts contain the RBridge 
Nickname, so it becomes *part* of the complete host address transmitted 
as "original" frame.  So these addresses should contain RBridge Nickname 
with host nickname appended (internal grouping of host nicknames per 
RBridge port ID would also help). To be defined.
- Hierarchical MAC MAY also be used in the ARP response packets (when 
RBridge acts as proxy ARP or by interception of the host response 
packet), so the requester obtains the hierarchical MAC address instead 
of the global one and uses it for all transactions.
- The hosts with hierarchical MAC addresses do not need being announced 
by the RBridges in their host lists, because their DR RBridge nickname  
is included in the hierarchical MAC address of host in the "original" 
(now altered with HMAC) frame.
- Frames with inner hierarchical destination address need only to read 
the destination RBridge Nickname to obtain the egrees RBridge (no need 
to look host-RBridge table). The host list mechanism is not used by  
hosts whose RBridge handles them with hierarchical addressing. 
Both types, global and local hierarchical addresses may coexist. Local 
hierarchical save processing and enhance scalability.
Hope this clarifies.
Guillermo

PD.
Other issues
-DHCP-like mechanism
Hierarchical MACs can be assigned with DHCP like mechanism to hosts, but 
IMHO this has impact on end nodes, so it can not be the standard 
mechanism, only an option.
- Generic hierarchical MAC addresses and masks (ref. Dr. Morales slide)
I proposed the generic addressing format  that includes hierarchical 
masks looking for a generic addressing space, that could be useful to 
scale further RBridges in the future. I understand that at this stage of 
definition of RBridges to look for a fully generic format could be 
disruptive. However, the need for a generic hierarchical addressing 
space in Ethernet is growing.

Caitlin Bestler escribi?:
> Radia Perlman wrote:
>   
>> Not sure I've been following this, but let me conjecture what
>> people are suggesting, and if I'm right about the suggestion,
>> I think it's a good idea. Correct me if it's not what people are
>> saying. 
>>
>> So I think what they are saying is the following:
>> a) there are cases where an RBridge has a block of addresses
>> (like DHCP) that it hands out to endnodes
>> b) in that case, it would be nice if the RBridge can
>> announce, in its LSP, the whole range of addresses, rather
>> than reporting each individually
>> c) the change would be an ability to express a range in the
>> endnode announcement. This seems easy, but I think it would
>> be best done with a 2nd TLV in IS-IS. The 1st TLV would be individual
>> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
>> (low, increment), as in "starting with address X,
>> 32 addresses" (which would take up a bit less space than two MAC
>> addresses. 
>>
>> I don't think of this as a hierarchical address---I just
>> think of it as a range of addresses reachable from one RBridge.
>>
>>     
>
> Reduction in the total number of reports required to support N
> addresses is probably the only benefit of "hierarchical addresses"
> that we can achieve if we are going to support global-scope MAC
> addresses as well. Which I'm certain everyone agrees is a given.
>
>   

Content-class: urn:content-classes:message
Date: Mon, 13 Nov 2006 18:14:05 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, "J. R. Rivers" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1331

Radia Perlman wrote:
> Not sure I've been following this, but let me conjecture what
> people are suggesting, and if I'm right about the suggestion,
> I think it's a good idea. Correct me if it's not what people are
> saying. 
> 
> So I think what they are saying is the following:
> a) there are cases where an RBridge has a block of addresses
> (like DHCP) that it hands out to endnodes
> b) in that case, it would be nice if the RBridge can
> announce, in its LSP, the whole range of addresses, rather
> than reporting each individually
> c) the change would be an ability to express a range in the
> endnode announcement. This seems easy, but I think it would
> be best done with a 2nd TLV in IS-IS. The 1st TLV would be individual
> addresses. The 2nd TLV would be pairs of addresses (low, high). Or
> (low, increment), as in "starting with address X,
> 32 addresses" (which would take up a bit less space than two MAC
> addresses. 
> 
> I don't think of this as a hierarchical address---I just
> think of it as a range of addresses reachable from one RBridge.
> 

Reduction in the total number of reports required to support N
addresses is probably the only benefit of "hierarchical addresses"
that we can achieve if we are going to support global-scope MAC
addresses as well. Which I'm certain everyone agrees is a given.

Date: Mon, 13 Nov 2006 17:11:19 -0800
From: Radia Perlman <[email-masked]>
To: "J. R. Rivers" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 2584

Not sure I've been following this, but let me conjecture what people are 
suggesting, and if I'm right
about the suggestion, I think it's a good idea. Correct me if it's not 
what people are saying.

So I think what they are saying is the following:
a) there are cases where an RBridge has a block of addresses (like DHCP) 
that it hands out to endnodes
b) in that case, it would be nice if the RBridge can announce, in its 
LSP, the whole range of addresses,
rather than reporting each individually
c) the change would be an ability to express a range in the endnode 
announcement. This seems easy, but
I think it would be best done with a 2nd TLV in IS-IS. The 1st TLV would 
be individual addresses.
The 2nd TLV would be pairs of addresses (low, high). Or (low, 
increment), as in "starting with address X,
32 addresses" (which would take up a bit less space than two MAC addresses.

I don't think of this as a hierarchical address---I just think of it as 
a range of addresses reachable from
one RBridge.

Radia

J. R. Rivers wrote:

>Sounds like we are in agreement.
>
>JR
> 
>
>  
>
>>-----Original Message-----
>>From: Caitlin Bestler [mailto:[email-masked]] 
>>Sent: Saturday, November 11, 2006 7:20 PM
>>To: J. R. Rivers; Silvano Gai; Guillermo Ib??ez
>>Cc: [email-masked]; Radia Perlman
>>Subject: RE: [rbridge] Should we optimize the common case?
>>
>>J. R. Rivers wrote:
>>    
>>
>>>Hierarchical addresses assume that a single rbridge "owns" a
>>>station.  With the current concept of universal mac addresses
>>>with rbridge advertisement, a single station can be reached
>>>through multiple rbriges... allowing effective dual homing.
>>>
>>>I think that hierarchical station addresses require very careful
>>>thinking. 
>>>
>>>JR
>>>
>>>
>>>      
>>>
>>There are possible deployments of rbridges where the rbridge does
>>indeed "own" the end nodes, or perhaps it "owns" them in collaboration
>>with a partner rbridge. Prime examples would include an "rbridge"
>>implemented by a hypervisor and/or NIC to support multiple virtual
>>NICs, and a bridge connecting blades on a backplane with external
>>ethernet links.
>>
>>But even in these environments, the individual OSs may want to
>>configure their MAC addresses individually. So hierarchical addresses
>>would seem to be a possible enhancement, but there is no obvious
>>path to using them generally.
>>
>>As an option it would probably take the form of allowing
>>announcements of ranges of MAC addresses, rather than
>>requiring the  rbridge to announce each individually.
>>
>>
>>
>>    
>>
>
>  
>

Date: Mon, 13 Nov 2006 17:01:12 -0800
From: Radia Perlman <[email-masked]>
To: Russ White <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 2667

It's certainly simpler to only have a single nickname space, and use the 
same nickname for the
egress RBridge and the nexthop RBridge, and your own RBridge address. 
But I think 12 bits is
too small.

On the other hand, I don't think we need to stick with 24 bits---I think 
setting the local bit on the addresses
in the header should allow us to use 46 bits, which would enable 23 bits 
each for (egress, nexthop) and (ingress, me).

Or---if we had 46 bits to play with in both source and destination 
address, we could use, say, 16 bit
nicknames for RBridges, and have room left over for a TTL.

If we did a TTL, we'd want to take advantage of bridge learning. So, for 
instance, let's look at a packet from
ingress RBridge A, via link RBridge x. The bridges on the link will be 
learning A|x. If we throw in a TTL,
they would learn A|x|TTL. So therefore, we could put a TTL in both the 
source address and destination address.
The source address would be the real TTL. So x is forwarding a packet 
from ingress A to egress B via link
neighbor y, let's say. If the TTL from B via y is usually a certainly 
value, say n, then x should put "n" into
the TTL portion of the destination address (and decrement the TTL 
portion of the source address).

But other than mentioning this just in case people find it useful, I 
still think we should just stick with the 6 byte
shim header and have the traditional hop by hop header (with MAC address 
of transmitter and next hop).

Another thing we haven't talked about on the list (and ran out of time 
at the meeting), is Don Eastlake's
suggestion of allowing the shim header to be variable length, so that we 
can optionally put in thing like LIDs.

Radia

Russ White wrote:

>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>
>  
>
>>d) in the Source address field in the Ethernet header, put in both 
>>the 16-bit ingress RBridge nickname, and the transmitting RBridge on 
>>that link's 8-bit nickname
>>    
>>
>
>I actually have a possible alteration that would make this much easier
>to deploy.... What about setting the nickname to 12 bits. Then, on a
>broadcast network, you would just set the originator's nickname into the
>upper bite of the l2 address, and your local nickname to the lower 12
>bits of the l2 address.
>
>Would this make sense? Would 2^12 be enough nickname space?
>
>:-)
>
>Russ
>
>- --
>[email-masked] CCIE <>< Grace Alone
>
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.4.2.2 (MingW32)
>Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
>iD8DBQFFWPrkER27sUhU9OQRAnhGAKCOrYegMweS0lMzL4oQkuJ014/CSQCgigHQ
>NCIaRhMvL3u328TelicAToc=
>=TfCt
>-----END PGP SIGNATURE-----
>  
>

Date: Mon, 13 Nov 2006 18:08:20 -0500
From: Russ White <[email-masked]>
To: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 893

> d) in the Source address field in the Ethernet header, put in both 
> the 16-bit ingress RBridge nickname, and the transmitting RBridge on 
> that link's 8-bit nickname

I actually have a possible alteration that would make this much easier
to deploy.... What about setting the nickname to 12 bits. Then, on a
broadcast network, you would just set the originator's nickname into the
upper bite of the l2 address, and your local nickname to the lower 12
bits of the l2 address.

Would this make sense? Would 2^12 be enough nickname space?

:-)

Russ

- --
[email-masked] CCIE <>< Grace Alone

Content-class: urn:content-classes:message
Date: Mon, 13 Nov 2006 12:44:55 -0800
From: "J. R. Rivers" <[email-masked]>
To: "Caitlin Bestler" <[email-masked]>, "Silvano Gai" <[email-masked]>, =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1509

Sounds like we are in agreement.

JR

> -----Original Message-----
> From: Caitlin Bestler [mailto:[email-masked]] 
> Sent: Saturday, November 11, 2006 7:20 PM
> To: J. R. Rivers; Silvano Gai; Guillermo Ib??ez
> Cc: [email-masked]; Radia Perlman
> Subject: RE: [rbridge] Should we optimize the common case?
> 
> J. R. Rivers wrote:
> > Hierarchical addresses assume that a single rbridge "owns" a
> > station.  With the current concept of universal mac addresses
> > with rbridge advertisement, a single station can be reached
> > through multiple rbriges... allowing effective dual homing.
> > 
> > I think that hierarchical station addresses require very careful
> > thinking. 
> > 
> > JR
> > 
> > 
> 
> There are possible deployments of rbridges where the rbridge does
> indeed "own" the end nodes, or perhaps it "owns" them in collaboration
> with a partner rbridge. Prime examples would include an "rbridge"
> implemented by a hypervisor and/or NIC to support multiple virtual
> NICs, and a bridge connecting blades on a backplane with external
> ethernet links.
> 
> But even in these environments, the individual OSs may want to
> configure their MAC addresses individually. So hierarchical addresses
> would seem to be a possible enhancement, but there is no obvious
> path to using them generally.
> 
> As an option it would probably take the form of allowing
> announcements of ranges of MAC addresses, rather than
> requiring the  rbridge to announce each individually.
> 
> 
> 
> 

Date: Mon, 13 Nov 2006 11:55:01 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 7439

Sanjay,
Thanks for your feedback. Just a few comments interleaved, because I did 
not fully understand your reasoning.

Sanjay Sane (sanjays) escribi?:
> Guillermo:
>
> We could have the end stations participate in a dhcp-like protocol to get their hierarchical mac addresses assigned to them by the edge switch. (or anyone who knows where they are attached to). The obvious benefit of the hiearchically assigned mac addresses is to obviate the need to do any mac learning for these addresses, thereby improving the scalability of mac learning/distribution in TRILL. 
>
>   
I do agree
> In spite of having such end-stations that have hierarchically assigned mac addresses, we would still need to support end-stations with globally-assigned mac addresses. Thus, we would still need the shim "encapsulation" header of the outer MAC addresses that have the ingress & egress rbridge Ids (& other rbridge-related fields in the MAC header). 
>
>   
I think that, if the ingress and egress RBridges had also "hierarchical" 
RBridge IDs (some kind of hierarchical "prefix" as RBridge ID, shorter 
than the end ports MAC addresses),  the outer MAC addresses would also 
be hierarchical, extending the benefits of hierarchy to inter RBridges 
routing.

> Thus, im, we should have 2 pairs of MAC addresses as part of addressing. Outer for rbridge-id & rbridge related fields, inner for end-stations addresses. Having the end-station addresses hierarchical in nature would mostly help in the protocol learning / MAC distribution aspect of TRILL. 
>
>   
I do not have a fixed position on whether the hierarchical MAC addresses 
belong to the end station or to the "leaf" ports, but I think that 
hierarchical MAC addresses somehow express a layer two "point of 
attachment" to network, rather than an station or interface identity. 
Other aspects regarding interoperability look simpler with hierarchical 
address assigned to switch port rather than to end node.
Regards
Guillermo
> -Sanjay
>
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
> Sent: Sunday, November 12, 2006 12:31 PM
> To: J. R. Rivers
> Cc: [email-masked]; Radia Perlman
> Subject: Re: [rbridge] Should we optimize the common case?
>
> Hierarchical address corresponds to the port of bridge where the station is attached, not to the station.
> Guillermo
>
> J. R. Rivers escribi?:
>   
>> Hierarchical addresses assume that a single rbridge "owns" a station.  With the current concept of universal mac addresses with rbridge advertisement, a single station can be reached through multiple rbriges... allowing effective dual homing.
>>
>> I think that hierarchical station addresses require very careful thinking.
>>
>> JR
>>  
>>
>>   
>>     
>>> -----Original Message-----
>>> From: [email-masked]
>>> [mailto:[email-masked]] On Behalf Of Silvano Gai
>>> Sent: Saturday, November 11, 2006 8:13 AM
>>> To: Guillermo Ib??ez; Caitlin Bestler
>>> Cc: [email-masked]; Radia Perlman
>>> Subject: Re: [rbridge] Should we optimize the common case?
>>>
>>>
>>> This is something we should consider: it also gives the possibility 
>>> to introduce the LID in the hierarchy.
>>>
>>> -- Silvano
>>>
>>>     
>>>       
>>>> -----Original Message-----
>>>> From: [email-masked]
>>>>       
>>>>         
>>> [mailto:[email-masked]] On
>>>     
>>>       
>>>> Behalf Of Guillermo Ib??ez
>>>> Sent: Friday, November 10, 2006 2:37 PM
>>>> To: Caitlin Bestler
>>>> Cc: [email-masked]; Radia Perlman
>>>> Subject: Re: [rbridge] Should we optimize the common case?
>>>>
>>>>
>>>>
>>>> Caitlin Bestler escribi?:
>>>>       
>>>>         
>>>>> [email-masked] wrote:
>>>>>
>>>>>         
>>>>>           
>>>>>> Looking at this proposal, I get the impression that we are somehow 
>>>>>> building a hierarchy, which is essential to get scalability. 
>>>>>> However a more generic solution would have more widespread 
>>>>>> applicability. See the attached slide with a proposal from J. 
>>>>>> Morales for  a hierarchical structure usage of MAC addresses 
>>>>>> (using the Local half of MAC addresses (U/L bit set to Local) with  
>>>>>> hierarchical structure).
>>>>>> Lack of hierarchical Ethernet (not replacing current universal 
>>>>>> MACs) addresses is one of the main current obstacles for Ethernet 
>>>>>> scalability at Metro level.
>>>>>> Guillermo
>>>>>>
>>>>>>
>>>>>>           
>>>>>>             
>>>>> How would a local hierarchical MAC address be assigned?
>>>>> Particularly, how would one be associated with a permanent global 
>>>>> MAC address that an existing end node continued to use?
>>>>> Wouldn't this just replace one set of tables with another?
>>>>>
>>>>>
>>>>>
>>>>>         
>>>>>           
>>>> Perhaps the less disruptive implementation is to assign a local 
>>>> hierarchical port MAC address to each port of a
>>>>       
>>>>         
>>> "hierarchically capable"
>>>     
>>>       
>>>> RBridge.
>>>> The advantage of replacing many universal flat MAC addresses with 
>>>> hierarchical MACs is that aggregation of the routes to
>>>>       
>>>>         
>>> hosts is possible
>>>     
>>>       
>>>> (prefix announcement instead of host lists announcement between 
>>>> RBRidges). And it is quite close to what has just been
>>>>       
>>>>         
>>> proposed  if the
>>>     
>>>       
>>>> hierarchical MAC addresses include the RBridge nick-names
>>>>       
>>>>         
>>> and/or other
>>>     
>>>       
>>>> shared "regional" identifier.
>>>> Address assignment may (and should) be of varied types: based on 
>>>> topology discovery protocols, on spanning tree, management (OS) 
>>>> controlled, etc. It is a matter of the network owner.
>>>> Regarding handling of the two types of MAC addresses,  I see two 
>>>> mechanisms possible  in a mixed network, at ingress and
>>>>       
>>>>         
>>> egress points:
>>>     
>>>       
>>>> - MAC swapping. The hierarchical bridge port replaces the
>>>>       
>>>>         
>>> incoming MAC
>>>     
>>>       
>>>> by the hierarchically assigned local MAC. This seems mainly
>>>>       
>>>>         
>>> convenient
>>>     
>>>       
>>>> for "leaf" ports where only one host is connected. Host is not aware 
>>>> that the MAC is replaced by a hierarchical address.
>>>>  - MAC encapsulation.The "ingress" "hierarchical" bridge
>>>>       
>>>>         
>>> encapsulates
>>>     
>>>       
>>>> the frame with the hierarchical MAC addresses in the outer
>>>>       
>>>>         
>>> header. When
>>>     
>>>       
>>>> the link is shared by several hosts this looks the  most
>>>>       
>>>>         
>>> straightforward
>>>     
>>>       
>>>> approach. This is more in line with the current
>>>>       
>>>>         
>>> encapsulation scheme of
>>>     
>>>       
>>>> RBridges.
>>>> Regards
>>>> Guillermo
>>>>
>>>> _______________________________________________
>>>> rbridge mailing list
>>>> [email-masked]
>>>> http://mailman.postel.org/mailman/listinfo/rbridge
>>>>       
>>>>         
>>> _______________________________________________
>>> rbridge mailing list
>>> [email-masked]
>>> http://mailman.postel.org/mailman/listinfo/rbridge
>>>
>>>     
>>>       
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   

Content-class: urn:content-classes:message
Date: Sun, 12 Nov 2006 21:54:59 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "J. R. Rivers" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 5937

Guillermo:

We could have the end stations participate in a dhcp-like protocol to get their hierarchical mac addresses assigned to them by the edge switch. (or anyone who knows where they are attached to). The obvious benefit of the hiearchically assigned mac addresses is to obviate the need to do any mac learning for these addresses, thereby improving the scalability of mac learning/distribution in TRILL. 

In spite of having such end-stations that have hierarchically assigned mac addresses, we would still need to support end-stations with globally-assigned mac addresses. Thus, we would still need the shim "encapsulation" header of the outer MAC addresses that have the ingress & egress rbridge Ids (& other rbridge-related fields in the MAC header). 

Thus, im, we should have 2 pairs of MAC addresses as part of addressing. Outer for rbridge-id & rbridge related fields, inner for end-stations addresses. Having the end-station addresses hierarchical in nature would mostly help in the protocol learning / MAC distribution aspect of TRILL. 

-Sanjay

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
Sent: Sunday, November 12, 2006 12:31 PM
To: J. R. Rivers
Cc: [email-masked]; Radia Perlman
Subject: Re: [rbridge] Should we optimize the common case?

Hierarchical address corresponds to the port of bridge where the station is attached, not to the station.
Guillermo

J. R. Rivers escribi?:
> Hierarchical addresses assume that a single rbridge "owns" a station.  With the current concept of universal mac addresses with rbridge advertisement, a single station can be reached through multiple rbriges... allowing effective dual homing.
>
> I think that hierarchical station addresses require very careful thinking.
>
> JR
>  
>
>   
>> -----Original Message-----
>> From: [email-masked]
>> [mailto:[email-masked]] On Behalf Of Silvano Gai
>> Sent: Saturday, November 11, 2006 8:13 AM
>> To: Guillermo Ib??ez; Caitlin Bestler
>> Cc: [email-masked]; Radia Perlman
>> Subject: Re: [rbridge] Should we optimize the common case?
>>
>>
>> This is something we should consider: it also gives the possibility 
>> to introduce the LID in the hierarchy.
>>
>> -- Silvano
>>
>>     
>>> -----Original Message-----
>>> From: [email-masked]
>>>       
>> [mailto:[email-masked]] On
>>     
>>> Behalf Of Guillermo Ib??ez
>>> Sent: Friday, November 10, 2006 2:37 PM
>>> To: Caitlin Bestler
>>> Cc: [email-masked]; Radia Perlman
>>> Subject: Re: [rbridge] Should we optimize the common case?
>>>
>>>
>>>
>>> Caitlin Bestler escribi?:
>>>       
>>>> [email-masked] wrote:
>>>>
>>>>         
>>>>> Looking at this proposal, I get the impression that we are somehow 
>>>>> building a hierarchy, which is essential to get scalability. 
>>>>> However a more generic solution would have more widespread 
>>>>> applicability. See the attached slide with a proposal from J. 
>>>>> Morales for  a hierarchical structure usage of MAC addresses 
>>>>> (using the Local half of MAC addresses (U/L bit set to Local) with  
>>>>> hierarchical structure).
>>>>> Lack of hierarchical Ethernet (not replacing current universal 
>>>>> MACs) addresses is one of the main current obstacles for Ethernet 
>>>>> scalability at Metro level.
>>>>> Guillermo
>>>>>
>>>>>
>>>>>           
>>>> How would a local hierarchical MAC address be assigned?
>>>> Particularly, how would one be associated with a permanent global 
>>>> MAC address that an existing end node continued to use?
>>>> Wouldn't this just replace one set of tables with another?
>>>>
>>>>
>>>>
>>>>         
>>> Perhaps the less disruptive implementation is to assign a local 
>>> hierarchical port MAC address to each port of a
>>>       
>> "hierarchically capable"
>>     
>>> RBridge.
>>> The advantage of replacing many universal flat MAC addresses with 
>>> hierarchical MACs is that aggregation of the routes to
>>>       
>> hosts is possible
>>     
>>> (prefix announcement instead of host lists announcement between 
>>> RBRidges). And it is quite close to what has just been
>>>       
>> proposed  if the
>>     
>>> hierarchical MAC addresses include the RBridge nick-names
>>>       
>> and/or other
>>     
>>> shared "regional" identifier.
>>> Address assignment may (and should) be of varied types: based on 
>>> topology discovery protocols, on spanning tree, management (OS) 
>>> controlled, etc. It is a matter of the network owner.
>>> Regarding handling of the two types of MAC addresses,  I see two 
>>> mechanisms possible  in a mixed network, at ingress and
>>>       
>> egress points:
>>     
>>> - MAC swapping. The hierarchical bridge port replaces the
>>>       
>> incoming MAC
>>     
>>> by the hierarchically assigned local MAC. This seems mainly
>>>       
>> convenient
>>     
>>> for "leaf" ports where only one host is connected. Host is not aware 
>>> that the MAC is replaced by a hierarchical address.
>>>  - MAC encapsulation.The "ingress" "hierarchical" bridge
>>>       
>> encapsulates
>>     
>>> the frame with the hierarchical MAC addresses in the outer
>>>       
>> header. When
>>     
>>> the link is shared by several hosts this looks the  most
>>>       
>> straightforward
>>     
>>> approach. This is more in line with the current
>>>       
>> encapsulation scheme of
>>     
>>> RBridges.
>>> Regards
>>> Guillermo
>>>
>>> _______________________________________________
>>> rbridge mailing list
>>> [email-masked]
>>> http://mailman.postel.org/mailman/listinfo/rbridge
>>>       
>> _______________________________________________
>> rbridge mailing list
>> [email-masked]
>> http://mailman.postel.org/mailman/listinfo/rbridge
>>
>>     
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Sun, 12 Nov 2006 21:31:03 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "J. R. Rivers" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 4451

Hierarchical address corresponds to the port of bridge where the station 
is attached, not to the station.
Guillermo

J. R. Rivers escribi?:
> Hierarchical addresses assume that a single rbridge "owns" a station.  With the current concept of universal mac addresses with rbridge advertisement, a single station can be reached through multiple rbriges... allowing effective dual homing.
>
> I think that hierarchical station addresses require very careful thinking.
>
> JR
>  
>
>   
>> -----Original Message-----
>> From: [email-masked] 
>> [mailto:[email-masked]] On Behalf Of Silvano Gai
>> Sent: Saturday, November 11, 2006 8:13 AM
>> To: Guillermo Ib??ez; Caitlin Bestler
>> Cc: [email-masked]; Radia Perlman
>> Subject: Re: [rbridge] Should we optimize the common case?
>>
>>
>> This is something we should consider: it also gives the 
>> possibility to introduce the LID in the hierarchy.
>>
>> -- Silvano
>>
>>     
>>> -----Original Message-----
>>> From: [email-masked] 
>>>       
>> [mailto:[email-masked]] On
>>     
>>> Behalf Of Guillermo Ib??ez
>>> Sent: Friday, November 10, 2006 2:37 PM
>>> To: Caitlin Bestler
>>> Cc: [email-masked]; Radia Perlman
>>> Subject: Re: [rbridge] Should we optimize the common case?
>>>
>>>
>>>
>>> Caitlin Bestler escribi?:
>>>       
>>>> [email-masked] wrote:
>>>>
>>>>         
>>>>> Looking at this proposal, I get the impression that we are
>>>>> somehow building a hierarchy, which is essential to get
>>>>> scalability. However a more generic solution would have more
>>>>> widespread applicability. See the attached slide with a
>>>>> proposal from J. Morales for  a hierarchical structure usage
>>>>> of MAC addresses (using the Local half of MAC addresses (U/L
>>>>> bit set to Local) with  hierarchical structure).
>>>>> Lack of hierarchical Ethernet (not replacing current
>>>>> universal MACs) addresses is one of the main current
>>>>> obstacles for Ethernet scalability at Metro level.
>>>>> Guillermo
>>>>>
>>>>>
>>>>>           
>>>> How would a local hierarchical MAC address be assigned?
>>>> Particularly, how would one be associated with a permanent
>>>> global MAC address that an existing end node continued to use?
>>>> Wouldn't this just replace one set of tables with another?
>>>>
>>>>
>>>>
>>>>         
>>> Perhaps the less disruptive implementation is to assign a local
>>> hierarchical port MAC address to each port of a 
>>>       
>> "hierarchically capable"
>>     
>>> RBridge.
>>> The advantage of replacing many universal flat MAC addresses with
>>> hierarchical MACs is that aggregation of the routes to 
>>>       
>> hosts is possible
>>     
>>> (prefix announcement instead of host lists announcement between
>>> RBRidges). And it is quite close to what has just been 
>>>       
>> proposed  if the
>>     
>>> hierarchical MAC addresses include the RBridge nick-names 
>>>       
>> and/or other
>>     
>>> shared "regional" identifier.
>>> Address assignment may (and should) be of varied types: based on
>>> topology discovery protocols, on spanning tree, management (OS)
>>> controlled, etc. It is a matter of the network owner.
>>> Regarding handling of the two types of MAC addresses,  I see two
>>> mechanisms possible  in a mixed network, at ingress and 
>>>       
>> egress points:
>>     
>>> - MAC swapping. The hierarchical bridge port replaces the 
>>>       
>> incoming MAC
>>     
>>> by the hierarchically assigned local MAC. This seems mainly 
>>>       
>> convenient
>>     
>>> for "leaf" ports where only one host is connected. Host is not aware
>>> that the MAC is replaced by a hierarchical address.
>>>  - MAC encapsulation.The "ingress" "hierarchical" bridge 
>>>       
>> encapsulates
>>     
>>> the frame with the hierarchical MAC addresses in the outer 
>>>       
>> header. When
>>     
>>> the link is shared by several hosts this looks the  most 
>>>       
>> straightforward
>>     
>>> approach. This is more in line with the current 
>>>       
>> encapsulation scheme of
>>     
>>> RBridges.
>>> Regards
>>> Guillermo
>>>
>>> _______________________________________________
>>> rbridge mailing list
>>> [email-masked]
>>> http://mailman.postel.org/mailman/listinfo/rbridge
>>>       
>> _______________________________________________
>> rbridge mailing list
>> [email-masked]
>> http://mailman.postel.org/mailman/listinfo/rbridge
>>
>>     

Content-class: urn:content-classes:message
Date: Sat, 11 Nov 2006 19:20:25 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "J. R. Rivers" <[email-masked]>, "Silvano Gai" <[email-masked]>, "=?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?=" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1120

J. R. Rivers wrote:
> Hierarchical addresses assume that a single rbridge "owns" a
> station.  With the current concept of universal mac addresses
> with rbridge advertisement, a single station can be reached
> through multiple rbriges... allowing effective dual homing.
> 
> I think that hierarchical station addresses require very careful
> thinking. 
> 
> JR
> 
> 

There are possible deployments of rbridges where the rbridge does
indeed "own" the end nodes, or perhaps it "owns" them in collaboration
with a partner rbridge. Prime examples would include an "rbridge"
implemented by a hypervisor and/or NIC to support multiple virtual
NICs, and a bridge connecting blades on a backplane with external
ethernet links.

But even in these environments, the individual OSs may want to
configure their MAC addresses individually. So hierarchical addresses
would seem to be a possible enhancement, but there is no obvious
path to using them generally.

As an option it would probably take the form of allowing
announcements of ranges of MAC addresses, rather than
requiring the  rbridge to announce each individually.

Content-class: urn:content-classes:message
Date: Sat, 11 Nov 2006 17:17:35 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: [rbridge] Presentations at IETF San Diego TRILL Meeting
Status: RO
Content-Length: 879

Hi,

The presentations at the TRILL WG Meeting in San Diego are linked off
the 67th IETF Meeting Materials page at 
https://datatracker.ietf.org/public/meeting_materials.cgi?meeting_num=67
.
For your convenience, I will include these links here but they probably
won't be good forever as these files will be converted to html.

Agenda and Milestones:
http://www3.ietf.org/proceedings/06nov/slides/trill-0.ppt

Draft-ietf-trill-prob-01:
http://www3.ietf.org/proceedings/06nov/slides/trill-4.ppt

An Encapsulation for TRILL:
http://www3.ietf.org/proceedings/06nov/slides/trill-2.ppt

TRILL Remaining Issues:
http://www3.ietf.org/proceedings/06nov/slides/trill-1.ppt

Rbridge Protocol Extensions:
http://www3.ietf.org/proceedings/06nov/slides/trill-3.ppt

Note that, due to limited time, the last item listed above was not
actually presented during the WG meeting.

Thanks,
Donald

Date: Sat, 11 Nov 2006 12:11:27 -0800
From: Joe Touch <[email-masked]>
To: [email-masked]
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1652

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigBBBA5BCAF7ADC7F85A028F8E
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

[email-masked] wrote:
> This is an extremely cute proposal, and it works. Let me explain Sanjay=
's proposal in different words, in case
> it doesn't sink in the first time one sees it.
>=20
> He is proposing using the shim header that looks like an Ethernet heade=
r, with SA=3Dingress RBridge MAC R1
> and DA=3Degress RBridge MAC R2, but solving the two problems
> brought up at the meeting which were:

I'm very confused by all these proposals.

This is a LOT of complexity (either in figuring pt-pt links in the
original proposal, or assigning subnetted MAC addresses here) all to
save - at most - 4 bytes (the rbridge tags in the shim).

When it comes to optimization, we can consider:

	- performance on the link (extra bytes)
	- fragmentation (none of these help that, since
	all make the packet at least one byte larger)
	- complexity of management / configuration

IMO, the complexity of these alternatives isn't worth 4 bytes.

Joe

--------------enigBBBA5BCAF7ADC7F85A028F8E
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enigBBBA5BCAF7ADC7F85A028F8E--

Content-class: urn:content-classes:message
Date: Sat, 11 Nov 2006 08:39:09 -0800
From: "J. R. Rivers" <[email-masked]>
To: "Silvano Gai" <[email-masked]>, =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Caitlin Bestler" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 3994

Hierarchical addresses assume that a single rbridge "owns" a station.  With the current concept of universal mac addresses with rbridge advertisement, a single station can be reached through multiple rbriges... allowing effective dual homing.

I think that hierarchical station addresses require very careful thinking.

JR

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Silvano Gai
> Sent: Saturday, November 11, 2006 8:13 AM
> To: Guillermo Ib??ez; Caitlin Bestler
> Cc: [email-masked]; Radia Perlman
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> 
> This is something we should consider: it also gives the 
> possibility to introduce the LID in the hierarchy.
> 
> -- Silvano
> 
> > -----Original Message-----
> > From: [email-masked] 
> [mailto:[email-masked]] On
> > Behalf Of Guillermo Ib??ez
> > Sent: Friday, November 10, 2006 2:37 PM
> > To: Caitlin Bestler
> > Cc: [email-masked]; Radia Perlman
> > Subject: Re: [rbridge] Should we optimize the common case?
> > 
> > 
> > 
> > Caitlin Bestler escribi?:
> > > [email-masked] wrote:
> > >
> > >> Looking at this proposal, I get the impression that we are
> > >> somehow building a hierarchy, which is essential to get
> > >> scalability. However a more generic solution would have more
> > >> widespread applicability. See the attached slide with a
> > >> proposal from J. Morales for  a hierarchical structure usage
> > >> of MAC addresses (using the Local half of MAC addresses (U/L
> > >> bit set to Local) with  hierarchical structure).
> > >> Lack of hierarchical Ethernet (not replacing current
> > >> universal MACs) addresses is one of the main current
> > >> obstacles for Ethernet scalability at Metro level.
> > >> Guillermo
> > >>
> > >>
> > >
> > > How would a local hierarchical MAC address be assigned?
> > > Particularly, how would one be associated with a permanent
> > > global MAC address that an existing end node continued to use?
> > > Wouldn't this just replace one set of tables with another?
> > >
> > >
> > >
> > Perhaps the less disruptive implementation is to assign a local
> > hierarchical port MAC address to each port of a 
> "hierarchically capable"
> > RBridge.
> > The advantage of replacing many universal flat MAC addresses with
> > hierarchical MACs is that aggregation of the routes to 
> hosts is possible
> > (prefix announcement instead of host lists announcement between
> > RBRidges). And it is quite close to what has just been 
> proposed  if the
> > hierarchical MAC addresses include the RBridge nick-names 
> and/or other
> > shared "regional" identifier.
> > Address assignment may (and should) be of varied types: based on
> > topology discovery protocols, on spanning tree, management (OS)
> > controlled, etc. It is a matter of the network owner.
> > Regarding handling of the two types of MAC addresses,  I see two
> > mechanisms possible  in a mixed network, at ingress and 
> egress points:
> > - MAC swapping. The hierarchical bridge port replaces the 
> incoming MAC
> > by the hierarchically assigned local MAC. This seems mainly 
> convenient
> > for "leaf" ports where only one host is connected. Host is not aware
> > that the MAC is replaced by a hierarchical address.
> >  - MAC encapsulation.The "ingress" "hierarchical" bridge 
> encapsulates
> > the frame with the hierarchical MAC addresses in the outer 
> header. When
> > the link is shared by several hosts this looks the  most 
> straightforward
> > approach. This is more in line with the current 
> encapsulation scheme of
> > RBridges.
> > Regards
> > Guillermo
> > 
> > _______________________________________________
> > rbridge mailing list
> > [email-masked]
> > http://mailman.postel.org/mailman/listinfo/rbridge
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 

Content-class: urn:content-classes:message
Date: Sat, 11 Nov 2006 08:13:08 -0800
From: "Silvano Gai" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Caitlin Bestler" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 3021

This is something we should consider: it also gives the possibility to introduce the LID in the hierarchy.

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Guillermo Ib??ez
> Sent: Friday, November 10, 2006 2:37 PM
> To: Caitlin Bestler
> Cc: [email-masked]; Radia Perlman
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> 
> 
> Caitlin Bestler escribi?:
> > [email-masked] wrote:
> >
> >> Looking at this proposal, I get the impression that we are
> >> somehow building a hierarchy, which is essential to get
> >> scalability. However a more generic solution would have more
> >> widespread applicability. See the attached slide with a
> >> proposal from J. Morales for  a hierarchical structure usage
> >> of MAC addresses (using the Local half of MAC addresses (U/L
> >> bit set to Local) with  hierarchical structure).
> >> Lack of hierarchical Ethernet (not replacing current
> >> universal MACs) addresses is one of the main current
> >> obstacles for Ethernet scalability at Metro level.
> >> Guillermo
> >>
> >>
> >
> > How would a local hierarchical MAC address be assigned?
> > Particularly, how would one be associated with a permanent
> > global MAC address that an existing end node continued to use?
> > Wouldn't this just replace one set of tables with another?
> >
> >
> >
> Perhaps the less disruptive implementation is to assign a local
> hierarchical port MAC address to each port of a "hierarchically capable"
> RBridge.
> The advantage of replacing many universal flat MAC addresses with
> hierarchical MACs is that aggregation of the routes to hosts is possible
> (prefix announcement instead of host lists announcement between
> RBRidges). And it is quite close to what has just been proposed  if the
> hierarchical MAC addresses include the RBridge nick-names and/or other
> shared "regional" identifier.
> Address assignment may (and should) be of varied types: based on
> topology discovery protocols, on spanning tree, management (OS)
> controlled, etc. It is a matter of the network owner.
> Regarding handling of the two types of MAC addresses,  I see two
> mechanisms possible  in a mixed network, at ingress and egress points:
> - MAC swapping. The hierarchical bridge port replaces the incoming MAC
> by the hierarchically assigned local MAC. This seems mainly convenient
> for "leaf" ports where only one host is connected. Host is not aware
> that the MAC is replaced by a hierarchical address.
>  - MAC encapsulation.The "ingress" "hierarchical" bridge encapsulates
> the frame with the hierarchical MAC addresses in the outer header. When
> the link is shared by several hosts this looks the  most straightforward
> approach. This is more in line with the current encapsulation scheme of
> RBridges.
> Regards
> Guillermo
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Date: Fri, 10 Nov 2006 23:37:13 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Caitlin Bestler <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 2376

Caitlin Bestler escribi?:
> [email-masked] wrote:
>   
>> Looking at this proposal, I get the impression that we are
>> somehow building a hierarchy, which is essential to get
>> scalability. However a more generic solution would have more
>> widespread applicability. See the attached slide with a
>> proposal from J. Morales for  a hierarchical structure usage
>> of MAC addresses (using the Local half of MAC addresses (U/L
>> bit set to Local) with  hierarchical structure).
>> Lack of hierarchical Ethernet (not replacing current
>> universal MACs) addresses is one of the main current
>> obstacles for Ethernet scalability at Metro level.
>> Guillermo
>>
>>     
>
> How would a local hierarchical MAC address be assigned?
> Particularly, how would one be associated with a permanent
> global MAC address that an existing end node continued to use?
> Wouldn't this just replace one set of tables with another?
>
>
>   
Perhaps the less disruptive implementation is to assign a local 
hierarchical port MAC address to each port of a "hierarchically capable" 
RBridge.
The advantage of replacing many universal flat MAC addresses with 
hierarchical MACs is that aggregation of the routes to hosts is possible 
(prefix announcement instead of host lists announcement between 
RBRidges). And it is quite close to what has just been proposed  if the 
hierarchical MAC addresses include the RBridge nick-names and/or other 
shared "regional" identifier.
Address assignment may (and should) be of varied types: based on 
topology discovery protocols, on spanning tree, management (OS) 
controlled, etc. It is a matter of the network owner.
Regarding handling of the two types of MAC addresses,  I see two 
mechanisms possible  in a mixed network, at ingress and egress points:
- MAC swapping. The hierarchical bridge port replaces the incoming MAC 
by the hierarchically assigned local MAC. This seems mainly convenient 
for "leaf" ports where only one host is connected. Host is not aware 
that the MAC is replaced by a hierarchical address.
 - MAC encapsulation.The "ingress" "hierarchical" bridge encapsulates 
the frame with the hierarchical MAC addresses in the outer header. When 
the link is shared by several hosts this looks the  most straightforward 
approach. This is more in line with the current encapsulation scheme of 
RBridges.
Regards
Guillermo

Content-class: urn:content-classes:message
Date: Fri, 10 Nov 2006 13:44:35 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "=?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?=" <[email-masked]>, "Russ White" <[email-masked]>, [email-masked], "Radia Perlman" <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 870

[email-masked] wrote:
> Looking at this proposal, I get the impression that we are
> somehow building a hierarchy, which is essential to get
> scalability. However a more generic solution would have more
> widespread applicability. See the attached slide with a
> proposal from J. Morales for  a hierarchical structure usage
> of MAC addresses (using the Local half of MAC addresses (U/L
> bit set to Local) with  hierarchical structure).
> Lack of hierarchical Ethernet (not replacing current
> universal MACs) addresses is one of the main current
> obstacles for Ethernet scalability at Metro level.
> Guillermo
> 

How would a local hierarchical MAC address be assigned?
Particularly, how would one be associated with a permanent
global MAC address that an existing end node continued to use?
Wouldn't this just replace one set of tables with another?

Date: Fri, 10 Nov 2006 15:06:31 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Russ White <[email-masked]>, [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 31515

This is a multi-part message in MIME format.
--------------010603090201000407000004
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit

Looking at this proposal, I get the impression that we are somehow 
building a hierarchy, which is essential to get scalability. However a 
more generic solution would have more widespread applicability. See the 
attached slide with a proposal from J. Morales for  a hierarchical 
structure usage of MAC addresses (using the Local half of MAC addresses 
(U/L bit set to Local) with  hierarchical structure).
Lack of hierarchical Ethernet (not replacing current universal MACs) 
addresses is one of the main current obstacles for Ethernet scalability 
at Metro level.
Guillermo

Russ White escribi?:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
>   
>> a) assign 16-bit nicknames to all the RBridges (as we were going to
>> do with the short shim header)
>>     
>
>   
>> b) assign, say, 8 bit link-local nicknames to all the RBridges on a
>> link (this can be done through the IS-IS Hello protocol quite
>> easily--I'd suggest doing it by having the Designated RBridge assign
>> the values, but it could also be done by having each RBridge choose a
>> nickname and back off if someone with a better ID has chosen that 
>> nickname)
>>     
>
>   
>> c) in the Destination address field in the Ethernet header, put in
>> both the 16-bit egress RBridge nickname, and the nextop 8-bit
>> nickname
>>     
>
>   
>> d) in the Source address field in the Ethernet header, put in both
>> the 16-bit ingress RBridge nickname, and the transmitting RBridge on
>> that link's 8-bit nickname
>>
>> So---bridges will never incorrectly learn the location of any
>> RBridges, because no matter where a packet from R12 arrives into the
>> link, the bottom bits will be specific to the RBridge on the link
>> that injected the packet.
>>
>> And positive learning can happen as well. Suppose there are n total
>> RBridge nicknames in use in the whole campus. Suppose there are 5
>> RBridges on the link. The bridges inside the link will see 5*n
>> RBridge addresses as a result of this proposal. In other words, if
>> the RBridge nicknames are 1, 2, ... 517. and there are 5 RBridges on
>> the link, the MAC addresses the bridges will see are: {1 - 517} | {1
>> - 5}
>>
>> In Sanjay's picture, if R4 wants to direct a packet towards R2 rather
>> than R3 for egress R1, it encodes R2's nickname into the "neighbor's
>> nickname" portion of the egress RBridge field.
>>
>> Anyway---something for people to think about.
>>     
>
> I like this proposal.... It solves many of the problems we've been
> looking at, with a single "shim/ethernet" header. We could make the
> total header the size of an ethernet header plus the trailing TTL and
> reserved space, making the size come out right for easy processing, etc.
>
> Should we replace the current shim header text with this?
>
> :-)
>
> Russ
>
> - --
> [email-masked] CCIE <>< Grace Alone
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2.2 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFFVH4kER27sUhU9OQRAlEXAKDlFkl7a93xVCs/aKRKdIc8/IihlwCg0eII
> TvOzBPbanKhybn8xTutKNtE=
> =mbtr
> -----END PGP SIGNATURE-----
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   

--------------010603090201000407000004
Content-Type: application/pdf;
 name="hierarchicallocalmacaddresses.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="hierarchicallocalmacaddresses.pdf"

--------------010603090201000407000004--

Date: Fri, 10 Nov 2006 08:27:00 -0500
From: Russ White <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 2372

> a) assign 16-bit nicknames to all the RBridges (as we were going to
> do with the short shim header)

> b) assign, say, 8 bit link-local nicknames to all the RBridges on a
> link (this can be done through the IS-IS Hello protocol quite
> easily--I'd suggest doing it by having the Designated RBridge assign
> the values, but it could also be done by having each RBridge choose a
> nickname and back off if someone with a better ID has chosen that 
> nickname)

> c) in the Destination address field in the Ethernet header, put in
> both the 16-bit egress RBridge nickname, and the nextop 8-bit
> nickname

> d) in the Source address field in the Ethernet header, put in both
> the 16-bit ingress RBridge nickname, and the transmitting RBridge on
> that link's 8-bit nickname
> 
> So---bridges will never incorrectly learn the location of any
> RBridges, because no matter where a packet from R12 arrives into the
> link, the bottom bits will be specific to the RBridge on the link
> that injected the packet.
> 
> And positive learning can happen as well. Suppose there are n total
> RBridge nicknames in use in the whole campus. Suppose there are 5
> RBridges on the link. The bridges inside the link will see 5*n
> RBridge addresses as a result of this proposal. In other words, if
> the RBridge nicknames are 1, 2, ... 517. and there are 5 RBridges on
> the link, the MAC addresses the bridges will see are: {1 - 517} | {1
> - 5}
> 
> In Sanjay's picture, if R4 wants to direct a packet towards R2 rather
> than R3 for egress R1, it encodes R2's nickname into the "neighbor's
> nickname" portion of the egress RBridge field.
> 
> Anyway---something for people to think about.

I like this proposal.... It solves many of the problems we've been
looking at, with a single "shim/ethernet" header. We could make the
total header the size of an ethernet header plus the trailing TTL and
reserved space, making the size come out right for easy processing, etc.

Should we replace the current shim header text with this?

:-)

Russ

- --
[email-masked] CCIE <>< Grace Alone

Date: Wed, 08 Nov 2006 20:50:52 -0800
From: Joe Touch <[email-masked]>
To: Anoop Ghanwani <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Which 802.1 headers are relevant?
Status: RO
Content-Length: 2058

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig63B628428F0DD564F8A8C2A7
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Anoop Ghanwani wrote:
>> -----Original Message-----
>> From: [email-masked]=20
>> [mailto:[email-masked]] On Behalf Of Joe Touch
>> Sent: Wednesday, November 08, 2006 4:41 PM
>> To: Caitlin Bestler
>> Cc: [email-masked]
>> Subject: Re: [rbridge] Which 802.1 headers are relevant?
>=20
>>> That is, rbridges ignorant of 802.1??? will result in the=20
>> cloud being=20
>>> partitioned for purposes of 802.1??? -- and generally that is the=20
>>> correct behavior.
>> The same could be said for bridges ignorant of 802.1?? - that=20
>> they partition, or more specifically 'are treated as air=20
>> gaps' to that protocol.
>=20
> I think it depends.  If, for example, rbridges were ignorant
> of xSTP but they treated xSTP frames as regular multicast
> frames (which is what they would do if they were truly
> ignorant), then an rbridge is effectively a hub from the
> standpoint of xSTP.  That would probably be true for
> GARP/GVRP/GMRP as well.  It's only if rbridges recognize
> those frames and drop them, do they become "air gaps"
> for that protocol.

Right. Routers *never* participate in L2 protocols this way; bridges
can, but don't always. When considering the rbridge campus, we should
decide whether it behaves as a single bridge would - whether that
equivalent bridge would participate or not is the decision.

Joe

--------------enig63B628428F0DD564F8A8C2A7
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enig63B628428F0DD564F8A8C2A7--

Content-class: urn:content-classes:message
Date: Wed, 8 Nov 2006 19:06:50 -0800
From: "Silvano Gai" <[email-masked]>
To: <[email-masked]>
Subject: [rbridge] Etherchannel
Status: RO
Content-Length: 124

During the meeting I was asked to provide a reference to Etherchannel.
It is:

IEEE P802.3ad Link Aggregation 

-- Silvano

Content-class: urn:content-classes:message
Date: Wed, 8 Nov 2006 17:47:41 -0800
From: "Anoop Ghanwani" <[email-masked]>
To: "Joe Touch" <[email-masked]>, "Caitlin Bestler" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Which 802.1 headers are relevant?
Status: RO
Content-Length: 1030

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Joe Touch
> Sent: Wednesday, November 08, 2006 4:41 PM
> To: Caitlin Bestler
> Cc: [email-masked]
> Subject: Re: [rbridge] Which 802.1 headers are relevant?

> 
> > That is, rbridges ignorant of 802.1??? will result in the 
> cloud being 
> > partitioned for purposes of 802.1??? -- and generally that is the 
> > correct behavior.
> 
> The same could be said for bridges ignorant of 802.1?? - that 
> they partition, or more specifically 'are treated as air 
> gaps' to that protocol.

I think it depends.  If, for example, rbridges were ignorant
of xSTP but they treated xSTP frames as regular multicast
frames (which is what they would do if they were truly
ignorant), then an rbridge is effectively a hub from the
standpoint of xSTP.  That would probably be true for
GARP/GVRP/GMRP as well.  It's only if rbridges recognize
those frames and drop them, do they become "air gaps"
for that protocol.

Anoop

Date: Wed, 08 Nov 2006 16:41:22 -0800
From: Joe Touch <[email-masked]>
To: Caitlin Bestler <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Which 802.1 headers are relevant?
Status: RO
Content-Length: 1652

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigAFF7FC058E36E4983757725C
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Caitlin Bestler wrote:
> I have a criteria to propose on the question of which L2 standards are
> relevant to rbridges, versus being totally opaque.
>=20
> The default for any L2 option that is not fully understood or yet
> defined is covered by the general principle that to a bridge an
> rbridge looks like a router.

IMO, rbridges as a group look somewhat like a single bridge.

If they looked like a router, then traffic that transited them would be
addressed _to_ them at L2; this is never the case, so they're clearly
not routers.

> That is, rbridges ignorant of 802.1??? will result in the cloud
> being partitioned for purposes of 802.1??? -- and generally that
> is the correct behavior.

The same could be said for bridges ignorant of 802.1?? - that they
partition, or more specifically 'are treated as air gaps' to that protoco=
l.

The rest of the logic, I agree, follows... (if partitioning is OK, then
its OK; if not, then not).

Joe

--------------enigAFF7FC058E36E4983757725C
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enigAFF7FC058E36E4983757725C--

Content-class: urn:content-classes:message
Date: Wed, 8 Nov 2006 14:51:14 -0800
From: "Caitlin Bestler" <[email-masked]>
To: [email-masked]
Subject: [rbridge] Which 802.1 headers are relevant?
Status: RO
Content-Length: 1579

I have a criteria to propose on the question of which L2 standards are
relevant to rbridges, versus being totally opaque.

The default for any L2 option that is not fully understood or yet
defined is covered by the general principle that to a bridge an
rbridge looks like a router.

That is, rbridges ignorant of 802.1??? will result in the cloud
being partitioned for purposes of 802.1??? -- and generally that
is the correct behavior.

For example, the value of 802.1x (Port-Based Network Access Control)
would not seem to be impaired by partitioning the cloud.

By contrast 802.1au (Congestion Avoidance) is clearly impaired
if BCNs cannot be delivered as close to the true source as possible.

I suggest that this be the criteria for determining which IEEE 
efforts are worth considering. More specifically, anyone who wishes
to discusss IEEE protocols (particularly those that are in progress)
needs to explain why rbridges being ignorant of said protocol would
produce a detrimental effect.

Once that case has been made, the WG can discuss mitigations including
possible new requirements for rbridges to properly support the 
specific IEEE protocol. Such requirements would probably need to
packaged in separate drafts, to prevent the main document being
dependent on different IEEE project's delivery schedules, which
probably also means that each feature set would be optional.
But I still think it would be of value for the trill WG to define
how an 802.1au-aware rbridge should handle each type of 802.1au
defined frames even if being 802.1au-aware is not required.

Date: Wed, 08 Nov 2006 14:31:47 -0800
From: Pierre Francois <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Reply-To: [email-masked]
Status: RO
Content-Length: 29003

Eric,

The ECMP problem makes the drop behavior much more difficult to achieve, 
as simply looking
if a packet would get out by the same oif as it entered is not 
sufficient to drop all loopy packets.
So if there is no support for "clever-ness", we'll have to admit that 
packets will loop.

Pierre.

Gray, Eric wrote:
> Mike,
>
> 	To add one point to what Alia said, we need to make up our
> minds what we want the failure mode to be (or - shudder - what the
> options should be for different deployment scenarios).
>
> 	At yesterday's meeting, there was substantial support for a
> failure mode that "prefers" drop behavior to "clever-ness."  I can
> think of no good reason why this should be the model in some cases
> and not in others.
>
> --
> Eric
>
> --> -----Original Message-----
> --> From: [email-masked] 
> --> [mailto:[email-masked]] On Behalf Of Alia Atlas
> --> Sent: Wednesday, November 08, 2006 4:43 PM
> --> To: mike shand
> --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> --> Subject: Re: [rbridge] Traffic storms
> --> 
> --> On 11/8/06, mike shand <[email-masked]> wrote:
> --> > At 23:31 06/11/2006, Alia Atlas wrote:
> --> > >The multi-hop micro-forwarding loops only come up with 
> --> asymmetric link
> --> > >costs.
> --> >
> --> > We used to think that was true, but it is also
> --> > possible to introduce multihop forwarding loops via ECMP.
> --> >
> --> > e.g
> --> >                 D
> --> >               /  \
> --> >          A------B----C
> --> >          |           |
> --> >       E-----------F
> --> >
> --> > All costs 1, except BC = 2 and EF = 10 (both symmetric)
> --> > When AB fails C was previously forwarding to A via both B and D
> --> > After, B forwards via both D and C
> --> > So if a packet gets sent (say) C->B AND B->D we end up 
> --> with a cyclic loop.
> --> 
> --> Interesting case.  When we'd discussed it before, I think 
> --> we'd missed
> --> this ECMP case.
> --> What are the implications for PLSN  with this?  Does your simulator
> --> catch these cases?
> --> 
> --> > >  In TRILL, I believe the assumption is that there aren't
> --> > >asymmetric link costs so that traffic flows are bidirectional.
> --> > >
> --> > >For this case, dropping frames that would transmit 
> --> through the same
> --> > >interface that received it would handle the 
> --> micro-forwarding loops, I
> --> > >believe.
> --> >
> --> > Handle, in the sense of avoiding looping, but of
> --> > course the traffic would be dropped!
> --> 
> --> Sure - but in the absence of a fast-reroute technology, that's what
> --> you need to do on failures.
> --> 
> --> Alia
> --> 
> --> >          Mike
> --> >
> --> >
> --> >
> --> > >Alia
> --> > >
> --> > >On 11/6/06, Pierre Francois <[email-masked]> wrote:
> --> > > > Gray, Eric wrote:
> --> > > > > Pierre,
> --> > > > >
> --> > > > >       The "?loop problem" is apparently an issue 
> --> with some devices where
> --> > > > > reasonable forwarding behavior limitations have 
> --> been "optimized out."  A
> --> > > > > better way to handle the ?loop problem with 
> --> RBridges is not to optimize
> --> > > > > out the behavior that prevents it - i.e. - a 
> --> prohibition against emitting
> --> > > > > a frame on the same interface on which it was received.
> --> > > > >       To be clear, at either the last IETF
> --> > > meeting, or the one just before
> --> > > > > that one, it was made fairly clear that the ?loop 
> --> problem occurs when a
> --> > > > > device sends a PDU out of the same interface on 
> --> which it was received. In
> --> > > > > comparison with simply dropping such a PDU, this 
> --> behavior is pathological
> --> > > > > - particularly in the case of L2 forwarding generally.
> --> > > > >
> --> > > >
> --> > > > That would mean that under a **planned** removal of 
> --> an rbridge-rbridge
> --> > > > link, where the rbridge network could suffer of forwarding
> --> > > > loops, you could drop traffic. Indeed,  "IS-IS like 
> --> FIBs" are updated in
> --> > > > an asynchronous fashion upon topological changes, so 
> --> that transient
> --> > > > inconsistency in the forwarding of
> --> > > > unicast traffic, leading to ?loops,  is something 
> --> that regularly occur.
> --> > > >
> --> > > > Moreover, if you use TE tools to set up the metrics 
> --> of your links, you
> --> > > > might end up with metric(X-->Y) != metric(Y-->X).
> --> > > > In such cases, "longer ?loops", i.e. loops involving 
> --> 3 or 4 rBridges can
> --> > > > occur upon convergence,
> --> > > > in which case the simple "incoming interface 
> --> <>outgoing interface" loop
> --> > > > mitigation check won't work.
> --> > > >
> --> > > > Pierre.
> --> > > > >       I am not saying that we do not need ordered 
> --> FIB for loop prevention
> --> > > > > generally, but we should not need it for the ?loop problem.
> --> > > > >
> --> > > >
> --> > > >
> --> > > > > --
> --> > > > > Eric
> --> > > > >
> --> > > > > --> -----Original Message-----
> --> > > > > --> From: [email-masked]
> --> > > > > --> [mailto:[email-masked]] On Behalf 
> --> Of Pierre Francois
> --> > > > > --> Sent: Monday, November 06, 2006 5:20 PM
> --> > > > > --> To: Sanjay Sane (sanjays)
> --> > > > > --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> --> > > > > --> Subject: Re: [rbridge] Traffic storms
> --> > > > > -->
> --> > > > > -->
> --> > > > > --> Sanjay,
> --> > > > > -->
> --> > > > > --> Sanjay Sane (sanjays) wrote:
> --> > > > > --> > Pierre,
> --> > > > > --> >
> --> > > > > --> > After reading through this paper, it seems the oFIB
> --> > > > > --> mechanism is suited
> --> > > > > --> > towards unicast traffic, or a 
> --> single-destination traffic.
> --> > > > > --> >
> --> > > > > --> > In TRILL, if the plan is to protect the 
> --> traffic storms, we *must*
> --> > > > > --> > protect the transient loops in the "trees" 
> --> that are built to carry
> --> > > > > --> > unknowns/floods, multicast as well as unicast. Such
> --> > > > > --> traffic is targetted
> --> > > > > --> > towards multiple destination, in fact, a tree 
> --> extends to all the
> --> > > > > --> > rbridges.
> --> > > > > --> >
> --> > > > > --> > After thinking a bit, if we think of extending the
> --> > > > > --> mechanisms in the
> --> > > > > --> > paper to cover "trees", we may have to delay the FIB
> --> > > > > --> ordering on all the
> --> > > > > --> > links that are part of the tree on any given rbridge.
> --> > > > > --> This could be very
> --> > > > > --> > inefficient. Do you think the oFIB mechanism would be
> --> > > > > --> suitable for such
> --> > > > > --> > trees?
> --> > > > > --> >
> --> > > > > -->
> --> > > > > --> Applying an "oFIB-like" solution for multicast 
> --> traffic is
> --> > > > > --> something we
> --> > > > > --> are working on.
> --> > > > > --> So, you can make ofib suitable for multicast 
> --> trees, but we
> --> > > > > --> intend to
> --> > > > > --> modify it for efficiency purposes.
> --> > > > > --> btw, you already face the ?loop problem for unicast
> --> > > > > --> traffic, and there
> --> > > > > --> oFIB can be applied as-is by rbridges..
> --> > > > > -->
> --> > > > > --> Pierre.
> --> > > > > --> > -Sanjay
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> > -----Original Message-----
> --> > > > > --> > From: [email-masked]
> --> > > > > --> [mailto:[email-masked]] On
> --> > > > > --> > Behalf Of Pierre Francois
> --> > > > > --> > Sent: Friday, November 03, 2006 5:10 PM
> --> > > > > --> > To: Silvano Gai
> --> > > > > --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> --> > > > > --> > Subject: Re: [rbridge] Traffic storms
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> > Silvano,
> --> > > > > --> >
> --> > > > > --> > See
> --> > > > > --> >
> --> > > > > --> 
> --> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
> --> > > > > --> ib-02.txt,
> --> > > > > --> > for a loop avoidance mechanism for IS-IS/OSPF.
> --> > > > > --> >
> --> > > > > --> > See you in SD,
> --> > > > > --> >
> --> > > > > --> > Pierre.
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >> Eric,
> --> > > > > --> >>
> --> > > > > --> >> Also I suggest that people that have solved 
> --> the problem
> --> > > > > --> of having a
> --> > > > > --> >> loop free topology using ISIS, submit 
> --> proposasl so that
> --> > > > > --> we can compare
> --> > > > > --> >>
> --> > > > > --> > them.
> --> > > > > --> >
> --> > > > > --> >> Unfortunately I don't have one.
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >> -- Silvano
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >> ________________________________
> --> > > > > --> >>
> --> > > > > --> >> From: [email-masked]
> --> > > > > --> [mailto:[email-masked]]
> --> > > > > --> >> On Behalf Of Gray, Eric
> --> > > > > --> >> Sent: Friday, November 03, 2006 11:54 AM
> --> > > > > --> >> To: Gideon Kaempfer; Radia Perlman
> --> > > > > --> >> Cc: [email-masked]
> --> > > > > --> >> Subject: Re: [rbridge] Traffic storms
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >> Gideon,
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>     "Drop BPDUs" is not (exactly) the same as ignore
> --> > > > > --> them.  We use the
> --> > > > > --> >>
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >> term
> --> > > > > --> >>
> --> > > > > --> >> as short-hand for the one of three options 
> --> we considered
> --> > > > > --> for handling
> --> > > > > --> >> BPDUs:
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>     Drop (do not participate actively in 
> --> STP, and do not
> --> > > > > --> pass BPDUs
> --> > > > > --> >> through),
> --> > > > > --> >>
> --> > > > > --> >>     Transparent (pass BPDUs through - potentially
> --> > > > > --> altering them in
> --> > > > > --> >> some way),
> --> > > > > --> >>
> --> > > > > --> >>     Participate (have each RBridge 
> --> participate in STP as
> --> > > > > --> if it were a
> --> > > > > --> >> bridge).
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >> Hence, when we say "Drop BPDUs" we are not 
> --> saying that
> --> > > > > --> we cannot look
> --> > > > > --> >>
> --> > > > > --> >> at them, we are just saying that we're not 
> --> doing one of
> --> > > > > --> the other two
> --> > > > > --> >> choices.
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >> --
> --> > > > > --> >>
> --> > > > > --> >> Eric
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >> ________________________________
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>        From: [email-masked]
> --> > > > > --> >> [mailto:[email-masked]] On 
> --> Behalf Of Gideon Kaempfer
> --> > > > > --> >>        Sent: Friday, November 03, 2006 1:40 AM
> --> > > > > --> >>        To: Radia Perlman
> --> > > > > --> >>        Cc: [email-masked]
> --> > > > > --> >>        Subject: Re: [rbridge] Traffic storms
> --> > > > > --> >>
> --> > > > > --> >>        Radia,
> --> > > > > --> >>
> --> > > > > --> >>        Wouldn't this create a link
> --> > > between TRILL and STP we are trying
> --> > > > > --> >>
> --> > > > > --> > to
> --> > > > > --> >
> --> > > > > --> >> avoid?
> --> > > > > --> >>
> --> > > > > --> >>        Relying on the fact that a
> --> > > LAN segment has some kind of unique
> --> > > > > --> >> identifier (such as the root bridge ID) seems like a
> --> > > > > --> very practical
> --> > > > > --> >> solution to me, but strongly reliant on the fact that
> --> > > > > --> the Rbridges
> --> > > > > --> >> actually process BPDUs. I thought they were 
> --> just meant to discard
> --> > > > > --> >>
> --> > > > > --> > them.
> --> > > > > --> >
> --> > > > > --> >> Is this acceptable?
> --> > > > > --> >>
> --> > > > > --> >>        Regrads,
> --> > > > > --> >>
> --> > > > > --> >>         Gidi
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>        On 11/3/06, Radia Perlman 
> --> <[email-masked]> wrote:
> --> > > > > --> >>
> --> > > > > --> >>        The simplest way to put it, I think, 
> --> is that in certain
> --> > > > > --> >>
> --> > > > > --> > transitory
> --> > > > > --> >
> --> > > > > --> >>        situations there might be two
> --> > > > > --> >>        RBridges that both think they
> --> > > are Designated RBridge, and that
> --> > > > > --> >>
> --> > > > > --> > is
> --> > > > > --> >
> --> > > > > --> >> bad,
> --> > > > > --> >>        but should stop
> --> > > > > --> >>        as soon as a single Hello is
> --> > > received by the RBridge who should
> --> > > > > --> >>
> --> > > > > --> > not
> --> > > > > --> >
> --> > > > > --> >> be
> --> > > > > --> >>        Designated.
> --> > > > > --> >>
> --> > > > > --> >>        I think PIM has similar
> --> > > transitory situations that can occur,
> --> > > > > --> >>
> --> > > > > --> > and
> --> > > > > --> >
> --> > > > > --> >>        bridges can also have (hopefully
> --> > > > > --> >>        temporary) problems if a
> --> > > repeater came up and merged two LANs. I
> --> > > > > --> >>
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >> think
> --> > > > > --> >>        such things are
> --> > > > > --> >>        annoying but not fatal. But I
> --> > > think it's possible we can with
> --> > > > > --> >>
> --> > > > > --> > little
> --> > > > > --> >
> --> > > > > --> >>        effort avoid this problem.
> --> > > > > --> >>
> --> > > > > --> >>        However, with RBridges, because the 
> --> bridge spanning tree
> --> > > > > --> >>
> --> > > > > --> > algorithm
> --> > > > > --> >
> --> > > > > --> >>        elects a Root, there's
> --> > > > > --> >>        really a way of uniquely
> --> > > identifying a LAN (where "LAN" is a
> --> > > > > --> >>
> --> > > > > --> > bunch of
> --> > > > > --> >
> --> > > > > --> >>        links connected with
> --> > > > > --> >>        bridges). The unique identifier is 
> --> the root bridge.
> --> > > > > --> >>
> --> > > > > --> >>        When the B1-B2 link is down,
> --> > > RB1 and RB2 will see the topology
> --> > > > > --> >>
> --> > > > > --> > as two
> --> > > > > --> >
> --> > > > > --> >>        separate links, and each
> --> > > > > --> >>        one will have a distinct
> --> > > spanning tree Root bridge (RB1 will see
> --> > > > > --> >>
> --> > > > > --> > B1,
> --> > > > > --> >
> --> > > > > --> >> and
> --> > > > > --> >>        RB2 will see B2 as the root).
> --> > > > > --> >>
> --> > > > > --> >>        When the B1-B2 link comes up,
> --> > > the bridges will first merge the
> --> > > > > --> >>
> --> > > > > --> > two
> --> > > > > --> >
> --> > > > > --> >>        links, and either RB1 or RB2 will
> --> > > > > --> >>        see that the bridge spanning
> --> > > tree root has changed. This will be
> --> > > > > --> >>        discovered before B1 and B2 forward
> --> > > > > --> >>        traffic across the link
> --> > > because of the bridge forwarding delay.
> --> > > > > --> >>        If B1 has better priority as
> --> > > bridge spanning tree root than B2,
> --> > > > > --> >>
> --> > > > > --> > then
> --> > > > > --> >
> --> > > > > --> >> RB1
> --> > > > > --> >>        will not notice anything
> --> > > > > --> >>        different when the B1-B2 link comes 
> --> up. But RB2 will notice
> --> > > > > --> >>        something different; the spanning 
> --> tree root has changed
> --> > > > > --> >>
> --> > > > > --> > identities
> --> > > > > --> >
> --> > > > > --> >> from
> --> > > > > --> >>        "B2" to "B1".
> --> > > > > --> >>
> --> > > > > --> >>        Given this, RB2 could
> --> > > temporarily stop forwarding to or from the
> --> > > > > --> >>
> --> > > > > --> > link
> --> > > > > --> >
> --> > > > > --> >>        when the Root bridge
> --> > > > > --> >>        changes identities, though it
> --> > > should definitely immediately send
> --> > > > > --> >>
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >> IS-IS
> --> > > > > --> >>        Hellos (either RB1 or RB2 will
> --> > > > > --> >>        be elected Designated Router in the 
> --> IS-IS election for that
> --> > > > > --> >>
> --> > > > > --> > link). If
> --> > > > > --> >
> --> > > > > --> >>        RB2 has better prioirty for
> --> > > > > --> >>        root, the RB1 will
> --> > > immediately stop forwarding to or from the
> --> > > > > --> >>
> --> > > > > --> > link
> --> > > > > --> >
> --> > > > > --> >> when
> --> > > > > --> >>        it sees the Hello from RB2.
> --> > > > > --> >>        If RB2 has better priority in the 
> --> IS-IS election, then RB1
> --> > > > > --> >>
> --> > > > > --> > should
> --> > > > > --> >
> --> > > > > --> >>        immediately send an IS-IS Hello
> --> > > > > --> >>        when it sees a Hello from a new 
> --> RBridge on the link.
> --> > > > > --> >>
> --> > > > > --> >>        So I think this is not a big
> --> > > deal, and that if we are worried,
> --> > > > > --> >>
> --> > > > > --> > we can
> --> > > > > --> >
> --> > > > > --> >>        specify that an RBridge should
> --> > > > > --> >>        stop acting like the
> --> > > Designated RBridge for a few seconds after
> --> > > > > --> >>
> --> > > > > --> > the
> --> > > > > --> >
> --> > > > > --> >>        identity of the Root in the spanning
> --> > > > > --> >>        tree algorithm changes.
> --> > > > > --> >>
> --> > > > > --> >>        Or we could be even fancier
> --> > > and have each RBridge announce in
> --> > > > > --> >>
> --> > > > > --> > its
> --> > > > > --> >
> --> > > > > --> >> IS-IS
> --> > > > > --> >>        Hellos which LAN IDs it
> --> > > > > --> >>        is Designated for, where a
> --> > > LAN ID is the MAC address of the Root
> --> > > > > --> >>
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >> bridge.
> --> > > > > --> >>        So RB1 continue
> --> > > > > --> >>        forwarding if the identity
> --> > > changes from B1 to B2 provided no
> --> > > > > --> >>
> --> > > > > --> > other
> --> > > > > --> >
> --> > > > > --> >>        RBridge has claimed to be connected
> --> > > > > --> >>        to B2. But if RB2's LSP
> --> > > claims it is attached to B2, then RB1
> --> > > > > --> >>
> --> > > > > --> > must
> --> > > > > --> >
> --> > > > > --> >> stop
> --> > > > > --> >>        forwarding for enough time
> --> > > > > --> >>        for the IS-IS election to sort itself 
> --> out and choose a
> --> > > > > --> >>
> --> > > > > --> > Designated
> --> > > > > --> >
> --> > > > > --> >> RBridge.
> --> > > > > --> >>
> --> > > > > --> >>        Radia
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>        Gideon Kaempfer wrote:
> --> > > > > --> >>
> --> > > > > --> >>        >Following mention by Silvano
> --> > > of broadcast and multicast storms
> --> > > > > --> >>
> --> > > > > --> > (and
> --> > > > > --> >
> --> > > > > --> >> the need
> --> > > > > --> >>        >to protect against them), I played 
> --> around with different
> --> > > > > --> >>
> --> > > > > --> > scenarios
> --> > > > > --> >
> --> > > > > --> >> and came
> --> > > > > --> >>        >upon one I would appreciate
> --> > > your comments on (in the hope I am
> --> > > > > --> >> pointing out
> --> > > > > --> >>        >a non-existent issue with
> --> > > TRILL). I believe a broadcast and
> --> > > > > --> >>
> --> > > > > --> > even a
> --> > > > > --> >
> --> > > > > --> >> unicast
> --> > > > > --> >>        >storm could be created as the result 
> --> of a loop that isn't
> --> > > > > --> >>
> --> > > > > --> > protected
> --> > > > > --> >
> --> > > > > --> >> by TTL
> --> > > > > --> >>        >nor by STP in the case of a
> --> > > link connecting two separate LAN
> --> > > > > --> >> segments coming
> --> > > > > --> >>        >to life.
> --> > > > > --> >>        >
> --> > > > > --> >>        >- RB1 ---- RB2 -
> --> > > > > --> >>        >   |        |
> --> > > > > --> >>        >-  B1 --x-- B2 -
> --> > > > > --> >>        >   |        |
> --> > > > > --> >>        >   H1       H2
> --> > > > > --> >>        >
> --> > > > > --> >>        >1. The network (segment) involved 
> --> consists of two Rbridges
> --> > > > > --> >>
> --> > > > > --> > (RB1,
> --> > > > > --> >
> --> > > > > --> >> RB2), two
> --> > > > > --> >>        >bridges (B1, B2) and two
> --> > > hosts (H1, H2). They are physically
> --> > > > > --> >> connected as
> --> > > > > --> >>        >depicted.
> --> > > > > --> >>        >2. State A: the direct link
> --> > > between B1 and B2 is down. B1 and
> --> > > > > --> >> B2 find
> --> > > > > --> >>        >themselves on different LAN segments 
> --> and hence different
> --> > > > > --> >>
> --> > > > > --> > spanning
> --> > > > > --> >
> --> > > > > --> >> trees. RB1
> --> > > > > --> >>        >and RB2 are both designated
> --> > > Rbridges (each for the segment of
> --> > > > > --> >>
> --> > > > > --> > the
> --> > > > > --> >
> --> > > > > --> >>        >corresponding bridge).
> --> > > > > --> >>        >3. State B: the direct link
> --> > > between B1 and B2 goes up (someone
> --> > > > > --> >> connects a
> --> > > > > --> >>        >cable). B1 and B2 discover
> --> > > each other and establish a common
> --> > > > > --> >> spanning tree.
> --> > > > > --> >>        >RB1 and RB2 both find themselves 
> --> attached to the same LAN
> --> > > > > --> >>
> --> > > > > --> > segment
> --> > > > > --> >
> --> > > > > --> >> and hence
> --> > > > > --> >>        >RB1 (without loss of
> --> > > generality) will eventually become the
> --> > > > > --> >> designated
> --> > > > > --> >>        >Rbridge for it.
> --> > > > > --> >>        >4. Just before RB1 and RB2
> --> > > identify that they are both on the
> --> > > > > --> >>
> --> > > > > --> > same
> --> > > > > --> >
> --> > > > > --> >> segment
> --> > > > > --> >>        >and RB2 stops functioning as
> --> > > a designated Rbridge the following
> --> > > > > --> >>
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > --> >> scenario
> --> > > > > --> >>        >seems possible:
> --> > > > > --> >>        >  a. H1 sends a broadcast frame.
> --> > > > > --> >>        >  b. B1 receives it and forwards to 
> --> RB1 and B2.
> --> > > > > --> >>        >  c. RB1 (encapsulates and) forwards to RB2.
> --> > > > > --> >>        >  d. B2 forwards to RB2 and H2.
> --> > > > > --> >>        >  e. RB2 forwards the copy
> --> > > from RB1 to B2 (and the copy from B2
> --> > > > > --> >>
> --> > > > > --> > to
> --> > > > > --> >
> --> > > > > --> >> RB1).
> --> > > > > --> >>        >  f. (RB1 forwards to B1.)
> --> > > > > --> >>        >  g. B2 forwards (again) to H2 and to B1.
> --> > > > > --> >>        >  h. B1 forwards to H1 (see
> --> > > remark below regarding filtering
> --> > > > > --> >>
> --> > > > > --> > table
> --> > > > > --> >
> --> > > > > --> >>        >contamination) and to RB1.
> --> > > > > --> >>        >  i. Etcetera etcetera.
> --> > > > > --> >>        >5. A broadcast storm is
> --> > > born, created by a loop that is not
> --> > > > > --> >> protected by TTL
> --> > > > > --> >>        >(due to the fact that
> --> > > forwarding between the Rbridges is only
> --> > > > > --> >>
> --> > > > > --> > across
> --> > > > > --> >
> --> > > > > --> >> a
> --> > > > > --> >>        >single hop) nor by STP (due
> --> > > to the fact that Rbridges do not
> --> > > > > --> >> participate in
> --> > > > > --> >>        >STP).
> --> > > > > --> >>        >6. If forwarding commences at the 
> --> hardware level and no
> --> > > > > --> >>
> --> > > > > --> > broadcast
> --> > > > > --> >
> --> > > > > --> >> rate
> --> > > > > --> >>        >limiting is in place, the
> --> > > storm may cause severe damage in a
> --> > > > > --> >>
> --> > > > > --> > very
> --> > > > > --> >
> --> > > > > --> >> short time
> --> > > > > --> >>        >(note that replicated frames are 
> --> sent to H1 and H2 (or any
> --> > > > > --> >>
> --> > > > > --> > network
> --> > > > > --> >
> --> > > > > --> >> they
> --> > > > > --> >>        >could represent).
> --> > > > > --> >>        >7. Another unfortunate
> --> > > effect of this storm is that B1 and B2
> --> > > > > --> >>
> --> > > > > --> > no
> --> > > > > --> >
> --> > > > > --> >> longer know
> --> > > > > --> >>        >where H1 is located (due to the 
> --> contamination of their
> --> > > > > --> >>
> --> > > > > --> > filtering
> --> > > > > --> >
> --> > > > > --> >> tables by a
> --> > > > > --> >>        >frame from H1 that arrives
> --> > > from the wrong direction (and in
> --> > > > > --> >>
> --> > > > > --> > fact
> --> > > > > --> >
> --> > > > > --> >> from
> --> > > > > --> >>        >multiple directions). As a
> --> > > result, a possible unicast frame
> --> > > > > --> >>
> --> > > > > --> > from H2
> --> > > > > --> >
> --> > > > > --> >> to H1
> --> > > > > --> >>        >will just join the storm over the 
> --> loop at least in one
> --> > > > > --> >>
> --> > > > > --> > direction
> --> > > > > --> >
> --> > > > > --> >> (RB2 will
> --> > > > > --> >>        >forward it to RB1) but will not 
> --> arrive at H1...
> --> > > > > --> >>        >
> --> > > > > --> >>        >One possible solution could
> --> > > be for RB2 to identify the fact
> --> > > > > --> >>
> --> > > > > --> > that it
> --> > > > > --> >
> --> > > > > --> >> is
> --> > > > > --> >>        >receiving a frame from a host with a 
> --> MAC address that is
> --> > > > > --> >>
> --> > > > > --> > associated
> --> > > > > --> >
> --> > > > > --> >> with a
> --> > > > > --> >>        >segment it thought it isn't
> --> > > connected to. Hence, it may trigger
> --> > > > > --> >>
> --> > > > > --> > an
> --> > > > > --> >
> --> > > > > --> >> immediate
> --> > > > > --> >>        >neighbor discovery / designated 
> --> Rbridge election. However,
> --> > > > > --> >>
> --> > > > > --> > because
> --> > > > > --> >
> --> > > > > --> >> Rbridges
> --> > > > > --> >>        >should allow host mobility,
> --> > > this frame may need to be forwarded
> --> > > > > --> >>
> --> > > > > --> > (and
> --> > > > > --> >
> --> > > > > --> >> hence
> --> > > > > --> >>        >the storm commences).
> --> > > > > --> >>        >
> --> > > > > --> >>        >As mentioned above, any comments are welcome.
> --> > > > > --> >>        >  Gideon Kaempfer
> --> > > > > --> >>        >
> --> > > > > --> >>        
> --> >_______________________________________________
> --> > > > > --> >>        >rbridge mailing list
> --> > > > > --> >>        >[email-masked]
> --> > > > > --> >>        > 
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > > > > --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
> --> > > > > --> >>        >
> --> > > > > --> >>        >
> --> > > > > --> >>
> --> > > > > --> >>        
> --> _______________________________________________
> --> > > > > --> >>        rbridge mailing list
> --> > > > > --> >>        [email-masked]
> --> > > > > --> >>        
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> >>
> --> > > > > --> > _______________________________________________
> --> > > > > --> > rbridge mailing list
> --> > > > > --> > [email-masked]
> --> > > > > --> > http://mailman.postel.org/mailman/listinfo/rbridge
> --> > > > > --> >
> --> > > > > --> >
> --> > > > > -->
> --> > > > > --> _______________________________________________
> --> > > > > --> rbridge mailing list
> --> > > > > --> [email-masked]
> --> > > > > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > > > > -->
> --> > > > >
> --> > > > >
> --> > > >
> --> > > > _______________________________________________
> --> > > > rbridge mailing list
> --> > > > [email-masked]
> --> > > > http://mailman.postel.org/mailman/listinfo/rbridge
> --> > > >
> --> > >
> --> > >_______________________________________________
> --> > >rbridge mailing list
> --> > >[email-masked]
> --> > >http://mailman.postel.org/mailman/listinfo/rbridge
> --> >
> --> 
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> 
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>
>   

From: "Gray, Eric" <[email-masked]>
To: Alia Atlas <[email-masked]>, mike shand <[email-masked]>
Date: Wed, 8 Nov 2006 16:53:45 -0500 
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 26943

Mike,

	To add one point to what Alia said, we need to make up our
minds what we want the failure mode to be (or - shudder - what the
options should be for different deployment scenarios).

	At yesterday's meeting, there was substantial support for a
failure mode that "prefers" drop behavior to "clever-ness."  I can
think of no good reason why this should be the model in some cases
and not in others.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Alia Atlas
--> Sent: Wednesday, November 08, 2006 4:43 PM
--> To: mike shand
--> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
--> Subject: Re: [rbridge] Traffic storms
--> 
--> On 11/8/06, mike shand <[email-masked]> wrote:
--> > At 23:31 06/11/2006, Alia Atlas wrote:
--> > >The multi-hop micro-forwarding loops only come up with 
--> asymmetric link
--> > >costs.
--> >
--> > We used to think that was true, but it is also
--> > possible to introduce multihop forwarding loops via ECMP.
--> >
--> > e.g
--> >                 D
--> >               /  \
--> >          A------B----C
--> >          |           |
--> >       E-----------F
--> >
--> > All costs 1, except BC = 2 and EF = 10 (both symmetric)
--> > When AB fails C was previously forwarding to A via both B and D
--> > After, B forwards via both D and C
--> > So if a packet gets sent (say) C->B AND B->D we end up 
--> with a cyclic loop.
--> 
--> Interesting case.  When we'd discussed it before, I think 
--> we'd missed
--> this ECMP case.
--> What are the implications for PLSN  with this?  Does your simulator
--> catch these cases?
--> 
--> > >  In TRILL, I believe the assumption is that there aren't
--> > >asymmetric link costs so that traffic flows are bidirectional.
--> > >
--> > >For this case, dropping frames that would transmit 
--> through the same
--> > >interface that received it would handle the 
--> micro-forwarding loops, I
--> > >believe.
--> >
--> > Handle, in the sense of avoiding looping, but of
--> > course the traffic would be dropped!
--> 
--> Sure - but in the absence of a fast-reroute technology, that's what
--> you need to do on failures.
--> 
--> Alia
--> 
--> >          Mike
--> >
--> >
--> >
--> > >Alia
--> > >
--> > >On 11/6/06, Pierre Francois <[email-masked]> wrote:
--> > > > Gray, Eric wrote:
--> > > > > Pierre,
--> > > > >
--> > > > >       The "?loop problem" is apparently an issue 
--> with some devices where
--> > > > > reasonable forwarding behavior limitations have 
--> been "optimized out."  A
--> > > > > better way to handle the ?loop problem with 
--> RBridges is not to optimize
--> > > > > out the behavior that prevents it - i.e. - a 
--> prohibition against emitting
--> > > > > a frame on the same interface on which it was received.
--> > > > >       To be clear, at either the last IETF
--> > > meeting, or the one just before
--> > > > > that one, it was made fairly clear that the ?loop 
--> problem occurs when a
--> > > > > device sends a PDU out of the same interface on 
--> which it was received. In
--> > > > > comparison with simply dropping such a PDU, this 
--> behavior is pathological
--> > > > > - particularly in the case of L2 forwarding generally.
--> > > > >
--> > > >
--> > > > That would mean that under a **planned** removal of 
--> an rbridge-rbridge
--> > > > link, where the rbridge network could suffer of forwarding
--> > > > loops, you could drop traffic. Indeed,  "IS-IS like 
--> FIBs" are updated in
--> > > > an asynchronous fashion upon topological changes, so 
--> that transient
--> > > > inconsistency in the forwarding of
--> > > > unicast traffic, leading to ?loops,  is something 
--> that regularly occur.
--> > > >
--> > > > Moreover, if you use TE tools to set up the metrics 
--> of your links, you
--> > > > might end up with metric(X-->Y) != metric(Y-->X).
--> > > > In such cases, "longer ?loops", i.e. loops involving 
--> 3 or 4 rBridges can
--> > > > occur upon convergence,
--> > > > in which case the simple "incoming interface 
--> <>outgoing interface" loop
--> > > > mitigation check won't work.
--> > > >
--> > > > Pierre.
--> > > > >       I am not saying that we do not need ordered 
--> FIB for loop prevention
--> > > > > generally, but we should not need it for the ?loop problem.
--> > > > >
--> > > >
--> > > >
--> > > > > --
--> > > > > Eric
--> > > > >
--> > > > > --> -----Original Message-----
--> > > > > --> From: [email-masked]
--> > > > > --> [mailto:[email-masked]] On Behalf 
--> Of Pierre Francois
--> > > > > --> Sent: Monday, November 06, 2006 5:20 PM
--> > > > > --> To: Sanjay Sane (sanjays)
--> > > > > --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
--> > > > > --> Subject: Re: [rbridge] Traffic storms
--> > > > > -->
--> > > > > -->
--> > > > > --> Sanjay,
--> > > > > -->
--> > > > > --> Sanjay Sane (sanjays) wrote:
--> > > > > --> > Pierre,
--> > > > > --> >
--> > > > > --> > After reading through this paper, it seems the oFIB
--> > > > > --> mechanism is suited
--> > > > > --> > towards unicast traffic, or a 
--> single-destination traffic.
--> > > > > --> >
--> > > > > --> > In TRILL, if the plan is to protect the 
--> traffic storms, we *must*
--> > > > > --> > protect the transient loops in the "trees" 
--> that are built to carry
--> > > > > --> > unknowns/floods, multicast as well as unicast. Such
--> > > > > --> traffic is targetted
--> > > > > --> > towards multiple destination, in fact, a tree 
--> extends to all the
--> > > > > --> > rbridges.
--> > > > > --> >
--> > > > > --> > After thinking a bit, if we think of extending the
--> > > > > --> mechanisms in the
--> > > > > --> > paper to cover "trees", we may have to delay the FIB
--> > > > > --> ordering on all the
--> > > > > --> > links that are part of the tree on any given rbridge.
--> > > > > --> This could be very
--> > > > > --> > inefficient. Do you think the oFIB mechanism would be
--> > > > > --> suitable for such
--> > > > > --> > trees?
--> > > > > --> >
--> > > > > -->
--> > > > > --> Applying an "oFIB-like" solution for multicast 
--> traffic is
--> > > > > --> something we
--> > > > > --> are working on.
--> > > > > --> So, you can make ofib suitable for multicast 
--> trees, but we
--> > > > > --> intend to
--> > > > > --> modify it for efficiency purposes.
--> > > > > --> btw, you already face the ?loop problem for unicast
--> > > > > --> traffic, and there
--> > > > > --> oFIB can be applied as-is by rbridges..
--> > > > > -->
--> > > > > --> Pierre.
--> > > > > --> > -Sanjay
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >
--> > > > > --> > -----Original Message-----
--> > > > > --> > From: [email-masked]
--> > > > > --> [mailto:[email-masked]] On
--> > > > > --> > Behalf Of Pierre Francois
--> > > > > --> > Sent: Friday, November 03, 2006 5:10 PM
--> > > > > --> > To: Silvano Gai
--> > > > > --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
--> > > > > --> > Subject: Re: [rbridge] Traffic storms
--> > > > > --> >
--> > > > > --> >
--> > > > > --> > Silvano,
--> > > > > --> >
--> > > > > --> > See
--> > > > > --> >
--> > > > > --> 
--> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
--> > > > > --> ib-02.txt,
--> > > > > --> > for a loop avoidance mechanism for IS-IS/OSPF.
--> > > > > --> >
--> > > > > --> > See you in SD,
--> > > > > --> >
--> > > > > --> > Pierre.
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >
--> > > > > --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >> Eric,
--> > > > > --> >>
--> > > > > --> >> Also I suggest that people that have solved 
--> the problem
--> > > > > --> of having a
--> > > > > --> >> loop free topology using ISIS, submit 
--> proposasl so that
--> > > > > --> we can compare
--> > > > > --> >>
--> > > > > --> > them.
--> > > > > --> >
--> > > > > --> >> Unfortunately I don't have one.
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >> -- Silvano
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >> ________________________________
--> > > > > --> >>
--> > > > > --> >> From: [email-masked]
--> > > > > --> [mailto:[email-masked]]
--> > > > > --> >> On Behalf Of Gray, Eric
--> > > > > --> >> Sent: Friday, November 03, 2006 11:54 AM
--> > > > > --> >> To: Gideon Kaempfer; Radia Perlman
--> > > > > --> >> Cc: [email-masked]
--> > > > > --> >> Subject: Re: [rbridge] Traffic storms
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >> Gideon,
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>     "Drop BPDUs" is not (exactly) the same as ignore
--> > > > > --> them.  We use the
--> > > > > --> >>
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >> term
--> > > > > --> >>
--> > > > > --> >> as short-hand for the one of three options 
--> we considered
--> > > > > --> for handling
--> > > > > --> >> BPDUs:
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>     Drop (do not participate actively in 
--> STP, and do not
--> > > > > --> pass BPDUs
--> > > > > --> >> through),
--> > > > > --> >>
--> > > > > --> >>     Transparent (pass BPDUs through - potentially
--> > > > > --> altering them in
--> > > > > --> >> some way),
--> > > > > --> >>
--> > > > > --> >>     Participate (have each RBridge 
--> participate in STP as
--> > > > > --> if it were a
--> > > > > --> >> bridge).
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >> Hence, when we say "Drop BPDUs" we are not 
--> saying that
--> > > > > --> we cannot look
--> > > > > --> >>
--> > > > > --> >> at them, we are just saying that we're not 
--> doing one of
--> > > > > --> the other two
--> > > > > --> >> choices.
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >> --
--> > > > > --> >>
--> > > > > --> >> Eric
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >> ________________________________
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>        From: [email-masked]
--> > > > > --> >> [mailto:[email-masked]] On 
--> Behalf Of Gideon Kaempfer
--> > > > > --> >>        Sent: Friday, November 03, 2006 1:40 AM
--> > > > > --> >>        To: Radia Perlman
--> > > > > --> >>        Cc: [email-masked]
--> > > > > --> >>        Subject: Re: [rbridge] Traffic storms
--> > > > > --> >>
--> > > > > --> >>        Radia,
--> > > > > --> >>
--> > > > > --> >>        Wouldn't this create a link
--> > > between TRILL and STP we are trying
--> > > > > --> >>
--> > > > > --> > to
--> > > > > --> >
--> > > > > --> >> avoid?
--> > > > > --> >>
--> > > > > --> >>        Relying on the fact that a
--> > > LAN segment has some kind of unique
--> > > > > --> >> identifier (such as the root bridge ID) seems like a
--> > > > > --> very practical
--> > > > > --> >> solution to me, but strongly reliant on the fact that
--> > > > > --> the Rbridges
--> > > > > --> >> actually process BPDUs. I thought they were 
--> just meant to discard
--> > > > > --> >>
--> > > > > --> > them.
--> > > > > --> >
--> > > > > --> >> Is this acceptable?
--> > > > > --> >>
--> > > > > --> >>        Regrads,
--> > > > > --> >>
--> > > > > --> >>         Gidi
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>        On 11/3/06, Radia Perlman 
--> <[email-masked]> wrote:
--> > > > > --> >>
--> > > > > --> >>        The simplest way to put it, I think, 
--> is that in certain
--> > > > > --> >>
--> > > > > --> > transitory
--> > > > > --> >
--> > > > > --> >>        situations there might be two
--> > > > > --> >>        RBridges that both think they
--> > > are Designated RBridge, and that
--> > > > > --> >>
--> > > > > --> > is
--> > > > > --> >
--> > > > > --> >> bad,
--> > > > > --> >>        but should stop
--> > > > > --> >>        as soon as a single Hello is
--> > > received by the RBridge who should
--> > > > > --> >>
--> > > > > --> > not
--> > > > > --> >
--> > > > > --> >> be
--> > > > > --> >>        Designated.
--> > > > > --> >>
--> > > > > --> >>        I think PIM has similar
--> > > transitory situations that can occur,
--> > > > > --> >>
--> > > > > --> > and
--> > > > > --> >
--> > > > > --> >>        bridges can also have (hopefully
--> > > > > --> >>        temporary) problems if a
--> > > repeater came up and merged two LANs. I
--> > > > > --> >>
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >> think
--> > > > > --> >>        such things are
--> > > > > --> >>        annoying but not fatal. But I
--> > > think it's possible we can with
--> > > > > --> >>
--> > > > > --> > little
--> > > > > --> >
--> > > > > --> >>        effort avoid this problem.
--> > > > > --> >>
--> > > > > --> >>        However, with RBridges, because the 
--> bridge spanning tree
--> > > > > --> >>
--> > > > > --> > algorithm
--> > > > > --> >
--> > > > > --> >>        elects a Root, there's
--> > > > > --> >>        really a way of uniquely
--> > > identifying a LAN (where "LAN" is a
--> > > > > --> >>
--> > > > > --> > bunch of
--> > > > > --> >
--> > > > > --> >>        links connected with
--> > > > > --> >>        bridges). The unique identifier is 
--> the root bridge.
--> > > > > --> >>
--> > > > > --> >>        When the B1-B2 link is down,
--> > > RB1 and RB2 will see the topology
--> > > > > --> >>
--> > > > > --> > as two
--> > > > > --> >
--> > > > > --> >>        separate links, and each
--> > > > > --> >>        one will have a distinct
--> > > spanning tree Root bridge (RB1 will see
--> > > > > --> >>
--> > > > > --> > B1,
--> > > > > --> >
--> > > > > --> >> and
--> > > > > --> >>        RB2 will see B2 as the root).
--> > > > > --> >>
--> > > > > --> >>        When the B1-B2 link comes up,
--> > > the bridges will first merge the
--> > > > > --> >>
--> > > > > --> > two
--> > > > > --> >
--> > > > > --> >>        links, and either RB1 or RB2 will
--> > > > > --> >>        see that the bridge spanning
--> > > tree root has changed. This will be
--> > > > > --> >>        discovered before B1 and B2 forward
--> > > > > --> >>        traffic across the link
--> > > because of the bridge forwarding delay.
--> > > > > --> >>        If B1 has better priority as
--> > > bridge spanning tree root than B2,
--> > > > > --> >>
--> > > > > --> > then
--> > > > > --> >
--> > > > > --> >> RB1
--> > > > > --> >>        will not notice anything
--> > > > > --> >>        different when the B1-B2 link comes 
--> up. But RB2 will notice
--> > > > > --> >>        something different; the spanning 
--> tree root has changed
--> > > > > --> >>
--> > > > > --> > identities
--> > > > > --> >
--> > > > > --> >> from
--> > > > > --> >>        "B2" to "B1".
--> > > > > --> >>
--> > > > > --> >>        Given this, RB2 could
--> > > temporarily stop forwarding to or from the
--> > > > > --> >>
--> > > > > --> > link
--> > > > > --> >
--> > > > > --> >>        when the Root bridge
--> > > > > --> >>        changes identities, though it
--> > > should definitely immediately send
--> > > > > --> >>
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >> IS-IS
--> > > > > --> >>        Hellos (either RB1 or RB2 will
--> > > > > --> >>        be elected Designated Router in the 
--> IS-IS election for that
--> > > > > --> >>
--> > > > > --> > link). If
--> > > > > --> >
--> > > > > --> >>        RB2 has better prioirty for
--> > > > > --> >>        root, the RB1 will
--> > > immediately stop forwarding to or from the
--> > > > > --> >>
--> > > > > --> > link
--> > > > > --> >
--> > > > > --> >> when
--> > > > > --> >>        it sees the Hello from RB2.
--> > > > > --> >>        If RB2 has better priority in the 
--> IS-IS election, then RB1
--> > > > > --> >>
--> > > > > --> > should
--> > > > > --> >
--> > > > > --> >>        immediately send an IS-IS Hello
--> > > > > --> >>        when it sees a Hello from a new 
--> RBridge on the link.
--> > > > > --> >>
--> > > > > --> >>        So I think this is not a big
--> > > deal, and that if we are worried,
--> > > > > --> >>
--> > > > > --> > we can
--> > > > > --> >
--> > > > > --> >>        specify that an RBridge should
--> > > > > --> >>        stop acting like the
--> > > Designated RBridge for a few seconds after
--> > > > > --> >>
--> > > > > --> > the
--> > > > > --> >
--> > > > > --> >>        identity of the Root in the spanning
--> > > > > --> >>        tree algorithm changes.
--> > > > > --> >>
--> > > > > --> >>        Or we could be even fancier
--> > > and have each RBridge announce in
--> > > > > --> >>
--> > > > > --> > its
--> > > > > --> >
--> > > > > --> >> IS-IS
--> > > > > --> >>        Hellos which LAN IDs it
--> > > > > --> >>        is Designated for, where a
--> > > LAN ID is the MAC address of the Root
--> > > > > --> >>
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >> bridge.
--> > > > > --> >>        So RB1 continue
--> > > > > --> >>        forwarding if the identity
--> > > changes from B1 to B2 provided no
--> > > > > --> >>
--> > > > > --> > other
--> > > > > --> >
--> > > > > --> >>        RBridge has claimed to be connected
--> > > > > --> >>        to B2. But if RB2's LSP
--> > > claims it is attached to B2, then RB1
--> > > > > --> >>
--> > > > > --> > must
--> > > > > --> >
--> > > > > --> >> stop
--> > > > > --> >>        forwarding for enough time
--> > > > > --> >>        for the IS-IS election to sort itself 
--> out and choose a
--> > > > > --> >>
--> > > > > --> > Designated
--> > > > > --> >
--> > > > > --> >> RBridge.
--> > > > > --> >>
--> > > > > --> >>        Radia
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>        Gideon Kaempfer wrote:
--> > > > > --> >>
--> > > > > --> >>        >Following mention by Silvano
--> > > of broadcast and multicast storms
--> > > > > --> >>
--> > > > > --> > (and
--> > > > > --> >
--> > > > > --> >> the need
--> > > > > --> >>        >to protect against them), I played 
--> around with different
--> > > > > --> >>
--> > > > > --> > scenarios
--> > > > > --> >
--> > > > > --> >> and came
--> > > > > --> >>        >upon one I would appreciate
--> > > your comments on (in the hope I am
--> > > > > --> >> pointing out
--> > > > > --> >>        >a non-existent issue with
--> > > TRILL). I believe a broadcast and
--> > > > > --> >>
--> > > > > --> > even a
--> > > > > --> >
--> > > > > --> >> unicast
--> > > > > --> >>        >storm could be created as the result 
--> of a loop that isn't
--> > > > > --> >>
--> > > > > --> > protected
--> > > > > --> >
--> > > > > --> >> by TTL
--> > > > > --> >>        >nor by STP in the case of a
--> > > link connecting two separate LAN
--> > > > > --> >> segments coming
--> > > > > --> >>        >to life.
--> > > > > --> >>        >
--> > > > > --> >>        >- RB1 ---- RB2 -
--> > > > > --> >>        >   |        |
--> > > > > --> >>        >-  B1 --x-- B2 -
--> > > > > --> >>        >   |        |
--> > > > > --> >>        >   H1       H2
--> > > > > --> >>        >
--> > > > > --> >>        >1. The network (segment) involved 
--> consists of two Rbridges
--> > > > > --> >>
--> > > > > --> > (RB1,
--> > > > > --> >
--> > > > > --> >> RB2), two
--> > > > > --> >>        >bridges (B1, B2) and two
--> > > hosts (H1, H2). They are physically
--> > > > > --> >> connected as
--> > > > > --> >>        >depicted.
--> > > > > --> >>        >2. State A: the direct link
--> > > between B1 and B2 is down. B1 and
--> > > > > --> >> B2 find
--> > > > > --> >>        >themselves on different LAN segments 
--> and hence different
--> > > > > --> >>
--> > > > > --> > spanning
--> > > > > --> >
--> > > > > --> >> trees. RB1
--> > > > > --> >>        >and RB2 are both designated
--> > > Rbridges (each for the segment of
--> > > > > --> >>
--> > > > > --> > the
--> > > > > --> >
--> > > > > --> >>        >corresponding bridge).
--> > > > > --> >>        >3. State B: the direct link
--> > > between B1 and B2 goes up (someone
--> > > > > --> >> connects a
--> > > > > --> >>        >cable). B1 and B2 discover
--> > > each other and establish a common
--> > > > > --> >> spanning tree.
--> > > > > --> >>        >RB1 and RB2 both find themselves 
--> attached to the same LAN
--> > > > > --> >>
--> > > > > --> > segment
--> > > > > --> >
--> > > > > --> >> and hence
--> > > > > --> >>        >RB1 (without loss of
--> > > generality) will eventually become the
--> > > > > --> >> designated
--> > > > > --> >>        >Rbridge for it.
--> > > > > --> >>        >4. Just before RB1 and RB2
--> > > identify that they are both on the
--> > > > > --> >>
--> > > > > --> > same
--> > > > > --> >
--> > > > > --> >> segment
--> > > > > --> >>        >and RB2 stops functioning as
--> > > a designated Rbridge the following
--> > > > > --> >>
--> > > > > --> >
--> > > > > --> >
--> > > > > --> >> scenario
--> > > > > --> >>        >seems possible:
--> > > > > --> >>        >  a. H1 sends a broadcast frame.
--> > > > > --> >>        >  b. B1 receives it and forwards to 
--> RB1 and B2.
--> > > > > --> >>        >  c. RB1 (encapsulates and) forwards to RB2.
--> > > > > --> >>        >  d. B2 forwards to RB2 and H2.
--> > > > > --> >>        >  e. RB2 forwards the copy
--> > > from RB1 to B2 (and the copy from B2
--> > > > > --> >>
--> > > > > --> > to
--> > > > > --> >
--> > > > > --> >> RB1).
--> > > > > --> >>        >  f. (RB1 forwards to B1.)
--> > > > > --> >>        >  g. B2 forwards (again) to H2 and to B1.
--> > > > > --> >>        >  h. B1 forwards to H1 (see
--> > > remark below regarding filtering
--> > > > > --> >>
--> > > > > --> > table
--> > > > > --> >
--> > > > > --> >>        >contamination) and to RB1.
--> > > > > --> >>        >  i. Etcetera etcetera.
--> > > > > --> >>        >5. A broadcast storm is
--> > > born, created by a loop that is not
--> > > > > --> >> protected by TTL
--> > > > > --> >>        >(due to the fact that
--> > > forwarding between the Rbridges is only
--> > > > > --> >>
--> > > > > --> > across
--> > > > > --> >
--> > > > > --> >> a
--> > > > > --> >>        >single hop) nor by STP (due
--> > > to the fact that Rbridges do not
--> > > > > --> >> participate in
--> > > > > --> >>        >STP).
--> > > > > --> >>        >6. If forwarding commences at the 
--> hardware level and no
--> > > > > --> >>
--> > > > > --> > broadcast
--> > > > > --> >
--> > > > > --> >> rate
--> > > > > --> >>        >limiting is in place, the
--> > > storm may cause severe damage in a
--> > > > > --> >>
--> > > > > --> > very
--> > > > > --> >
--> > > > > --> >> short time
--> > > > > --> >>        >(note that replicated frames are 
--> sent to H1 and H2 (or any
--> > > > > --> >>
--> > > > > --> > network
--> > > > > --> >
--> > > > > --> >> they
--> > > > > --> >>        >could represent).
--> > > > > --> >>        >7. Another unfortunate
--> > > effect of this storm is that B1 and B2
--> > > > > --> >>
--> > > > > --> > no
--> > > > > --> >
--> > > > > --> >> longer know
--> > > > > --> >>        >where H1 is located (due to the 
--> contamination of their
--> > > > > --> >>
--> > > > > --> > filtering
--> > > > > --> >
--> > > > > --> >> tables by a
--> > > > > --> >>        >frame from H1 that arrives
--> > > from the wrong direction (and in
--> > > > > --> >>
--> > > > > --> > fact
--> > > > > --> >
--> > > > > --> >> from
--> > > > > --> >>        >multiple directions). As a
--> > > result, a possible unicast frame
--> > > > > --> >>
--> > > > > --> > from H2
--> > > > > --> >
--> > > > > --> >> to H1
--> > > > > --> >>        >will just join the storm over the 
--> loop at least in one
--> > > > > --> >>
--> > > > > --> > direction
--> > > > > --> >
--> > > > > --> >> (RB2 will
--> > > > > --> >>        >forward it to RB1) but will not 
--> arrive at H1...
--> > > > > --> >>        >
--> > > > > --> >>        >One possible solution could
--> > > be for RB2 to identify the fact
--> > > > > --> >>
--> > > > > --> > that it
--> > > > > --> >
--> > > > > --> >> is
--> > > > > --> >>        >receiving a frame from a host with a 
--> MAC address that is
--> > > > > --> >>
--> > > > > --> > associated
--> > > > > --> >
--> > > > > --> >> with a
--> > > > > --> >>        >segment it thought it isn't
--> > > connected to. Hence, it may trigger
--> > > > > --> >>
--> > > > > --> > an
--> > > > > --> >
--> > > > > --> >> immediate
--> > > > > --> >>        >neighbor discovery / designated 
--> Rbridge election. However,
--> > > > > --> >>
--> > > > > --> > because
--> > > > > --> >
--> > > > > --> >> Rbridges
--> > > > > --> >>        >should allow host mobility,
--> > > this frame may need to be forwarded
--> > > > > --> >>
--> > > > > --> > (and
--> > > > > --> >
--> > > > > --> >> hence
--> > > > > --> >>        >the storm commences).
--> > > > > --> >>        >
--> > > > > --> >>        >As mentioned above, any comments are welcome.
--> > > > > --> >>        >  Gideon Kaempfer
--> > > > > --> >>        >
--> > > > > --> >>        
--> >_______________________________________________
--> > > > > --> >>        >rbridge mailing list
--> > > > > --> >>        >[email-masked]
--> > > > > --> >>        > 
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> > > > > --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
--> > > > > --> >>        >
--> > > > > --> >>        >
--> > > > > --> >>
--> > > > > --> >>        
--> _______________________________________________
--> > > > > --> >>        rbridge mailing list
--> > > > > --> >>        [email-masked]
--> > > > > --> >>        
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> >>
--> > > > > --> > _______________________________________________
--> > > > > --> > rbridge mailing list
--> > > > > --> > [email-masked]
--> > > > > --> > http://mailman.postel.org/mailman/listinfo/rbridge
--> > > > > --> >
--> > > > > --> >
--> > > > > -->
--> > > > > --> _______________________________________________
--> > > > > --> rbridge mailing list
--> > > > > --> [email-masked]
--> > > > > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > > > > -->
--> > > > >
--> > > > >
--> > > >
--> > > > _______________________________________________
--> > > > rbridge mailing list
--> > > > [email-masked]
--> > > > http://mailman.postel.org/mailman/listinfo/rbridge
--> > > >
--> > >
--> > >_______________________________________________
--> > >rbridge mailing list
--> > >[email-masked]
--> > >http://mailman.postel.org/mailman/listinfo/rbridge
--> >
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Wed, 08 Nov 2006 13:48:43 -0800
From: Pierre Francois <[email-masked]>
To: Alia Atlas <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Reply-To: [email-masked]
Status: RO
Content-Length: 24120

Alia,

This problem has been raised a while ago, but as far as I remember, we 
found out that it didn't make PLSN rule for "symmetrical
links only" networks incorrect. i.e. you really need asym. link metrics 
to have plsn loop free rules go wrong, ECMP
could not make plsn do bad things.

Pierre.

Alia Atlas wrote:
> On 11/8/06, mike shand <[email-masked]> wrote:
>> At 23:31 06/11/2006, Alia Atlas wrote:
>> >The multi-hop micro-forwarding loops only come up with asymmetric link
>> >costs.
>>
>> We used to think that was true, but it is also
>> possible to introduce multihop forwarding loops via ECMP.
>>
>> e.g
>>                 D
>>               /  \
>>          A------B----C
>>          |           |
>>       E-----------F
>>
>> All costs 1, except BC = 2 and EF = 10 (both symmetric)
>> When AB fails C was previously forwarding to A via both B and D
>> After, B forwards via both D and C
>> So if a packet gets sent (say) C->B AND B->D we end up with a cyclic 
>> loop.
>
> Interesting case.  When we'd discussed it before, I think we'd missed
> this ECMP case.
> What are the implications for PLSN  with this?  Does your simulator
> catch these cases?
>
>> >  In TRILL, I believe the assumption is that there aren't
>> >asymmetric link costs so that traffic flows are bidirectional.
>> >
>> >For this case, dropping frames that would transmit through the same
>> >interface that received it would handle the micro-forwarding loops, I
>> >believe.
>>
>> Handle, in the sense of avoiding looping, but of
>> course the traffic would be dropped!
>
> Sure - but in the absence of a fast-reroute technology, that's what
> you need to do on failures.
>
> Alia
>
>>          Mike
>>
>>
>>
>> >Alia
>> >
>> >On 11/6/06, Pierre Francois <[email-masked]> wrote:
>> > > Gray, Eric wrote:
>> > > > Pierre,
>> > > >
>> > > >       The "?loop problem" is apparently an issue with some 
>> devices where
>> > > > reasonable forwarding behavior limitations have been "optimized 
>> out."  A
>> > > > better way to handle the ?loop problem with RBridges is not to 
>> optimize
>> > > > out the behavior that prevents it - i.e. - a prohibition 
>> against emitting
>> > > > a frame on the same interface on which it was received.
>> > > >       To be clear, at either the last IETF
>> > meeting, or the one just before
>> > > > that one, it was made fairly clear that the ?loop problem 
>> occurs when a
>> > > > device sends a PDU out of the same interface on which it was 
>> received. In
>> > > > comparison with simply dropping such a PDU, this behavior is 
>> pathological
>> > > > - particularly in the case of L2 forwarding generally.
>> > > >
>> > >
>> > > That would mean that under a **planned** removal of an 
>> rbridge-rbridge
>> > > link, where the rbridge network could suffer of forwarding
>> > > loops, you could drop traffic. Indeed,  "IS-IS like FIBs" are 
>> updated in
>> > > an asynchronous fashion upon topological changes, so that transient
>> > > inconsistency in the forwarding of
>> > > unicast traffic, leading to ?loops,  is something that regularly 
>> occur.
>> > >
>> > > Moreover, if you use TE tools to set up the metrics of your 
>> links, you
>> > > might end up with metric(X-->Y) != metric(Y-->X).
>> > > In such cases, "longer ?loops", i.e. loops involving 3 or 4 
>> rBridges can
>> > > occur upon convergence,
>> > > in which case the simple "incoming interface <>outgoing 
>> interface" loop
>> > > mitigation check won't work.
>> > >
>> > > Pierre.
>> > > >       I am not saying that we do not need ordered FIB for loop 
>> prevention
>> > > > generally, but we should not need it for the ?loop problem.
>> > > >
>> > >
>> > >
>> > > > --
>> > > > Eric
>> > > >
>> > > > --> -----Original Message-----
>> > > > --> From: [email-masked]
>> > > > --> [mailto:[email-masked]] On Behalf Of Pierre 
>> Francois
>> > > > --> Sent: Monday, November 06, 2006 5:20 PM
>> > > > --> To: Sanjay Sane (sanjays)
>> > > > --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
>> > > > --> Subject: Re: [rbridge] Traffic storms
>> > > > -->
>> > > > -->
>> > > > --> Sanjay,
>> > > > -->
>> > > > --> Sanjay Sane (sanjays) wrote:
>> > > > --> > Pierre,
>> > > > --> >
>> > > > --> > After reading through this paper, it seems the oFIB
>> > > > --> mechanism is suited
>> > > > --> > towards unicast traffic, or a single-destination traffic.
>> > > > --> >
>> > > > --> > In TRILL, if the plan is to protect the traffic storms, 
>> we *must*
>> > > > --> > protect the transient loops in the "trees" that are built 
>> to carry
>> > > > --> > unknowns/floods, multicast as well as unicast. Such
>> > > > --> traffic is targetted
>> > > > --> > towards multiple destination, in fact, a tree extends to 
>> all the
>> > > > --> > rbridges.
>> > > > --> >
>> > > > --> > After thinking a bit, if we think of extending the
>> > > > --> mechanisms in the
>> > > > --> > paper to cover "trees", we may have to delay the FIB
>> > > > --> ordering on all the
>> > > > --> > links that are part of the tree on any given rbridge.
>> > > > --> This could be very
>> > > > --> > inefficient. Do you think the oFIB mechanism would be
>> > > > --> suitable for such
>> > > > --> > trees?
>> > > > --> >
>> > > > -->
>> > > > --> Applying an "oFIB-like" solution for multicast traffic is
>> > > > --> something we
>> > > > --> are working on.
>> > > > --> So, you can make ofib suitable for multicast trees, but we
>> > > > --> intend to
>> > > > --> modify it for efficiency purposes.
>> > > > --> btw, you already face the ?loop problem for unicast
>> > > > --> traffic, and there
>> > > > --> oFIB can be applied as-is by rbridges..
>> > > > -->
>> > > > --> Pierre.
>> > > > --> > -Sanjay
>> > > > --> >
>> > > > --> >
>> > > > --> >
>> > > > --> > -----Original Message-----
>> > > > --> > From: [email-masked]
>> > > > --> [mailto:[email-masked]] On
>> > > > --> > Behalf Of Pierre Francois
>> > > > --> > Sent: Friday, November 03, 2006 5:10 PM
>> > > > --> > To: Silvano Gai
>> > > > --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
>> > > > --> > Subject: Re: [rbridge] Traffic storms
>> > > > --> >
>> > > > --> >
>> > > > --> > Silvano,
>> > > > --> >
>> > > > --> > See
>> > > > --> >
>> > > > --> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
>> > > > --> ib-02.txt,
>> > > > --> > for a loop avoidance mechanism for IS-IS/OSPF.
>> > > > --> >
>> > > > --> > See you in SD,
>> > > > --> >
>> > > > --> > Pierre.
>> > > > --> >
>> > > > --> >
>> > > > --> >
>> > > > --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
>> > > > --> >
>> > > > --> >
>> > > > --> >> Eric,
>> > > > --> >>
>> > > > --> >> Also I suggest that people that have solved the problem
>> > > > --> of having a
>> > > > --> >> loop free topology using ISIS, submit proposasl so that
>> > > > --> we can compare
>> > > > --> >>
>> > > > --> > them.
>> > > > --> >
>> > > > --> >> Unfortunately I don't have one.
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >> -- Silvano
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >> ________________________________
>> > > > --> >>
>> > > > --> >> From: [email-masked]
>> > > > --> [mailto:[email-masked]]
>> > > > --> >> On Behalf Of Gray, Eric
>> > > > --> >> Sent: Friday, November 03, 2006 11:54 AM
>> > > > --> >> To: Gideon Kaempfer; Radia Perlman
>> > > > --> >> Cc: [email-masked]
>> > > > --> >> Subject: Re: [rbridge] Traffic storms
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >> Gideon,
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>     "Drop BPDUs" is not (exactly) the same as ignore
>> > > > --> them.  We use the
>> > > > --> >>
>> > > > --> >
>> > > > --> >
>> > > > --> >> term
>> > > > --> >>
>> > > > --> >> as short-hand for the one of three options we considered
>> > > > --> for handling
>> > > > --> >> BPDUs:
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>     Drop (do not participate actively in STP, and do not
>> > > > --> pass BPDUs
>> > > > --> >> through),
>> > > > --> >>
>> > > > --> >>     Transparent (pass BPDUs through - potentially
>> > > > --> altering them in
>> > > > --> >> some way),
>> > > > --> >>
>> > > > --> >>     Participate (have each RBridge participate in STP as
>> > > > --> if it were a
>> > > > --> >> bridge).
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >> Hence, when we say "Drop BPDUs" we are not saying that
>> > > > --> we cannot look
>> > > > --> >>
>> > > > --> >> at them, we are just saying that we're not doing one of
>> > > > --> the other two
>> > > > --> >> choices.
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >> --
>> > > > --> >>
>> > > > --> >> Eric
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >> ________________________________
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>        From: [email-masked]
>> > > > --> >> [mailto:[email-masked]] On Behalf Of Gideon 
>> Kaempfer
>> > > > --> >>        Sent: Friday, November 03, 2006 1:40 AM
>> > > > --> >>        To: Radia Perlman
>> > > > --> >>        Cc: [email-masked]
>> > > > --> >>        Subject: Re: [rbridge] Traffic storms
>> > > > --> >>
>> > > > --> >>        Radia,
>> > > > --> >>
>> > > > --> >>        Wouldn't this create a link
>> > between TRILL and STP we are trying
>> > > > --> >>
>> > > > --> > to
>> > > > --> >
>> > > > --> >> avoid?
>> > > > --> >>
>> > > > --> >>        Relying on the fact that a
>> > LAN segment has some kind of unique
>> > > > --> >> identifier (such as the root bridge ID) seems like a
>> > > > --> very practical
>> > > > --> >> solution to me, but strongly reliant on the fact that
>> > > > --> the Rbridges
>> > > > --> >> actually process BPDUs. I thought they were just meant 
>> to discard
>> > > > --> >>
>> > > > --> > them.
>> > > > --> >
>> > > > --> >> Is this acceptable?
>> > > > --> >>
>> > > > --> >>        Regrads,
>> > > > --> >>
>> > > > --> >>         Gidi
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>        On 11/3/06, Radia Perlman <[email-masked]> 
>> wrote:
>> > > > --> >>
>> > > > --> >>        The simplest way to put it, I think, is that in 
>> certain
>> > > > --> >>
>> > > > --> > transitory
>> > > > --> >
>> > > > --> >>        situations there might be two
>> > > > --> >>        RBridges that both think they
>> > are Designated RBridge, and that
>> > > > --> >>
>> > > > --> > is
>> > > > --> >
>> > > > --> >> bad,
>> > > > --> >>        but should stop
>> > > > --> >>        as soon as a single Hello is
>> > received by the RBridge who should
>> > > > --> >>
>> > > > --> > not
>> > > > --> >
>> > > > --> >> be
>> > > > --> >>        Designated.
>> > > > --> >>
>> > > > --> >>        I think PIM has similar
>> > transitory situations that can occur,
>> > > > --> >>
>> > > > --> > and
>> > > > --> >
>> > > > --> >>        bridges can also have (hopefully
>> > > > --> >>        temporary) problems if a
>> > repeater came up and merged two LANs. I
>> > > > --> >>
>> > > > --> >
>> > > > --> >
>> > > > --> >> think
>> > > > --> >>        such things are
>> > > > --> >>        annoying but not fatal. But I
>> > think it's possible we can with
>> > > > --> >>
>> > > > --> > little
>> > > > --> >
>> > > > --> >>        effort avoid this problem.
>> > > > --> >>
>> > > > --> >>        However, with RBridges, because the bridge 
>> spanning tree
>> > > > --> >>
>> > > > --> > algorithm
>> > > > --> >
>> > > > --> >>        elects a Root, there's
>> > > > --> >>        really a way of uniquely
>> > identifying a LAN (where "LAN" is a
>> > > > --> >>
>> > > > --> > bunch of
>> > > > --> >
>> > > > --> >>        links connected with
>> > > > --> >>        bridges). The unique identifier is the root bridge.
>> > > > --> >>
>> > > > --> >>        When the B1-B2 link is down,
>> > RB1 and RB2 will see the topology
>> > > > --> >>
>> > > > --> > as two
>> > > > --> >
>> > > > --> >>        separate links, and each
>> > > > --> >>        one will have a distinct
>> > spanning tree Root bridge (RB1 will see
>> > > > --> >>
>> > > > --> > B1,
>> > > > --> >
>> > > > --> >> and
>> > > > --> >>        RB2 will see B2 as the root).
>> > > > --> >>
>> > > > --> >>        When the B1-B2 link comes up,
>> > the bridges will first merge the
>> > > > --> >>
>> > > > --> > two
>> > > > --> >
>> > > > --> >>        links, and either RB1 or RB2 will
>> > > > --> >>        see that the bridge spanning
>> > tree root has changed. This will be
>> > > > --> >>        discovered before B1 and B2 forward
>> > > > --> >>        traffic across the link
>> > because of the bridge forwarding delay.
>> > > > --> >>        If B1 has better priority as
>> > bridge spanning tree root than B2,
>> > > > --> >>
>> > > > --> > then
>> > > > --> >
>> > > > --> >> RB1
>> > > > --> >>        will not notice anything
>> > > > --> >>        different when the B1-B2 link comes up. But RB2 
>> will notice
>> > > > --> >>        something different; the spanning tree root has 
>> changed
>> > > > --> >>
>> > > > --> > identities
>> > > > --> >
>> > > > --> >> from
>> > > > --> >>        "B2" to "B1".
>> > > > --> >>
>> > > > --> >>        Given this, RB2 could
>> > temporarily stop forwarding to or from the
>> > > > --> >>
>> > > > --> > link
>> > > > --> >
>> > > > --> >>        when the Root bridge
>> > > > --> >>        changes identities, though it
>> > should definitely immediately send
>> > > > --> >>
>> > > > --> >
>> > > > --> >
>> > > > --> >> IS-IS
>> > > > --> >>        Hellos (either RB1 or RB2 will
>> > > > --> >>        be elected Designated Router in the IS-IS 
>> election for that
>> > > > --> >>
>> > > > --> > link). If
>> > > > --> >
>> > > > --> >>        RB2 has better prioirty for
>> > > > --> >>        root, the RB1 will
>> > immediately stop forwarding to or from the
>> > > > --> >>
>> > > > --> > link
>> > > > --> >
>> > > > --> >> when
>> > > > --> >>        it sees the Hello from RB2.
>> > > > --> >>        If RB2 has better priority in the IS-IS election, 
>> then RB1
>> > > > --> >>
>> > > > --> > should
>> > > > --> >
>> > > > --> >>        immediately send an IS-IS Hello
>> > > > --> >>        when it sees a Hello from a new RBridge on the link.
>> > > > --> >>
>> > > > --> >>        So I think this is not a big
>> > deal, and that if we are worried,
>> > > > --> >>
>> > > > --> > we can
>> > > > --> >
>> > > > --> >>        specify that an RBridge should
>> > > > --> >>        stop acting like the
>> > Designated RBridge for a few seconds after
>> > > > --> >>
>> > > > --> > the
>> > > > --> >
>> > > > --> >>        identity of the Root in the spanning
>> > > > --> >>        tree algorithm changes.
>> > > > --> >>
>> > > > --> >>        Or we could be even fancier
>> > and have each RBridge announce in
>> > > > --> >>
>> > > > --> > its
>> > > > --> >
>> > > > --> >> IS-IS
>> > > > --> >>        Hellos which LAN IDs it
>> > > > --> >>        is Designated for, where a
>> > LAN ID is the MAC address of the Root
>> > > > --> >>
>> > > > --> >
>> > > > --> >
>> > > > --> >> bridge.
>> > > > --> >>        So RB1 continue
>> > > > --> >>        forwarding if the identity
>> > changes from B1 to B2 provided no
>> > > > --> >>
>> > > > --> > other
>> > > > --> >
>> > > > --> >>        RBridge has claimed to be connected
>> > > > --> >>        to B2. But if RB2's LSP
>> > claims it is attached to B2, then RB1
>> > > > --> >>
>> > > > --> > must
>> > > > --> >
>> > > > --> >> stop
>> > > > --> >>        forwarding for enough time
>> > > > --> >>        for the IS-IS election to sort itself out and 
>> choose a
>> > > > --> >>
>> > > > --> > Designated
>> > > > --> >
>> > > > --> >> RBridge.
>> > > > --> >>
>> > > > --> >>        Radia
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>        Gideon Kaempfer wrote:
>> > > > --> >>
>> > > > --> >>        >Following mention by Silvano
>> > of broadcast and multicast storms
>> > > > --> >>
>> > > > --> > (and
>> > > > --> >
>> > > > --> >> the need
>> > > > --> >>        >to protect against them), I played around with 
>> different
>> > > > --> >>
>> > > > --> > scenarios
>> > > > --> >
>> > > > --> >> and came
>> > > > --> >>        >upon one I would appreciate
>> > your comments on (in the hope I am
>> > > > --> >> pointing out
>> > > > --> >>        >a non-existent issue with
>> > TRILL). I believe a broadcast and
>> > > > --> >>
>> > > > --> > even a
>> > > > --> >
>> > > > --> >> unicast
>> > > > --> >>        >storm could be created as the result of a loop 
>> that isn't
>> > > > --> >>
>> > > > --> > protected
>> > > > --> >
>> > > > --> >> by TTL
>> > > > --> >>        >nor by STP in the case of a
>> > link connecting two separate LAN
>> > > > --> >> segments coming
>> > > > --> >>        >to life.
>> > > > --> >>        >
>> > > > --> >>        >- RB1 ---- RB2 -
>> > > > --> >>        >   |        |
>> > > > --> >>        >-  B1 --x-- B2 -
>> > > > --> >>        >   |        |
>> > > > --> >>        >   H1       H2
>> > > > --> >>        >
>> > > > --> >>        >1. The network (segment) involved consists of 
>> two Rbridges
>> > > > --> >>
>> > > > --> > (RB1,
>> > > > --> >
>> > > > --> >> RB2), two
>> > > > --> >>        >bridges (B1, B2) and two
>> > hosts (H1, H2). They are physically
>> > > > --> >> connected as
>> > > > --> >>        >depicted.
>> > > > --> >>        >2. State A: the direct link
>> > between B1 and B2 is down. B1 and
>> > > > --> >> B2 find
>> > > > --> >>        >themselves on different LAN segments and hence 
>> different
>> > > > --> >>
>> > > > --> > spanning
>> > > > --> >
>> > > > --> >> trees. RB1
>> > > > --> >>        >and RB2 are both designated
>> > Rbridges (each for the segment of
>> > > > --> >>
>> > > > --> > the
>> > > > --> >
>> > > > --> >>        >corresponding bridge).
>> > > > --> >>        >3. State B: the direct link
>> > between B1 and B2 goes up (someone
>> > > > --> >> connects a
>> > > > --> >>        >cable). B1 and B2 discover
>> > each other and establish a common
>> > > > --> >> spanning tree.
>> > > > --> >>        >RB1 and RB2 both find themselves attached to the 
>> same LAN
>> > > > --> >>
>> > > > --> > segment
>> > > > --> >
>> > > > --> >> and hence
>> > > > --> >>        >RB1 (without loss of
>> > generality) will eventually become the
>> > > > --> >> designated
>> > > > --> >>        >Rbridge for it.
>> > > > --> >>        >4. Just before RB1 and RB2
>> > identify that they are both on the
>> > > > --> >>
>> > > > --> > same
>> > > > --> >
>> > > > --> >> segment
>> > > > --> >>        >and RB2 stops functioning as
>> > a designated Rbridge the following
>> > > > --> >>
>> > > > --> >
>> > > > --> >
>> > > > --> >> scenario
>> > > > --> >>        >seems possible:
>> > > > --> >>        >  a. H1 sends a broadcast frame.
>> > > > --> >>        >  b. B1 receives it and forwards to RB1 and B2.
>> > > > --> >>        >  c. RB1 (encapsulates and) forwards to RB2.
>> > > > --> >>        >  d. B2 forwards to RB2 and H2.
>> > > > --> >>        >  e. RB2 forwards the copy
>> > from RB1 to B2 (and the copy from B2
>> > > > --> >>
>> > > > --> > to
>> > > > --> >
>> > > > --> >> RB1).
>> > > > --> >>        >  f. (RB1 forwards to B1.)
>> > > > --> >>        >  g. B2 forwards (again) to H2 and to B1.
>> > > > --> >>        >  h. B1 forwards to H1 (see
>> > remark below regarding filtering
>> > > > --> >>
>> > > > --> > table
>> > > > --> >
>> > > > --> >>        >contamination) and to RB1.
>> > > > --> >>        >  i. Etcetera etcetera.
>> > > > --> >>        >5. A broadcast storm is
>> > born, created by a loop that is not
>> > > > --> >> protected by TTL
>> > > > --> >>        >(due to the fact that
>> > forwarding between the Rbridges is only
>> > > > --> >>
>> > > > --> > across
>> > > > --> >
>> > > > --> >> a
>> > > > --> >>        >single hop) nor by STP (due
>> > to the fact that Rbridges do not
>> > > > --> >> participate in
>> > > > --> >>        >STP).
>> > > > --> >>        >6. If forwarding commences at the hardware level 
>> and no
>> > > > --> >>
>> > > > --> > broadcast
>> > > > --> >
>> > > > --> >> rate
>> > > > --> >>        >limiting is in place, the
>> > storm may cause severe damage in a
>> > > > --> >>
>> > > > --> > very
>> > > > --> >
>> > > > --> >> short time
>> > > > --> >>        >(note that replicated frames are sent to H1 and 
>> H2 (or any
>> > > > --> >>
>> > > > --> > network
>> > > > --> >
>> > > > --> >> they
>> > > > --> >>        >could represent).
>> > > > --> >>        >7. Another unfortunate
>> > effect of this storm is that B1 and B2
>> > > > --> >>
>> > > > --> > no
>> > > > --> >
>> > > > --> >> longer know
>> > > > --> >>        >where H1 is located (due to the contamination of 
>> their
>> > > > --> >>
>> > > > --> > filtering
>> > > > --> >
>> > > > --> >> tables by a
>> > > > --> >>        >frame from H1 that arrives
>> > from the wrong direction (and in
>> > > > --> >>
>> > > > --> > fact
>> > > > --> >
>> > > > --> >> from
>> > > > --> >>        >multiple directions). As a
>> > result, a possible unicast frame
>> > > > --> >>
>> > > > --> > from H2
>> > > > --> >
>> > > > --> >> to H1
>> > > > --> >>        >will just join the storm over the loop at least 
>> in one
>> > > > --> >>
>> > > > --> > direction
>> > > > --> >
>> > > > --> >> (RB2 will
>> > > > --> >>        >forward it to RB1) but will not arrive at H1...
>> > > > --> >>        >
>> > > > --> >>        >One possible solution could
>> > be for RB2 to identify the fact
>> > > > --> >>
>> > > > --> > that it
>> > > > --> >
>> > > > --> >> is
>> > > > --> >>        >receiving a frame from a host with a MAC address 
>> that is
>> > > > --> >>
>> > > > --> > associated
>> > > > --> >
>> > > > --> >> with a
>> > > > --> >>        >segment it thought it isn't
>> > connected to. Hence, it may trigger
>> > > > --> >>
>> > > > --> > an
>> > > > --> >
>> > > > --> >> immediate
>> > > > --> >>        >neighbor discovery / designated Rbridge 
>> election. However,
>> > > > --> >>
>> > > > --> > because
>> > > > --> >
>> > > > --> >> Rbridges
>> > > > --> >>        >should allow host mobility,
>> > this frame may need to be forwarded
>> > > > --> >>
>> > > > --> > (and
>> > > > --> >
>> > > > --> >> hence
>> > > > --> >>        >the storm commences).
>> > > > --> >>        >
>> > > > --> >>        >As mentioned above, any comments are welcome.
>> > > > --> >>        >  Gideon Kaempfer
>> > > > --> >>        >
>> > > > --> >>        >_______________________________________________
>> > > > --> >>        >rbridge mailing list
>> > > > --> >>        >[email-masked]
>> > > > --> >>        > http://mailman.postel.org/mailman/listinfo/rbridge
>> > > > --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
>> > > > --> >>        >
>> > > > --> >>        >
>> > > > --> >>
>> > > > --> >>        _______________________________________________
>> > > > --> >>        rbridge mailing list
>> > > > --> >>        [email-masked]
>> > > > --> >>        http://mailman.postel.org/mailman/listinfo/rbridge
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> >>
>> > > > --> > _______________________________________________
>> > > > --> > rbridge mailing list
>> > > > --> > [email-masked]
>> > > > --> > http://mailman.postel.org/mailman/listinfo/rbridge
>> > > > --> >
>> > > > --> >
>> > > > -->
>> > > > --> _______________________________________________
>> > > > --> rbridge mailing list
>> > > > --> [email-masked]
>> > > > --> http://mailman.postel.org/mailman/listinfo/rbridge
>> > > > -->
>> > > >
>> > > >
>> > >
>> > > _______________________________________________
>> > > rbridge mailing list
>> > > [email-masked]
>> > > http://mailman.postel.org/mailman/listinfo/rbridge
>> > >
>> >
>> >_______________________________________________
>> >rbridge mailing list
>> >[email-masked]
>> >http://mailman.postel.org/mailman/listinfo/rbridge
>>
>

Date: Wed, 8 Nov 2006 13:42:30 -0800
From: "Alia Atlas" <[email-masked]>
To: "mike shand" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 22931

On 11/8/06, mike shand <[email-masked]> wrote:
> At 23:31 06/11/2006, Alia Atlas wrote:
> >The multi-hop micro-forwarding loops only come up with asymmetric link
> >costs.
>
> We used to think that was true, but it is also
> possible to introduce multihop forwarding loops via ECMP.
>
> e.g
>                 D
>               /  \
>          A------B----C
>          |           |
>       E-----------F
>
> All costs 1, except BC = 2 and EF = 10 (both symmetric)
> When AB fails C was previously forwarding to A via both B and D
> After, B forwards via both D and C
> So if a packet gets sent (say) C->B AND B->D we end up with a cyclic loop.

Interesting case.  When we'd discussed it before, I think we'd missed
this ECMP case.
What are the implications for PLSN  with this?  Does your simulator
catch these cases?

> >  In TRILL, I believe the assumption is that there aren't
> >asymmetric link costs so that traffic flows are bidirectional.
> >
> >For this case, dropping frames that would transmit through the same
> >interface that received it would handle the micro-forwarding loops, I
> >believe.
>
> Handle, in the sense of avoiding looping, but of
> course the traffic would be dropped!

Sure - but in the absence of a fast-reroute technology, that's what
you need to do on failures.

Alia

>          Mike
>
>
>
> >Alia
> >
> >On 11/6/06, Pierre Francois <[email-masked]> wrote:
> > > Gray, Eric wrote:
> > > > Pierre,
> > > >
> > > >       The "?loop problem" is apparently an issue with some devices where
> > > > reasonable forwarding behavior limitations have been "optimized out."  A
> > > > better way to handle the ?loop problem with RBridges is not to optimize
> > > > out the behavior that prevents it - i.e. - a prohibition against emitting
> > > > a frame on the same interface on which it was received.
> > > >       To be clear, at either the last IETF
> > meeting, or the one just before
> > > > that one, it was made fairly clear that the ?loop problem occurs when a
> > > > device sends a PDU out of the same interface on which it was received. In
> > > > comparison with simply dropping such a PDU, this behavior is pathological
> > > > - particularly in the case of L2 forwarding generally.
> > > >
> > >
> > > That would mean that under a **planned** removal of an rbridge-rbridge
> > > link, where the rbridge network could suffer of forwarding
> > > loops, you could drop traffic. Indeed,  "IS-IS like FIBs" are updated in
> > > an asynchronous fashion upon topological changes, so that transient
> > > inconsistency in the forwarding of
> > > unicast traffic, leading to ?loops,  is something that regularly occur.
> > >
> > > Moreover, if you use TE tools to set up the metrics of your links, you
> > > might end up with metric(X-->Y) != metric(Y-->X).
> > > In such cases, "longer ?loops", i.e. loops involving 3 or 4 rBridges can
> > > occur upon convergence,
> > > in which case the simple "incoming interface <>outgoing interface" loop
> > > mitigation check won't work.
> > >
> > > Pierre.
> > > >       I am not saying that we do not need ordered FIB for loop prevention
> > > > generally, but we should not need it for the ?loop problem.
> > > >
> > >
> > >
> > > > --
> > > > Eric
> > > >
> > > > --> -----Original Message-----
> > > > --> From: [email-masked]
> > > > --> [mailto:[email-masked]] On Behalf Of Pierre Francois
> > > > --> Sent: Monday, November 06, 2006 5:20 PM
> > > > --> To: Sanjay Sane (sanjays)
> > > > --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> > > > --> Subject: Re: [rbridge] Traffic storms
> > > > -->
> > > > -->
> > > > --> Sanjay,
> > > > -->
> > > > --> Sanjay Sane (sanjays) wrote:
> > > > --> > Pierre,
> > > > --> >
> > > > --> > After reading through this paper, it seems the oFIB
> > > > --> mechanism is suited
> > > > --> > towards unicast traffic, or a single-destination traffic.
> > > > --> >
> > > > --> > In TRILL, if the plan is to protect the traffic storms, we *must*
> > > > --> > protect the transient loops in the "trees" that are built to carry
> > > > --> > unknowns/floods, multicast as well as unicast. Such
> > > > --> traffic is targetted
> > > > --> > towards multiple destination, in fact, a tree extends to all the
> > > > --> > rbridges.
> > > > --> >
> > > > --> > After thinking a bit, if we think of extending the
> > > > --> mechanisms in the
> > > > --> > paper to cover "trees", we may have to delay the FIB
> > > > --> ordering on all the
> > > > --> > links that are part of the tree on any given rbridge.
> > > > --> This could be very
> > > > --> > inefficient. Do you think the oFIB mechanism would be
> > > > --> suitable for such
> > > > --> > trees?
> > > > --> >
> > > > -->
> > > > --> Applying an "oFIB-like" solution for multicast traffic is
> > > > --> something we
> > > > --> are working on.
> > > > --> So, you can make ofib suitable for multicast trees, but we
> > > > --> intend to
> > > > --> modify it for efficiency purposes.
> > > > --> btw, you already face the ?loop problem for unicast
> > > > --> traffic, and there
> > > > --> oFIB can be applied as-is by rbridges..
> > > > -->
> > > > --> Pierre.
> > > > --> > -Sanjay
> > > > --> >
> > > > --> >
> > > > --> >
> > > > --> > -----Original Message-----
> > > > --> > From: [email-masked]
> > > > --> [mailto:[email-masked]] On
> > > > --> > Behalf Of Pierre Francois
> > > > --> > Sent: Friday, November 03, 2006 5:10 PM
> > > > --> > To: Silvano Gai
> > > > --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> > > > --> > Subject: Re: [rbridge] Traffic storms
> > > > --> >
> > > > --> >
> > > > --> > Silvano,
> > > > --> >
> > > > --> > See
> > > > --> >
> > > > --> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
> > > > --> ib-02.txt,
> > > > --> > for a loop avoidance mechanism for IS-IS/OSPF.
> > > > --> >
> > > > --> > See you in SD,
> > > > --> >
> > > > --> > Pierre.
> > > > --> >
> > > > --> >
> > > > --> >
> > > > --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
> > > > --> >
> > > > --> >
> > > > --> >> Eric,
> > > > --> >>
> > > > --> >> Also I suggest that people that have solved the problem
> > > > --> of having a
> > > > --> >> loop free topology using ISIS, submit proposasl so that
> > > > --> we can compare
> > > > --> >>
> > > > --> > them.
> > > > --> >
> > > > --> >> Unfortunately I don't have one.
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >> -- Silvano
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >> ________________________________
> > > > --> >>
> > > > --> >> From: [email-masked]
> > > > --> [mailto:[email-masked]]
> > > > --> >> On Behalf Of Gray, Eric
> > > > --> >> Sent: Friday, November 03, 2006 11:54 AM
> > > > --> >> To: Gideon Kaempfer; Radia Perlman
> > > > --> >> Cc: [email-masked]
> > > > --> >> Subject: Re: [rbridge] Traffic storms
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >> Gideon,
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>     "Drop BPDUs" is not (exactly) the same as ignore
> > > > --> them.  We use the
> > > > --> >>
> > > > --> >
> > > > --> >
> > > > --> >> term
> > > > --> >>
> > > > --> >> as short-hand for the one of three options we considered
> > > > --> for handling
> > > > --> >> BPDUs:
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>     Drop (do not participate actively in STP, and do not
> > > > --> pass BPDUs
> > > > --> >> through),
> > > > --> >>
> > > > --> >>     Transparent (pass BPDUs through - potentially
> > > > --> altering them in
> > > > --> >> some way),
> > > > --> >>
> > > > --> >>     Participate (have each RBridge participate in STP as
> > > > --> if it were a
> > > > --> >> bridge).
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >> Hence, when we say "Drop BPDUs" we are not saying that
> > > > --> we cannot look
> > > > --> >>
> > > > --> >> at them, we are just saying that we're not doing one of
> > > > --> the other two
> > > > --> >> choices.
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >> --
> > > > --> >>
> > > > --> >> Eric
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >> ________________________________
> > > > --> >>
> > > > --> >>
> > > > --> >>        From: [email-masked]
> > > > --> >> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
> > > > --> >>        Sent: Friday, November 03, 2006 1:40 AM
> > > > --> >>        To: Radia Perlman
> > > > --> >>        Cc: [email-masked]
> > > > --> >>        Subject: Re: [rbridge] Traffic storms
> > > > --> >>
> > > > --> >>        Radia,
> > > > --> >>
> > > > --> >>        Wouldn't this create a link
> > between TRILL and STP we are trying
> > > > --> >>
> > > > --> > to
> > > > --> >
> > > > --> >> avoid?
> > > > --> >>
> > > > --> >>        Relying on the fact that a
> > LAN segment has some kind of unique
> > > > --> >> identifier (such as the root bridge ID) seems like a
> > > > --> very practical
> > > > --> >> solution to me, but strongly reliant on the fact that
> > > > --> the Rbridges
> > > > --> >> actually process BPDUs. I thought they were just meant to discard
> > > > --> >>
> > > > --> > them.
> > > > --> >
> > > > --> >> Is this acceptable?
> > > > --> >>
> > > > --> >>        Regrads,
> > > > --> >>
> > > > --> >>         Gidi
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>        On 11/3/06, Radia Perlman <[email-masked]> wrote:
> > > > --> >>
> > > > --> >>        The simplest way to put it, I think, is that in certain
> > > > --> >>
> > > > --> > transitory
> > > > --> >
> > > > --> >>        situations there might be two
> > > > --> >>        RBridges that both think they
> > are Designated RBridge, and that
> > > > --> >>
> > > > --> > is
> > > > --> >
> > > > --> >> bad,
> > > > --> >>        but should stop
> > > > --> >>        as soon as a single Hello is
> > received by the RBridge who should
> > > > --> >>
> > > > --> > not
> > > > --> >
> > > > --> >> be
> > > > --> >>        Designated.
> > > > --> >>
> > > > --> >>        I think PIM has similar
> > transitory situations that can occur,
> > > > --> >>
> > > > --> > and
> > > > --> >
> > > > --> >>        bridges can also have (hopefully
> > > > --> >>        temporary) problems if a
> > repeater came up and merged two LANs. I
> > > > --> >>
> > > > --> >
> > > > --> >
> > > > --> >> think
> > > > --> >>        such things are
> > > > --> >>        annoying but not fatal. But I
> > think it's possible we can with
> > > > --> >>
> > > > --> > little
> > > > --> >
> > > > --> >>        effort avoid this problem.
> > > > --> >>
> > > > --> >>        However, with RBridges, because the bridge spanning tree
> > > > --> >>
> > > > --> > algorithm
> > > > --> >
> > > > --> >>        elects a Root, there's
> > > > --> >>        really a way of uniquely
> > identifying a LAN (where "LAN" is a
> > > > --> >>
> > > > --> > bunch of
> > > > --> >
> > > > --> >>        links connected with
> > > > --> >>        bridges). The unique identifier is the root bridge.
> > > > --> >>
> > > > --> >>        When the B1-B2 link is down,
> > RB1 and RB2 will see the topology
> > > > --> >>
> > > > --> > as two
> > > > --> >
> > > > --> >>        separate links, and each
> > > > --> >>        one will have a distinct
> > spanning tree Root bridge (RB1 will see
> > > > --> >>
> > > > --> > B1,
> > > > --> >
> > > > --> >> and
> > > > --> >>        RB2 will see B2 as the root).
> > > > --> >>
> > > > --> >>        When the B1-B2 link comes up,
> > the bridges will first merge the
> > > > --> >>
> > > > --> > two
> > > > --> >
> > > > --> >>        links, and either RB1 or RB2 will
> > > > --> >>        see that the bridge spanning
> > tree root has changed. This will be
> > > > --> >>        discovered before B1 and B2 forward
> > > > --> >>        traffic across the link
> > because of the bridge forwarding delay.
> > > > --> >>        If B1 has better priority as
> > bridge spanning tree root than B2,
> > > > --> >>
> > > > --> > then
> > > > --> >
> > > > --> >> RB1
> > > > --> >>        will not notice anything
> > > > --> >>        different when the B1-B2 link comes up. But RB2 will notice
> > > > --> >>        something different; the spanning tree root has changed
> > > > --> >>
> > > > --> > identities
> > > > --> >
> > > > --> >> from
> > > > --> >>        "B2" to "B1".
> > > > --> >>
> > > > --> >>        Given this, RB2 could
> > temporarily stop forwarding to or from the
> > > > --> >>
> > > > --> > link
> > > > --> >
> > > > --> >>        when the Root bridge
> > > > --> >>        changes identities, though it
> > should definitely immediately send
> > > > --> >>
> > > > --> >
> > > > --> >
> > > > --> >> IS-IS
> > > > --> >>        Hellos (either RB1 or RB2 will
> > > > --> >>        be elected Designated Router in the IS-IS election for that
> > > > --> >>
> > > > --> > link). If
> > > > --> >
> > > > --> >>        RB2 has better prioirty for
> > > > --> >>        root, the RB1 will
> > immediately stop forwarding to or from the
> > > > --> >>
> > > > --> > link
> > > > --> >
> > > > --> >> when
> > > > --> >>        it sees the Hello from RB2.
> > > > --> >>        If RB2 has better priority in the IS-IS election, then RB1
> > > > --> >>
> > > > --> > should
> > > > --> >
> > > > --> >>        immediately send an IS-IS Hello
> > > > --> >>        when it sees a Hello from a new RBridge on the link.
> > > > --> >>
> > > > --> >>        So I think this is not a big
> > deal, and that if we are worried,
> > > > --> >>
> > > > --> > we can
> > > > --> >
> > > > --> >>        specify that an RBridge should
> > > > --> >>        stop acting like the
> > Designated RBridge for a few seconds after
> > > > --> >>
> > > > --> > the
> > > > --> >
> > > > --> >>        identity of the Root in the spanning
> > > > --> >>        tree algorithm changes.
> > > > --> >>
> > > > --> >>        Or we could be even fancier
> > and have each RBridge announce in
> > > > --> >>
> > > > --> > its
> > > > --> >
> > > > --> >> IS-IS
> > > > --> >>        Hellos which LAN IDs it
> > > > --> >>        is Designated for, where a
> > LAN ID is the MAC address of the Root
> > > > --> >>
> > > > --> >
> > > > --> >
> > > > --> >> bridge.
> > > > --> >>        So RB1 continue
> > > > --> >>        forwarding if the identity
> > changes from B1 to B2 provided no
> > > > --> >>
> > > > --> > other
> > > > --> >
> > > > --> >>        RBridge has claimed to be connected
> > > > --> >>        to B2. But if RB2's LSP
> > claims it is attached to B2, then RB1
> > > > --> >>
> > > > --> > must
> > > > --> >
> > > > --> >> stop
> > > > --> >>        forwarding for enough time
> > > > --> >>        for the IS-IS election to sort itself out and choose a
> > > > --> >>
> > > > --> > Designated
> > > > --> >
> > > > --> >> RBridge.
> > > > --> >>
> > > > --> >>        Radia
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>        Gideon Kaempfer wrote:
> > > > --> >>
> > > > --> >>        >Following mention by Silvano
> > of broadcast and multicast storms
> > > > --> >>
> > > > --> > (and
> > > > --> >
> > > > --> >> the need
> > > > --> >>        >to protect against them), I played around with different
> > > > --> >>
> > > > --> > scenarios
> > > > --> >
> > > > --> >> and came
> > > > --> >>        >upon one I would appreciate
> > your comments on (in the hope I am
> > > > --> >> pointing out
> > > > --> >>        >a non-existent issue with
> > TRILL). I believe a broadcast and
> > > > --> >>
> > > > --> > even a
> > > > --> >
> > > > --> >> unicast
> > > > --> >>        >storm could be created as the result of a loop that isn't
> > > > --> >>
> > > > --> > protected
> > > > --> >
> > > > --> >> by TTL
> > > > --> >>        >nor by STP in the case of a
> > link connecting two separate LAN
> > > > --> >> segments coming
> > > > --> >>        >to life.
> > > > --> >>        >
> > > > --> >>        >- RB1 ---- RB2 -
> > > > --> >>        >   |        |
> > > > --> >>        >-  B1 --x-- B2 -
> > > > --> >>        >   |        |
> > > > --> >>        >   H1       H2
> > > > --> >>        >
> > > > --> >>        >1. The network (segment) involved consists of two Rbridges
> > > > --> >>
> > > > --> > (RB1,
> > > > --> >
> > > > --> >> RB2), two
> > > > --> >>        >bridges (B1, B2) and two
> > hosts (H1, H2). They are physically
> > > > --> >> connected as
> > > > --> >>        >depicted.
> > > > --> >>        >2. State A: the direct link
> > between B1 and B2 is down. B1 and
> > > > --> >> B2 find
> > > > --> >>        >themselves on different LAN segments and hence different
> > > > --> >>
> > > > --> > spanning
> > > > --> >
> > > > --> >> trees. RB1
> > > > --> >>        >and RB2 are both designated
> > Rbridges (each for the segment of
> > > > --> >>
> > > > --> > the
> > > > --> >
> > > > --> >>        >corresponding bridge).
> > > > --> >>        >3. State B: the direct link
> > between B1 and B2 goes up (someone
> > > > --> >> connects a
> > > > --> >>        >cable). B1 and B2 discover
> > each other and establish a common
> > > > --> >> spanning tree.
> > > > --> >>        >RB1 and RB2 both find themselves attached to the same LAN
> > > > --> >>
> > > > --> > segment
> > > > --> >
> > > > --> >> and hence
> > > > --> >>        >RB1 (without loss of
> > generality) will eventually become the
> > > > --> >> designated
> > > > --> >>        >Rbridge for it.
> > > > --> >>        >4. Just before RB1 and RB2
> > identify that they are both on the
> > > > --> >>
> > > > --> > same
> > > > --> >
> > > > --> >> segment
> > > > --> >>        >and RB2 stops functioning as
> > a designated Rbridge the following
> > > > --> >>
> > > > --> >
> > > > --> >
> > > > --> >> scenario
> > > > --> >>        >seems possible:
> > > > --> >>        >  a. H1 sends a broadcast frame.
> > > > --> >>        >  b. B1 receives it and forwards to RB1 and B2.
> > > > --> >>        >  c. RB1 (encapsulates and) forwards to RB2.
> > > > --> >>        >  d. B2 forwards to RB2 and H2.
> > > > --> >>        >  e. RB2 forwards the copy
> > from RB1 to B2 (and the copy from B2
> > > > --> >>
> > > > --> > to
> > > > --> >
> > > > --> >> RB1).
> > > > --> >>        >  f. (RB1 forwards to B1.)
> > > > --> >>        >  g. B2 forwards (again) to H2 and to B1.
> > > > --> >>        >  h. B1 forwards to H1 (see
> > remark below regarding filtering
> > > > --> >>
> > > > --> > table
> > > > --> >
> > > > --> >>        >contamination) and to RB1.
> > > > --> >>        >  i. Etcetera etcetera.
> > > > --> >>        >5. A broadcast storm is
> > born, created by a loop that is not
> > > > --> >> protected by TTL
> > > > --> >>        >(due to the fact that
> > forwarding between the Rbridges is only
> > > > --> >>
> > > > --> > across
> > > > --> >
> > > > --> >> a
> > > > --> >>        >single hop) nor by STP (due
> > to the fact that Rbridges do not
> > > > --> >> participate in
> > > > --> >>        >STP).
> > > > --> >>        >6. If forwarding commences at the hardware level and no
> > > > --> >>
> > > > --> > broadcast
> > > > --> >
> > > > --> >> rate
> > > > --> >>        >limiting is in place, the
> > storm may cause severe damage in a
> > > > --> >>
> > > > --> > very
> > > > --> >
> > > > --> >> short time
> > > > --> >>        >(note that replicated frames are sent to H1 and H2 (or any
> > > > --> >>
> > > > --> > network
> > > > --> >
> > > > --> >> they
> > > > --> >>        >could represent).
> > > > --> >>        >7. Another unfortunate
> > effect of this storm is that B1 and B2
> > > > --> >>
> > > > --> > no
> > > > --> >
> > > > --> >> longer know
> > > > --> >>        >where H1 is located (due to the contamination of their
> > > > --> >>
> > > > --> > filtering
> > > > --> >
> > > > --> >> tables by a
> > > > --> >>        >frame from H1 that arrives
> > from the wrong direction (and in
> > > > --> >>
> > > > --> > fact
> > > > --> >
> > > > --> >> from
> > > > --> >>        >multiple directions). As a
> > result, a possible unicast frame
> > > > --> >>
> > > > --> > from H2
> > > > --> >
> > > > --> >> to H1
> > > > --> >>        >will just join the storm over the loop at least in one
> > > > --> >>
> > > > --> > direction
> > > > --> >
> > > > --> >> (RB2 will
> > > > --> >>        >forward it to RB1) but will not arrive at H1...
> > > > --> >>        >
> > > > --> >>        >One possible solution could
> > be for RB2 to identify the fact
> > > > --> >>
> > > > --> > that it
> > > > --> >
> > > > --> >> is
> > > > --> >>        >receiving a frame from a host with a MAC address that is
> > > > --> >>
> > > > --> > associated
> > > > --> >
> > > > --> >> with a
> > > > --> >>        >segment it thought it isn't
> > connected to. Hence, it may trigger
> > > > --> >>
> > > > --> > an
> > > > --> >
> > > > --> >> immediate
> > > > --> >>        >neighbor discovery / designated Rbridge election. However,
> > > > --> >>
> > > > --> > because
> > > > --> >
> > > > --> >> Rbridges
> > > > --> >>        >should allow host mobility,
> > this frame may need to be forwarded
> > > > --> >>
> > > > --> > (and
> > > > --> >
> > > > --> >> hence
> > > > --> >>        >the storm commences).
> > > > --> >>        >
> > > > --> >>        >As mentioned above, any comments are welcome.
> > > > --> >>        >  Gideon Kaempfer
> > > > --> >>        >
> > > > --> >>        >_______________________________________________
> > > > --> >>        >rbridge mailing list
> > > > --> >>        >[email-masked]
> > > > --> >>        > http://mailman.postel.org/mailman/listinfo/rbridge
> > > > --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
> > > > --> >>        >
> > > > --> >>        >
> > > > --> >>
> > > > --> >>        _______________________________________________
> > > > --> >>        rbridge mailing list
> > > > --> >>        [email-masked]
> > > > --> >>        http://mailman.postel.org/mailman/listinfo/rbridge
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> >>
> > > > --> > _______________________________________________
> > > > --> > rbridge mailing list
> > > > --> > [email-masked]
> > > > --> > http://mailman.postel.org/mailman/listinfo/rbridge
> > > > --> >
> > > > --> >
> > > > -->
> > > > --> _______________________________________________
> > > > --> rbridge mailing list
> > > > --> [email-masked]
> > > > --> http://mailman.postel.org/mailman/listinfo/rbridge
> > > > -->
> > > >
> > > >
> > >
> > > _______________________________________________
> > > rbridge mailing list
> > > [email-masked]
> > > http://mailman.postel.org/mailman/listinfo/rbridge
> > >
> >
> >_______________________________________________
> >rbridge mailing list
> >[email-masked]
> >http://mailman.postel.org/mailman/listinfo/rbridge
>

Date: Wed, 08 Nov 2006 18:01:56 +0000
To: "Alia Atlas" <[email-masked]>
From: mike shand <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 548

At 17:31 08/11/2006, mike shand wrote:
> >For this case, dropping frames that would transmit through the same
> >interface that received it would handle the micro-forwarding loops, I
> >believe.
>
>Handle, in the sense of avoiding looping, but of
>course the traffic would be dropped!

Sorry, forgot to say...

So this means that where you have ECMP you would have to check for a 
packet received from ANY of the interfaces on which you could 
possibly transmit it, not just the one which you would actually 
choose for this packet.

         Mike

Date: Wed, 08 Nov 2006 17:31:40 +0000
To: "Alia Atlas" <[email-masked]>
From: mike shand <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 21286

At 23:31 06/11/2006, Alia Atlas wrote:
>The multi-hop micro-forwarding loops only come up with asymmetric link
>costs.

We used to think that was true, but it is also 
possible to introduce multihop forwarding loops via ECMP.

e.g
                D
              /  \
         A------B----C
         |           |
      E-----------F

All costs 1, except BC = 2 and EF = 10 (both symmetric)
When AB fails C was previously forwarding to A via both B and D
After, B forwards via both D and C
So if a packet gets sent (say) C->B AND B->D we end up with a cyclic loop.

>  In TRILL, I believe the assumption is that there aren't
>asymmetric link costs so that traffic flows are bidirectional.
>
>For this case, dropping frames that would transmit through the same
>interface that received it would handle the micro-forwarding loops, I
>believe.

Handle, in the sense of avoiding looping, but of 
course the traffic would be dropped!

         Mike

>Alia
>
>On 11/6/06, Pierre Francois <[email-masked]> wrote:
> > Gray, Eric wrote:
> > > Pierre,
> > >
> > >       The "?loop problem" is apparently an issue with some devices where
> > > reasonable forwarding behavior limitations have been "optimized out."  A
> > > better way to handle the ?loop problem with RBridges is not to optimize
> > > out the behavior that prevents it - i.e. - a prohibition against emitting
> > > a frame on the same interface on which it was received.
> > >       To be clear, at either the last IETF 
> meeting, or the one just before
> > > that one, it was made fairly clear that the ?loop problem occurs when a
> > > device sends a PDU out of the same interface on which it was received. In
> > > comparison with simply dropping such a PDU, this behavior is pathological
> > > - particularly in the case of L2 forwarding generally.
> > >
> >
> > That would mean that under a **planned** removal of an rbridge-rbridge
> > link, where the rbridge network could suffer of forwarding
> > loops, you could drop traffic. Indeed,  "IS-IS like FIBs" are updated in
> > an asynchronous fashion upon topological changes, so that transient
> > inconsistency in the forwarding of
> > unicast traffic, leading to ?loops,  is something that regularly occur.
> >
> > Moreover, if you use TE tools to set up the metrics of your links, you
> > might end up with metric(X-->Y) != metric(Y-->X).
> > In such cases, "longer ?loops", i.e. loops involving 3 or 4 rBridges can
> > occur upon convergence,
> > in which case the simple "incoming interface <>outgoing interface" loop
> > mitigation check won't work.
> >
> > Pierre.
> > >       I am not saying that we do not need ordered FIB for loop prevention
> > > generally, but we should not need it for the ?loop problem.
> > >
> >
> >
> > > --
> > > Eric
> > >
> > > --> -----Original Message-----
> > > --> From: [email-masked]
> > > --> [mailto:[email-masked]] On Behalf Of Pierre Francois
> > > --> Sent: Monday, November 06, 2006 5:20 PM
> > > --> To: Sanjay Sane (sanjays)
> > > --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> > > --> Subject: Re: [rbridge] Traffic storms
> > > -->
> > > -->
> > > --> Sanjay,
> > > -->
> > > --> Sanjay Sane (sanjays) wrote:
> > > --> > Pierre,
> > > --> >
> > > --> > After reading through this paper, it seems the oFIB
> > > --> mechanism is suited
> > > --> > towards unicast traffic, or a single-destination traffic.
> > > --> >
> > > --> > In TRILL, if the plan is to protect the traffic storms, we *must*
> > > --> > protect the transient loops in the "trees" that are built to carry
> > > --> > unknowns/floods, multicast as well as unicast. Such
> > > --> traffic is targetted
> > > --> > towards multiple destination, in fact, a tree extends to all the
> > > --> > rbridges.
> > > --> >
> > > --> > After thinking a bit, if we think of extending the
> > > --> mechanisms in the
> > > --> > paper to cover "trees", we may have to delay the FIB
> > > --> ordering on all the
> > > --> > links that are part of the tree on any given rbridge.
> > > --> This could be very
> > > --> > inefficient. Do you think the oFIB mechanism would be
> > > --> suitable for such
> > > --> > trees?
> > > --> >
> > > -->
> > > --> Applying an "oFIB-like" solution for multicast traffic is
> > > --> something we
> > > --> are working on.
> > > --> So, you can make ofib suitable for multicast trees, but we
> > > --> intend to
> > > --> modify it for efficiency purposes.
> > > --> btw, you already face the ?loop problem for unicast
> > > --> traffic, and there
> > > --> oFIB can be applied as-is by rbridges..
> > > -->
> > > --> Pierre.
> > > --> > -Sanjay
> > > --> >
> > > --> >
> > > --> >
> > > --> > -----Original Message-----
> > > --> > From: [email-masked]
> > > --> [mailto:[email-masked]] On
> > > --> > Behalf Of Pierre Francois
> > > --> > Sent: Friday, November 03, 2006 5:10 PM
> > > --> > To: Silvano Gai
> > > --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> > > --> > Subject: Re: [rbridge] Traffic storms
> > > --> >
> > > --> >
> > > --> > Silvano,
> > > --> >
> > > --> > See
> > > --> >
> > > --> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
> > > --> ib-02.txt,
> > > --> > for a loop avoidance mechanism for IS-IS/OSPF.
> > > --> >
> > > --> > See you in SD,
> > > --> >
> > > --> > Pierre.
> > > --> >
> > > --> >
> > > --> >
> > > --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
> > > --> >
> > > --> >
> > > --> >> Eric,
> > > --> >>
> > > --> >> Also I suggest that people that have solved the problem
> > > --> of having a
> > > --> >> loop free topology using ISIS, submit proposasl so that
> > > --> we can compare
> > > --> >>
> > > --> > them.
> > > --> >
> > > --> >> Unfortunately I don't have one.
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >> -- Silvano
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >> ________________________________
> > > --> >>
> > > --> >> From: [email-masked]
> > > --> [mailto:[email-masked]]
> > > --> >> On Behalf Of Gray, Eric
> > > --> >> Sent: Friday, November 03, 2006 11:54 AM
> > > --> >> To: Gideon Kaempfer; Radia Perlman
> > > --> >> Cc: [email-masked]
> > > --> >> Subject: Re: [rbridge] Traffic storms
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >> Gideon,
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>     "Drop BPDUs" is not (exactly) the same as ignore
> > > --> them.  We use the
> > > --> >>
> > > --> >
> > > --> >
> > > --> >> term
> > > --> >>
> > > --> >> as short-hand for the one of three options we considered
> > > --> for handling
> > > --> >> BPDUs:
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>     Drop (do not participate actively in STP, and do not
> > > --> pass BPDUs
> > > --> >> through),
> > > --> >>
> > > --> >>     Transparent (pass BPDUs through - potentially
> > > --> altering them in
> > > --> >> some way),
> > > --> >>
> > > --> >>     Participate (have each RBridge participate in STP as
> > > --> if it were a
> > > --> >> bridge).
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >> Hence, when we say "Drop BPDUs" we are not saying that
> > > --> we cannot look
> > > --> >>
> > > --> >> at them, we are just saying that we're not doing one of
> > > --> the other two
> > > --> >> choices.
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >> --
> > > --> >>
> > > --> >> Eric
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >> ________________________________
> > > --> >>
> > > --> >>
> > > --> >>        From: [email-masked]
> > > --> >> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
> > > --> >>        Sent: Friday, November 03, 2006 1:40 AM
> > > --> >>        To: Radia Perlman
> > > --> >>        Cc: [email-masked]
> > > --> >>        Subject: Re: [rbridge] Traffic storms
> > > --> >>
> > > --> >>        Radia,
> > > --> >>
> > > --> >>        Wouldn't this create a link 
> between TRILL and STP we are trying
> > > --> >>
> > > --> > to
> > > --> >
> > > --> >> avoid?
> > > --> >>
> > > --> >>        Relying on the fact that a 
> LAN segment has some kind of unique
> > > --> >> identifier (such as the root bridge ID) seems like a
> > > --> very practical
> > > --> >> solution to me, but strongly reliant on the fact that
> > > --> the Rbridges
> > > --> >> actually process BPDUs. I thought they were just meant to discard
> > > --> >>
> > > --> > them.
> > > --> >
> > > --> >> Is this acceptable?
> > > --> >>
> > > --> >>        Regrads,
> > > --> >>
> > > --> >>         Gidi
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>        On 11/3/06, Radia Perlman <[email-masked]> wrote:
> > > --> >>
> > > --> >>        The simplest way to put it, I think, is that in certain
> > > --> >>
> > > --> > transitory
> > > --> >
> > > --> >>        situations there might be two
> > > --> >>        RBridges that both think they 
> are Designated RBridge, and that
> > > --> >>
> > > --> > is
> > > --> >
> > > --> >> bad,
> > > --> >>        but should stop
> > > --> >>        as soon as a single Hello is 
> received by the RBridge who should
> > > --> >>
> > > --> > not
> > > --> >
> > > --> >> be
> > > --> >>        Designated.
> > > --> >>
> > > --> >>        I think PIM has similar 
> transitory situations that can occur,
> > > --> >>
> > > --> > and
> > > --> >
> > > --> >>        bridges can also have (hopefully
> > > --> >>        temporary) problems if a 
> repeater came up and merged two LANs. I
> > > --> >>
> > > --> >
> > > --> >
> > > --> >> think
> > > --> >>        such things are
> > > --> >>        annoying but not fatal. But I 
> think it's possible we can with
> > > --> >>
> > > --> > little
> > > --> >
> > > --> >>        effort avoid this problem.
> > > --> >>
> > > --> >>        However, with RBridges, because the bridge spanning tree
> > > --> >>
> > > --> > algorithm
> > > --> >
> > > --> >>        elects a Root, there's
> > > --> >>        really a way of uniquely 
> identifying a LAN (where "LAN" is a
> > > --> >>
> > > --> > bunch of
> > > --> >
> > > --> >>        links connected with
> > > --> >>        bridges). The unique identifier is the root bridge.
> > > --> >>
> > > --> >>        When the B1-B2 link is down, 
> RB1 and RB2 will see the topology
> > > --> >>
> > > --> > as two
> > > --> >
> > > --> >>        separate links, and each
> > > --> >>        one will have a distinct 
> spanning tree Root bridge (RB1 will see
> > > --> >>
> > > --> > B1,
> > > --> >
> > > --> >> and
> > > --> >>        RB2 will see B2 as the root).
> > > --> >>
> > > --> >>        When the B1-B2 link comes up, 
> the bridges will first merge the
> > > --> >>
> > > --> > two
> > > --> >
> > > --> >>        links, and either RB1 or RB2 will
> > > --> >>        see that the bridge spanning 
> tree root has changed. This will be
> > > --> >>        discovered before B1 and B2 forward
> > > --> >>        traffic across the link 
> because of the bridge forwarding delay.
> > > --> >>        If B1 has better priority as 
> bridge spanning tree root than B2,
> > > --> >>
> > > --> > then
> > > --> >
> > > --> >> RB1
> > > --> >>        will not notice anything
> > > --> >>        different when the B1-B2 link comes up. But RB2 will notice
> > > --> >>        something different; the spanning tree root has changed
> > > --> >>
> > > --> > identities
> > > --> >
> > > --> >> from
> > > --> >>        "B2" to "B1".
> > > --> >>
> > > --> >>        Given this, RB2 could 
> temporarily stop forwarding to or from the
> > > --> >>
> > > --> > link
> > > --> >
> > > --> >>        when the Root bridge
> > > --> >>        changes identities, though it 
> should definitely immediately send
> > > --> >>
> > > --> >
> > > --> >
> > > --> >> IS-IS
> > > --> >>        Hellos (either RB1 or RB2 will
> > > --> >>        be elected Designated Router in the IS-IS election for that
> > > --> >>
> > > --> > link). If
> > > --> >
> > > --> >>        RB2 has better prioirty for
> > > --> >>        root, the RB1 will 
> immediately stop forwarding to or from the
> > > --> >>
> > > --> > link
> > > --> >
> > > --> >> when
> > > --> >>        it sees the Hello from RB2.
> > > --> >>        If RB2 has better priority in the IS-IS election, then RB1
> > > --> >>
> > > --> > should
> > > --> >
> > > --> >>        immediately send an IS-IS Hello
> > > --> >>        when it sees a Hello from a new RBridge on the link.
> > > --> >>
> > > --> >>        So I think this is not a big 
> deal, and that if we are worried,
> > > --> >>
> > > --> > we can
> > > --> >
> > > --> >>        specify that an RBridge should
> > > --> >>        stop acting like the 
> Designated RBridge for a few seconds after
> > > --> >>
> > > --> > the
> > > --> >
> > > --> >>        identity of the Root in the spanning
> > > --> >>        tree algorithm changes.
> > > --> >>
> > > --> >>        Or we could be even fancier 
> and have each RBridge announce in
> > > --> >>
> > > --> > its
> > > --> >
> > > --> >> IS-IS
> > > --> >>        Hellos which LAN IDs it
> > > --> >>        is Designated for, where a 
> LAN ID is the MAC address of the Root
> > > --> >>
> > > --> >
> > > --> >
> > > --> >> bridge.
> > > --> >>        So RB1 continue
> > > --> >>        forwarding if the identity 
> changes from B1 to B2 provided no
> > > --> >>
> > > --> > other
> > > --> >
> > > --> >>        RBridge has claimed to be connected
> > > --> >>        to B2. But if RB2's LSP 
> claims it is attached to B2, then RB1
> > > --> >>
> > > --> > must
> > > --> >
> > > --> >> stop
> > > --> >>        forwarding for enough time
> > > --> >>        for the IS-IS election to sort itself out and choose a
> > > --> >>
> > > --> > Designated
> > > --> >
> > > --> >> RBridge.
> > > --> >>
> > > --> >>        Radia
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>        Gideon Kaempfer wrote:
> > > --> >>
> > > --> >>        >Following mention by Silvano 
> of broadcast and multicast storms
> > > --> >>
> > > --> > (and
> > > --> >
> > > --> >> the need
> > > --> >>        >to protect against them), I played around with different
> > > --> >>
> > > --> > scenarios
> > > --> >
> > > --> >> and came
> > > --> >>        >upon one I would appreciate 
> your comments on (in the hope I am
> > > --> >> pointing out
> > > --> >>        >a non-existent issue with 
> TRILL). I believe a broadcast and
> > > --> >>
> > > --> > even a
> > > --> >
> > > --> >> unicast
> > > --> >>        >storm could be created as the result of a loop that isn't
> > > --> >>
> > > --> > protected
> > > --> >
> > > --> >> by TTL
> > > --> >>        >nor by STP in the case of a 
> link connecting two separate LAN
> > > --> >> segments coming
> > > --> >>        >to life.
> > > --> >>        >
> > > --> >>        >- RB1 ---- RB2 -
> > > --> >>        >   |        |
> > > --> >>        >-  B1 --x-- B2 -
> > > --> >>        >   |        |
> > > --> >>        >   H1       H2
> > > --> >>        >
> > > --> >>        >1. The network (segment) involved consists of two Rbridges
> > > --> >>
> > > --> > (RB1,
> > > --> >
> > > --> >> RB2), two
> > > --> >>        >bridges (B1, B2) and two 
> hosts (H1, H2). They are physically
> > > --> >> connected as
> > > --> >>        >depicted.
> > > --> >>        >2. State A: the direct link 
> between B1 and B2 is down. B1 and
> > > --> >> B2 find
> > > --> >>        >themselves on different LAN segments and hence different
> > > --> >>
> > > --> > spanning
> > > --> >
> > > --> >> trees. RB1
> > > --> >>        >and RB2 are both designated 
> Rbridges (each for the segment of
> > > --> >>
> > > --> > the
> > > --> >
> > > --> >>        >corresponding bridge).
> > > --> >>        >3. State B: the direct link 
> between B1 and B2 goes up (someone
> > > --> >> connects a
> > > --> >>        >cable). B1 and B2 discover 
> each other and establish a common
> > > --> >> spanning tree.
> > > --> >>        >RB1 and RB2 both find themselves attached to the same LAN
> > > --> >>
> > > --> > segment
> > > --> >
> > > --> >> and hence
> > > --> >>        >RB1 (without loss of 
> generality) will eventually become the
> > > --> >> designated
> > > --> >>        >Rbridge for it.
> > > --> >>        >4. Just before RB1 and RB2 
> identify that they are both on the
> > > --> >>
> > > --> > same
> > > --> >
> > > --> >> segment
> > > --> >>        >and RB2 stops functioning as 
> a designated Rbridge the following
> > > --> >>
> > > --> >
> > > --> >
> > > --> >> scenario
> > > --> >>        >seems possible:
> > > --> >>        >  a. H1 sends a broadcast frame.
> > > --> >>        >  b. B1 receives it and forwards to RB1 and B2.
> > > --> >>        >  c. RB1 (encapsulates and) forwards to RB2.
> > > --> >>        >  d. B2 forwards to RB2 and H2.
> > > --> >>        >  e. RB2 forwards the copy 
> from RB1 to B2 (and the copy from B2
> > > --> >>
> > > --> > to
> > > --> >
> > > --> >> RB1).
> > > --> >>        >  f. (RB1 forwards to B1.)
> > > --> >>        >  g. B2 forwards (again) to H2 and to B1.
> > > --> >>        >  h. B1 forwards to H1 (see 
> remark below regarding filtering
> > > --> >>
> > > --> > table
> > > --> >
> > > --> >>        >contamination) and to RB1.
> > > --> >>        >  i. Etcetera etcetera.
> > > --> >>        >5. A broadcast storm is 
> born, created by a loop that is not
> > > --> >> protected by TTL
> > > --> >>        >(due to the fact that 
> forwarding between the Rbridges is only
> > > --> >>
> > > --> > across
> > > --> >
> > > --> >> a
> > > --> >>        >single hop) nor by STP (due 
> to the fact that Rbridges do not
> > > --> >> participate in
> > > --> >>        >STP).
> > > --> >>        >6. If forwarding commences at the hardware level and no
> > > --> >>
> > > --> > broadcast
> > > --> >
> > > --> >> rate
> > > --> >>        >limiting is in place, the 
> storm may cause severe damage in a
> > > --> >>
> > > --> > very
> > > --> >
> > > --> >> short time
> > > --> >>        >(note that replicated frames are sent to H1 and H2 (or any
> > > --> >>
> > > --> > network
> > > --> >
> > > --> >> they
> > > --> >>        >could represent).
> > > --> >>        >7. Another unfortunate 
> effect of this storm is that B1 and B2
> > > --> >>
> > > --> > no
> > > --> >
> > > --> >> longer know
> > > --> >>        >where H1 is located (due to the contamination of their
> > > --> >>
> > > --> > filtering
> > > --> >
> > > --> >> tables by a
> > > --> >>        >frame from H1 that arrives 
> from the wrong direction (and in
> > > --> >>
> > > --> > fact
> > > --> >
> > > --> >> from
> > > --> >>        >multiple directions). As a 
> result, a possible unicast frame
> > > --> >>
> > > --> > from H2
> > > --> >
> > > --> >> to H1
> > > --> >>        >will just join the storm over the loop at least in one
> > > --> >>
> > > --> > direction
> > > --> >
> > > --> >> (RB2 will
> > > --> >>        >forward it to RB1) but will not arrive at H1...
> > > --> >>        >
> > > --> >>        >One possible solution could 
> be for RB2 to identify the fact
> > > --> >>
> > > --> > that it
> > > --> >
> > > --> >> is
> > > --> >>        >receiving a frame from a host with a MAC address that is
> > > --> >>
> > > --> > associated
> > > --> >
> > > --> >> with a
> > > --> >>        >segment it thought it isn't 
> connected to. Hence, it may trigger
> > > --> >>
> > > --> > an
> > > --> >
> > > --> >> immediate
> > > --> >>        >neighbor discovery / designated Rbridge election. However,
> > > --> >>
> > > --> > because
> > > --> >
> > > --> >> Rbridges
> > > --> >>        >should allow host mobility, 
> this frame may need to be forwarded
> > > --> >>
> > > --> > (and
> > > --> >
> > > --> >> hence
> > > --> >>        >the storm commences).
> > > --> >>        >
> > > --> >>        >As mentioned above, any comments are welcome.
> > > --> >>        >  Gideon Kaempfer
> > > --> >>        >
> > > --> >>        >_______________________________________________
> > > --> >>        >rbridge mailing list
> > > --> >>        >[email-masked]
> > > --> >>        > http://mailman.postel.org/mailman/listinfo/rbridge
> > > --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
> > > --> >>        >
> > > --> >>        >
> > > --> >>
> > > --> >>        _______________________________________________
> > > --> >>        rbridge mailing list
> > > --> >>        [email-masked]
> > > --> >>        http://mailman.postel.org/mailman/listinfo/rbridge
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> >>
> > > --> > _______________________________________________
> > > --> > rbridge mailing list
> > > --> > [email-masked]
> > > --> > http://mailman.postel.org/mailman/listinfo/rbridge
> > > --> >
> > > --> >
> > > -->
> > > --> _______________________________________________
> > > --> rbridge mailing list
> > > --> [email-masked]
> > > --> http://mailman.postel.org/mailman/listinfo/rbridge
> > > -->
> > >
> > >
> >
> > _______________________________________________
> > rbridge mailing list
> > [email-masked]
> > http://mailman.postel.org/mailman/listinfo/rbridge
> >
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Wed, 8 Nov 2006 04:27:54 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 17028

This seems like an intriguing possibility. We would need to get an OUI
to go into the top 24 bits of these addresses. With an OUI we can then
easily allocate our own multicast addresses (all rbridges, etc.) so we
would end up needing one OUI and one Ethertype allocated but nothing
else. (You might think that with these magic addresses, you could
dispense with the TRILL Ethertype but, besides the fact that that would
be non-standard, you can't anyway because, for example, you may need to
insert a VLAN tag and/or other tags between the addresses and the shim.)

Thanks,
Donald

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of [email-masked]
Sent: Wednesday, November 08, 2006 3:02 AM
To: Sanjay Sane (sanjays)
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?

This is an extremely cute proposal, and it works. Let me explain
Sanjay's proposal in different words, in case it doesn't sink in the
first time one sees it.

He is proposing using the shim header that looks like an Ethernet
header, with SA=ingress RBridge MAC R1 and DA=egress RBridge MAC R2, but
solving the two problems brought up at the meeting which were:

a) bridges on an intermedaite link might have previously incorrectly
learned the location of R2, because packets from R2 might have arrived
at the link from different directions.

b) if we avoid problem a) by using different MAC addresses for "to" and
"from" for each RBridge, so that we avoid bridges ever learning the
direction of the egress RBridge, the problem is that we don't benefit
from good bridge learning on the link.

And also, he is proposing making it possible to use that header on a
link with more than 2 RBridges.

The way he's proposing doing it is using the 48 bit Destination and
Source addresses in the Ethernet header in an unconventional way.

Instead of putting the MAC address of the ingress and egress RBridges in
those fields, he is suggesting the following:

a) assign 16-bit nicknames to all the RBridges (as we were going to do
with the short shim header)
b) assign, say, 8 bit link-local nicknames to all the RBridges on a link
(this can be done through the IS-IS Hello protocol quite easily--I'd
suggest doing it by having the Designated RBridge assign the values, but
it could also be done by having each RBridge choose a nickname and back
off if someone with a better ID has chosen that
nickname)
c) in the Destination address field in the Ethernet header, put in both
the 16-bit egress RBridge nickname, and the nextop 8-bit nickname
d) in the Source address field in the Ethernet header, put in both the
16-bit ingress RBridge nickname, and the transmitting RBridge on that
link's 8-bit nickname

So---bridges will never incorrectly learn the location of any RBridges,
because no matter where a packet from
R12 arrives into the link, the bottom bits will be specific to the
RBridge on the link that injected the packet.

And positive learning can happen as well. Suppose there are n total
RBridge nicknames in use in the whole campus. Suppose there are 5
RBridges on the link. The bridges inside the link will see 5*n RBridge
addresses as a result of this proposal. In other words, if the RBridge
nicknames are 1, 2, ... 517. and there are 5 RBridges on the link, the
MAC addresses the bridges will see are:
{1 - 517} | {1 - 5}

In Sanjay's picture, if R4 wants to direct a packet towards R2 rather
than R3 for egress R1, it encodes R2's nickname into the "neighbor's
nickname" portion of the egress RBridge field.

Anyway---something for people to think about.

Radia

----- Original Message -----
From: "Sanjay Sane (sanjays)" <[email-masked]>
Date: Tuesday, November 7, 2006 12:24 pm
Subject: RE: [rbridge] Should we optimize the common case?

> Oops. Typed send before finishing. 
> 
> attached the diagram.
> Completed the description. See inline
> 
> -Sanjay
> 
> 
> 
> -----Original Message-----
> From: Sanjay Sane (sanjays)
> Sent: Tuesday, November 07, 2006 12:19 PM
> To: 'Radia Perlman'; Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Should we optimize the common case?
> 
> Radia,
> 
> In today's presentation, the last suggested format was the following
> 
> 48 bits - egress rbridge id
> 48 bits - ingress rbridge id
> 16 bits - pt = TRILL
> 16 bits - reserved + flag + TTL - the link local nicknames (who's 
> supposed to be the next-hop is in here) ....
> 
> 
> when this goes over a shared media, there were learning issues as 
> pointed out during the meeting. Pls refer to this diagram to 
> understandthe problem
> 
> 1. if packets from r1 to r5 are sent once via r2, and other times, via

> r3, the classical bridge b will learn r1 as behind link 1 or 2.
> So, this
> is the learning problem. 
> 2. thus, for return traffic frm r5 to r1, even though r4 wants r2 to 
> be the next-hop for this packet, if we keep the destination rbridge id

> as r1, the classical bridge would forward the packet to link 1, 
> thereby blackholing this traffic.
> 
> So, there are multiple issues - learning issues and blakholing. 
> 
> Potential solution:
> 
> r2, r3 and r4 exchange the link-local nicknames, say link local 
> nicknamefor r2 = 1, r3 = 2, r4 = 3.
> 
> Now, instead of using the complete 48 bit rbridge ID as the rbridge 
> MAC address, we can fill the 48 bits as follows:
> 
> 16 bit - rbridge nickname
> 4 bits - link local nickname
> 
> 2 bits - I/G and U/L
> 26 bits - reserved. 
> 
> Thus, on this classical ethernet/bridging cloud, rbridge emits the 
> packet with the appropriate link-local nicknames.
> 
> For e.g. 
> - packets from r1 to r5, sent via r2, are sent with SA = r1.<link 
> source's link-local-nickname> = r1.1, , notice link-local-nickname of 
> r2 is chosen.
> If r2 intends r4 to be the next-hop, he'll put DA = r5.<link 
> destination's link-local-nickname> = r5.3, notice link-local-nickname 
> of r4 is chosen.
> Thus, classical bridge will learn r1.1 on the link 1. 
> 
> - packets from r1 to r5, sent via r3, are sent with SA = r1.<link 
> source's link-local-nickname> = r1.2, , notice link-local-nickname of 
> r3 is chosen.
> If r3 intends r4 to be the next-hop, he'll put DA = r5.<link 
> destination's link-local-nickname> = r5.3, notice link-local-nickname 
> of r4 is chosen.
> Thus, classical bridge will learn r1.2 on the link 1. 
> 
> -- thus no learning issues. 
> 
> - return traffic from r5 to r1, sent via r4. If r4 intends r2 to be 
> the next hop, it'll put SA = r5.<link source's link-local-nickname> = 
> r5.3, , notice link-local-nickname of r4 is chosen.
> If r5 intends r2 to be the next-hop, he'll put DA = r1.<link 
> destination's link-local-nickname> = r1.1, notice link-local-nickname 
> of r1 is chosen.
> 
> -- thus no blackholing.
> 
> -Sanjay
> 
> 
> 
> -----Original Message-----
> From: [email-masked] [[email-masked]] On 
> Behalf Of Radia Perlman
> Sent: Tuesday, November 07, 2006 10:23 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> Looking at Silvano's proposed shim header---the only reason we need 
> the outer header is to distinguish between RBridge neighbors, in the 
> case of unicast, specifying next hop, and in the case of multicast, 
> specifying transmitter.
> 
> His format has two bytes after the Ethernet header portion of the shim

> for TTL, and a bunch of reserved bits.
> 
> That leaves 10 bits. We can dynamically (through the IS-IS Hello) give

> out, say, 4 bit link-local nicknames, and stick them there.
> 
> Then the only time we'd need an outer header is if there are more 
> than,say, 16 RBridges on the same link.
> 
> Radia
> 
> Silvano Gai wrote:
> 
> >I am not looking at TRILL for increased scalability, but for
> spanning
> >tree replacement to get high bisectional bandwidth.
> >
> >-- Silvano
> >
> >  
> >
> >>-----Original Message-----
> >>From: Gray, Eric [[email-masked]]
> >>Sent: Monday, November 06, 2006 10:38 AM
> >>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
> >>Subject: RE: [rbridge] Should we optimize the common case?
> >>
> >>Silvano,
> >>
> >>	The assertion that only fortune 500 companies are interested in
> TRILL
> >>is baseless and untrue.  One reason why you may believe this is
> the
> >>case, is that you are making certain assumptions about
> complexity and
> >>scale of the desired solution that are equally unfounded or false.
> >>
> >>	There is nothing that particularly prohibits definition of some
> form
> >>of RBridge functionality that might be simple enough to deploy
> in
> >>relatively small networks - where higher speed link are becoming
> more
> >>common and wasting high speed links is also a problem.
> >>
> >>	The types of networks you're talking about cannot realistically 
> >>operate with plug & play devices, and greater scalability is
> >>    
> >>
> >paramount.
> >  
> >
> >>The work we're doing in this WG is aimed at simplistic, plug &
> play
> >>deployment where increased scalability is a secondary consideration.
> >>
> >>--
> >>Eric
> >>
> >>--> -----Original Message-----
> >>--> From: [email-masked] [[email-masked]] On

> >>--> Behalf Of Silvano Gai
> >>--> Sent: Monday, November 06, 2006 1:51 AM
> >>--> To: Eastlake III Donald-LDE008; [email-masked]
> >>--> Subject: Re: [rbridge] Should we optimize the common case?
> >>-->
> >>-->
> >>--> Donald,
> >>-->
> >>--> The high end and the low end are extremely different.
> >>-->
> >>--> The customers interested in TRILL are the Fortune 500
> companies. 
> >>--> Large Enterprise networks and large data centers used to run 
> >>--> Financial, Insurance, Health, Chemical, Oil, Information and 
> >>--> manufacturing companies.
> >>-->
> >>--> They have huge demand for high bandwidth and low latency.
> >>-->
> >>--> Each of these companies spends millions each year in network 
> >>--> operation
> >>--> (OPEX) and millions in new equipment (CAPEX). In all of them
> OPEX>>    
> >>
> >is
> >  
> >
> >>--> much larger than CAPEX. They only buy major vendor
> equipments and
> >>--> they install them according to the recommended vendor design 
> >>--> guideline.
> >>--> Typically they have an internal certification lab in which
> they
> >>--> test the network configuration and the software releases
> before
> >>--> putting them in production networks.
> >>-->
> >>--> They have a very well defined concept of backbone ports and
> access
> >>--> ports. All the backbone ports are in fiber at the highest
> possible
> >>--> speed (today 10 GE). For the access port they use a mix of
> fiber
> >>--> and copper.
> >>--> The backbone has a regular structure that matches the vendor
> >>    
> >>
> >design
> >  
> >
> >>--> guideline and the result of the certification experiment they 
> >>--> have done independently.
> >>-->
> >>--> A network outage can cost millions/hour.
> >>-->
> >>--> There is no way you will see in one of these backbones a hub or
> >>    
> >>
> >any
> >  
> >
> >>--> other uncontrolled device. NEVER.
> >>-->
> >>--> That is the reason why I think this is the most important
> case for
> >>--> TRILL.
> >>-->
> >>--> More inline.
> >>-->
> >>--> > -----Original Message-----
> >>--> > From: [email-masked]
> >>--> [[email-masked]]
> >>--> On
> >>--> > Behalf Of Eastlake III Donald-LDE008
> >>--> > Sent: Sunday, November 05, 2006 10:20 PM
> >>--> > To: [email-masked]
> >>--> > Subject: Re: [rbridge] Should we optimize the common case?
> >>--> >
> >>--> > Silvano,
> >>--> >
> >>--> > Why do you think that 90% of Rbridge deployment will be
> for this
> >>--> unusual
> >>--> > case? I mean, I have no problem with the belief that
> >>--> Rbridges would be
> >>--> > better than bridges in this case but why shouldn't that be
> true>>    
> >>
> >of
> >  
> >
> >>--> less
> >>--> > high end uses?
> >>--> >
> >>--> > A while ago on this list I posted a rhetorical question as to
> >>    
> >>
> >why
> >  
> >
> >>--> > Rbriges shouldn't eventually replace all bridges. No one
> posted>>    
> >>
> >an
> >  
> >
> >>--> > answer.
> >>-->
> >>--> This technology will start in the high end and move down to the 
> >>--> lower end. How low will it goes is a good question.
> >>-->
> >>--> The low end is extremely cost sensitive. When we buys a
> switch or
> >>    
> >>
> >a
> >  
> >
> >>--> router on the Internet for 50-100$, the COGS cannot be more that

> >>--> 15-30$, even with low margins. This implies that few dollar more

> >>--> to increase the memory size or the processor speed are a big 
> >>--> deal. Add software development cost. Couple this with the fact 
> >>--> that today we have low cost 1GE switches used by low-end users 
> >>--> that have problems pushing or pulling more than few Mb/s. There 
> >>--> is no bandwidth demand in the low end.
> >>--> Spanning tree is just fine. Cost is the big issue. Moreover 
> >>--> there is the huge issue of training home/small office installers

> >>--> in this new technology.
> >>-->
> >>--> My 0.2 cents
> >>-->
> >>--> -- Silvano
> >>-->
> >>--> >
> >>--> > Why not specify Rbridges more or less as we have been for
> >>--> the common
> >>--> > bridge case and, in the backbone case you are talking
> >>--> about, just drop
> >>--> > the MAC addresses on the point-to-point links within the
> >>    
> >>
> >backbone?
> >  
> >
> >>--> > Doesn't that produce less overhead than your proposal
> >>--> below in both
> >>--> the
> >>--> > point-to-point and shared media cases?
> >>--> >
> >>--> > Donald
> >>--> >
> >>--> > -----Original Message-----
> >>--> > From: [email-masked]
> >>--> [[email-masked]]
> >>--> On
> >>--> > Behalf Of Silvano Gai
> >>--> > Sent: Wednesday, November 01, 2006 9:07 PM
> >>--> > To: [email-masked]
> >>--> > Subject: [rbridge] Should we optimize the common case?
> >>--> >
> >>--> >
> >>--> > With 16 bit addresses the current TRILL overhead over
> >>--> Ethernet is 20
> >>--> > bytes. If we want to expand the RBridge addresses, it we
> >>--> will go to
> >>--> > 22-24 bytes.
> >>--> >
> >>--> > What customers are telling us is that they will deploy
> RBridges>>    
> >>
> >by
> >  
> >
> >>--> > creating an RBridge backbone in which all the links will be
> >>    
> >>
> >10GE.
> >  
> >
> >>--> >
> >>--> > They will connect regular bridges and host to the
> >>--> periphery of this
> >>--> > backbone.
> >>--> >
> >>--> > They will not mix backbone ports with access ports,
> because this
> >>--> screws
> >>--> > up management, traffic engineering, debugging, and
> >>--> troubleshooting.
> >>--> > Regular network design, easy to understand, is very
> >>--> important. Ports
> >>--> are
> >>--> > cheap, labor is expensive.
> >>--> >
> >>--> > I am totally convinced that this will account for 90+ % of
> TRILL>>--> > deployment.
> >>--> >
> >>--> > I am wondering if it makes sense to have a solution
> >>--> highly optimized
> >>--> for
> >>--> > such an environment.
> >>--> >
> >>--> > For example we can put the egress/ingress RBridge
> addresses in
> >>    
> >>
> >the
> >  
> >
> >>--> outer
> >>--> > MAC addresses and define a TRILL shim header that
> >>--> contains 1 byte of
> >>--> hop
> >>--> > limit and 1 byte reserved. For this common case we will get:
> >>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
> >>--> > 2) nickname = MAC address, i.e no hash collision
> >>--> > 3) zero-conf achieved
> >>--> >
> >>--> > In the case we need to go over a shared media we will need to
> >>    
> >>
> >add
> >  
> >
> >>--> > another Ethernet encapsulation to carry the next hop
> >>--> address, i.e. 14
> >>--> > bytes
> >>--> > - total overhead will be 30 bytes
> >>--> >
> >>--> > Summarizing:
> >>--> > - current proposal 20-24 bytes overhead
> >>--> > - new proposal on point to point: 16 bytes
> >>--> > - new proposal on shared media: 30 bytes
> >>--> >
> >>--> > Comments?
> >>--> >
> >>--> > -- Silvano
> >>--> >
> >>--> >
> >>--> > _______________________________________________
> >>--> > rbridge mailing list
> >>--> > [email-masked]
> >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
> >>--> >
> >>--> > _______________________________________________
> >>--> > rbridge mailing list
> >>--> > [email-masked]
> >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
> >>-->
> >>--> _______________________________________________
> >>--> rbridge mailing list
> >>--> [email-masked]
> >>--> http://mailman.postel.org/mailman/listinfo/rbridge
> >>-->
> >>    
> >>
> >
> >_______________________________________________
> >rbridge mailing list
> >[email-masked]
> >http://mailman.postel.org/mailman/listinfo/rbridge
> >  
> >
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Wed, 08 Nov 2006 00:02:19 -0800
From: [email-masked]
To: "Sanjay Sane (sanjays)" <[email-masked]>
Priority: normal
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 16101

This is an extremely cute proposal, and it works. Let me explain Sanjay's proposal in different words, in case
it doesn't sink in the first time one sees it.

He is proposing using the shim header that looks like an Ethernet header, with SA=ingress RBridge MAC R1
and DA=egress RBridge MAC R2, but solving the two problems
brought up at the meeting which were:

a) bridges on an intermedaite link might have previously incorrectly learned the location of R2, because packets
from R2 might have arrived at the link from different directions.

b) if we avoid problem a) by using different MAC addresses for "to" and "from" for each RBridge, so that
we avoid bridges ever learning the direction of the egress RBridge, the problem is that we don't benefit from
good bridge learning on the link.

And also, he is proposing making it possible to use that header on a link with more than 2 RBridges.

The way he's proposing doing it is using the 48 bit Destination and Source addresses in the Ethernet header
in an unconventional way.

Instead of putting the MAC address of the ingress and egress RBridges in those fields, he is suggesting the following:

a) assign 16-bit nicknames to all the RBridges (as we were going to do with the short shim header)
b) assign, say, 8 bit link-local nicknames to all the RBridges on a link (this can be done through the IS-IS Hello
protocol quite easily--I'd suggest doing it by having the Designated RBridge assign the values, but it could also
be done by having each RBridge choose a nickname and back off if someone with a better ID has chosen that
nickname)
c) in the Destination address field in the Ethernet header, put in both the 16-bit egress RBridge nickname, and
the nextop 8-bit nickname
d) in the Source address field in the Ethernet header, put in both the 16-bit ingress RBridge nickname, and
the transmitting RBridge on that link's 8-bit nickname

So---bridges will never incorrectly learn the location of any RBridges, because no matter where a packet from
R12 arrives into the link, the bottom bits will be specific to the RBridge on the link that injected the packet.

And positive learning can happen as well. Suppose there are n total RBridge nicknames in use in the whole
campus. Suppose there are 5 RBridges on the link. The bridges inside the link will see 5*n RBridge addresses
as a result of this proposal. In other words, if the RBridge nicknames are 1, 2, ... 517. and there are 5 RBridges
on the link, the MAC addresses the bridges will see are:
{1 - 517} | {1 - 5}

In Sanjay's picture, if R4 wants to direct a packet towards R2 rather than R3 for egress R1, it encodes R2's nickname
into the "neighbor's nickname" portion of the egress RBridge field.

Anyway---something for people to think about.

Radia

----- Original Message -----
From: "Sanjay Sane (sanjays)" <[email-masked]>
Date: Tuesday, November 7, 2006 12:24 pm
Subject: RE: [rbridge] Should we optimize the common case?

> Oops. Typed send before finishing. 
> 
> attached the diagram.
> Completed the description. See inline
> 
> -Sanjay
> 
> 
> 
> -----Original Message-----
> From: Sanjay Sane (sanjays) 
> Sent: Tuesday, November 07, 2006 12:19 PM
> To: 'Radia Perlman'; Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Should we optimize the common case?
> 
> Radia,
> 
> In today's presentation, the last suggested format was the following
> 
> 48 bits - egress rbridge id
> 48 bits - ingress rbridge id
> 16 bits - pt = TRILL
> 16 bits - reserved + flag + TTL - the link local nicknames (who's
> supposed to be the next-hop is in here) ....
> 
> 
> when this goes over a shared media, there were learning issues as
> pointed out during the meeting. Pls refer to this diagram to 
> understandthe problem
> 
> 1. if packets from r1 to r5 are sent once via r2, and other times, via
> r3, the classical bridge b will learn r1 as behind link 1 or 2. 
> So, this
> is the learning problem. 
> 2. thus, for return traffic frm r5 to r1, even though r4 wants r2 
> to be
> the next-hop for this packet, if we keep the destination rbridge 
> id as
> r1, the classical bridge would forward the packet to link 1, thereby
> blackholing this traffic. 
> 
> So, there are multiple issues - learning issues and blakholing. 
> 
> Potential solution:
> 
> r2, r3 and r4 exchange the link-local nicknames, say link local 
> nicknamefor r2 = 1, r3 = 2, r4 = 3.
> 
> Now, instead of using the complete 48 bit rbridge ID as the 
> rbridge MAC
> address, we can fill the 48 bits as follows:
> 
> 16 bit - rbridge nickname
> 4 bits - link local nickname
> 
> 2 bits - I/G and U/L
> 26 bits - reserved. 
> 
> Thus, on this classical ethernet/bridging cloud, rbridge emits the
> packet with the appropriate link-local nicknames.
> 
> For e.g. 
> - packets from r1 to r5, sent via r2, are sent with
> SA = r1.<link source's link-local-nickname> = r1.1, , notice
> link-local-nickname of r2 is chosen. 
> If r2 intends r4 to be the next-hop, he'll put 
> DA = r5.<link destination's link-local-nickname> = r5.3, notice
> link-local-nickname of r4 is chosen. 
> Thus, classical bridge will learn r1.1 on the link 1. 
> 
> - packets from r1 to r5, sent via r3, are sent with
> SA = r1.<link source's link-local-nickname> = r1.2, , notice
> link-local-nickname of r3 is chosen. 
> If r3 intends r4 to be the next-hop, he'll put 
> DA = r5.<link destination's link-local-nickname> = r5.3, notice
> link-local-nickname of r4 is chosen. 
> Thus, classical bridge will learn r1.2 on the link 1. 
> 
> -- thus no learning issues. 
> 
> - return traffic from r5 to r1, sent via r4. If r4 intends r2 to 
> be the
> next hop, it'll put
> SA = r5.<link source's link-local-nickname> = r5.3, , notice
> link-local-nickname of r4 is chosen. 
> If r5 intends r2 to be the next-hop, he'll put 
> DA = r1.<link destination's link-local-nickname> = r1.1, notice
> link-local-nickname of r1 is chosen. 
> 
> -- thus no blackholing.
> 
> -Sanjay
> 
> 
> 
> -----Original Message-----
> From: [email-masked] [[email-masked]] On
> Behalf Of Radia Perlman
> Sent: Tuesday, November 07, 2006 10:23 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> Looking at Silvano's proposed shim header---the only reason we 
> need the
> outer header is to distinguish between RBridge neighbors, in the 
> case of
> unicast, specifying next hop, and in the case of multicast, specifying
> transmitter.
> 
> His format has two bytes after the Ethernet header portion of the shim
> for TTL, and a bunch of reserved bits.
> 
> That leaves 10 bits. We can dynamically (through the IS-IS Hello) give
> out, say, 4 bit link-local nicknames, and stick them there.
> 
> Then the only time we'd need an outer header is if there are more 
> than,say, 16 RBridges on the same link.
> 
> Radia
> 
> Silvano Gai wrote:
> 
> >I am not looking at TRILL for increased scalability, but for 
> spanning 
> >tree replacement to get high bisectional bandwidth.
> >
> >-- Silvano
> >
> >  
> >
> >>-----Original Message-----
> >>From: Gray, Eric [[email-masked]]
> >>Sent: Monday, November 06, 2006 10:38 AM
> >>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
> >>Subject: RE: [rbridge] Should we optimize the common case?
> >>
> >>Silvano,
> >>
> >>	The assertion that only fortune 500 companies are interested in
> TRILL 
> >>is baseless and untrue.  One reason why you may believe this is 
> the 
> >>case, is that you are making certain assumptions about 
> complexity and 
> >>scale of the desired solution that are equally unfounded or false.
> >>
> >>	There is nothing that particularly prohibits definition of some
> form 
> >>of RBridge functionality that might be simple enough to deploy 
> in 
> >>relatively small networks - where higher speed link are becoming 
> more 
> >>common and wasting high speed links is also a problem.
> >>
> >>	The types of networks you're talking about cannot realistically 
> >>operate with plug & play devices, and greater scalability is
> >>    
> >>
> >paramount.
> >  
> >
> >>The work we're doing in this WG is aimed at simplistic, plug & 
> play 
> >>deployment where increased scalability is a secondary consideration.
> >>
> >>--
> >>Eric
> >>
> >>--> -----Original Message-----
> >>--> From: [email-masked]
> >>--> [[email-masked]] On Behalf Of Silvano Gai
> >>--> Sent: Monday, November 06, 2006 1:51 AM
> >>--> To: Eastlake III Donald-LDE008; [email-masked]
> >>--> Subject: Re: [rbridge] Should we optimize the common case?
> >>-->
> >>-->
> >>--> Donald,
> >>-->
> >>--> The high end and the low end are extremely different.
> >>-->
> >>--> The customers interested in TRILL are the Fortune 500 
> companies. 
> >>--> Large Enterprise networks and large data centers used to run 
> >>--> Financial, Insurance, Health, Chemical, Oil, Information and 
> >>--> manufacturing companies.
> >>-->
> >>--> They have huge demand for high bandwidth and low latency.
> >>-->
> >>--> Each of these companies spends millions each year in network 
> >>--> operation
> >>--> (OPEX) and millions in new equipment (CAPEX). In all of them 
> OPEX>>    
> >>
> >is
> >  
> >
> >>--> much larger than CAPEX. They only buy major vendor 
> equipments and 
> >>--> they install them according to the recommended vendor design 
> >>--> guideline.
> >>--> Typically they have an internal certification lab in which 
> they 
> >>--> test the network configuration and the software releases 
> before 
> >>--> putting them in production networks.
> >>-->
> >>--> They have a very well defined concept of backbone ports and 
> access
> >>--> ports. All the backbone ports are in fiber at the highest 
> possible
> >>--> speed (today 10 GE). For the access port they use a mix of 
> fiber 
> >>--> and copper.
> >>--> The backbone has a regular structure that matches the vendor
> >>    
> >>
> >design
> >  
> >
> >>--> guideline and the result of the certification experiment
> >>--> they have done
> >>--> independently.
> >>-->
> >>--> A network outage can cost millions/hour.
> >>-->
> >>--> There is no way you will see in one of these backbones a hub or
> >>    
> >>
> >any
> >  
> >
> >>--> other uncontrolled device. NEVER.
> >>-->
> >>--> That is the reason why I think this is the most important 
> case for
> >>--> TRILL.
> >>-->
> >>--> More inline.
> >>-->
> >>--> > -----Original Message-----
> >>--> > From: [email-masked]
> >>--> [[email-masked]]
> >>--> On
> >>--> > Behalf Of Eastlake III Donald-LDE008
> >>--> > Sent: Sunday, November 05, 2006 10:20 PM
> >>--> > To: [email-masked]
> >>--> > Subject: Re: [rbridge] Should we optimize the common case?
> >>--> >
> >>--> > Silvano,
> >>--> >
> >>--> > Why do you think that 90% of Rbridge deployment will be 
> for this
> >>--> unusual
> >>--> > case? I mean, I have no problem with the belief that
> >>--> Rbridges would be
> >>--> > better than bridges in this case but why shouldn't that be 
> true>>    
> >>
> >of
> >  
> >
> >>--> less
> >>--> > high end uses?
> >>--> >
> >>--> > A while ago on this list I posted a rhetorical question as to
> >>    
> >>
> >why
> >  
> >
> >>--> > Rbriges shouldn't eventually replace all bridges. No one 
> posted>>    
> >>
> >an
> >  
> >
> >>--> > answer.
> >>-->
> >>--> This technology will start in the high end and move down to
> >>--> the lower
> >>--> end. How low will it goes is a good question.
> >>-->
> >>--> The low end is extremely cost sensitive. When we buys a 
> switch or
> >>    
> >>
> >a
> >  
> >
> >>--> router on the Internet for 50-100$, the COGS cannot be more
> >>--> that 15-30$,
> >>--> even with low margins. This implies that few dollar more to
> >>--> increase the
> >>--> memory size or the processor speed are a big deal. Add software
> >>--> development cost. Couple this with the fact that today we
> >>--> have low cost
> >>--> 1GE switches used by low-end users that have problems
> >>--> pushing or pulling
> >>--> more than few Mb/s. There is no bandwidth demand in the low end.
> >>--> Spanning tree is just fine. Cost is the big issue. Moreover
> >>--> there is the
> >>--> huge issue of training home/small office installers in this new
> >>--> technology.
> >>-->
> >>--> My 0.2 cents
> >>-->
> >>--> -- Silvano
> >>-->
> >>--> >
> >>--> > Why not specify Rbridges more or less as we have been for
> >>--> the common
> >>--> > bridge case and, in the backbone case you are talking
> >>--> about, just drop
> >>--> > the MAC addresses on the point-to-point links within the
> >>    
> >>
> >backbone?
> >  
> >
> >>--> > Doesn't that produce less overhead than your proposal
> >>--> below in both
> >>--> the
> >>--> > point-to-point and shared media cases?
> >>--> >
> >>--> > Donald
> >>--> >
> >>--> > -----Original Message-----
> >>--> > From: [email-masked]
> >>--> [[email-masked]]
> >>--> On
> >>--> > Behalf Of Silvano Gai
> >>--> > Sent: Wednesday, November 01, 2006 9:07 PM
> >>--> > To: [email-masked]
> >>--> > Subject: [rbridge] Should we optimize the common case?
> >>--> >
> >>--> >
> >>--> > With 16 bit addresses the current TRILL overhead over
> >>--> Ethernet is 20
> >>--> > bytes. If we want to expand the RBridge addresses, it we
> >>--> will go to
> >>--> > 22-24 bytes.
> >>--> >
> >>--> > What customers are telling us is that they will deploy 
> RBridges>>    
> >>
> >by
> >  
> >
> >>--> > creating an RBridge backbone in which all the links will be
> >>    
> >>
> >10GE.
> >  
> >
> >>--> >
> >>--> > They will connect regular bridges and host to the
> >>--> periphery of this
> >>--> > backbone.
> >>--> >
> >>--> > They will not mix backbone ports with access ports, 
> because this
> >>--> screws
> >>--> > up management, traffic engineering, debugging, and
> >>--> troubleshooting.
> >>--> > Regular network design, easy to understand, is very
> >>--> important. Ports
> >>--> are
> >>--> > cheap, labor is expensive.
> >>--> >
> >>--> > I am totally convinced that this will account for 90+ % of 
> TRILL>>--> > deployment.
> >>--> >
> >>--> > I am wondering if it makes sense to have a solution
> >>--> highly optimized
> >>--> for
> >>--> > such an environment.
> >>--> >
> >>--> > For example we can put the egress/ingress RBridge 
> addresses in
> >>    
> >>
> >the
> >  
> >
> >>--> outer
> >>--> > MAC addresses and define a TRILL shim header that
> >>--> contains 1 byte of
> >>--> hop
> >>--> > limit and 1 byte reserved. For this common case we will get:
> >>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
> >>--> > 2) nickname = MAC address, i.e no hash collision
> >>--> > 3) zero-conf achieved
> >>--> >
> >>--> > In the case we need to go over a shared media we will need to
> >>    
> >>
> >add
> >  
> >
> >>--> > another Ethernet encapsulation to carry the next hop
> >>--> address, i.e. 14
> >>--> > bytes
> >>--> > - total overhead will be 30 bytes
> >>--> >
> >>--> > Summarizing:
> >>--> > - current proposal 20-24 bytes overhead
> >>--> > - new proposal on point to point: 16 bytes
> >>--> > - new proposal on shared media: 30 bytes
> >>--> >
> >>--> > Comments?
> >>--> >
> >>--> > -- Silvano
> >>--> >
> >>--> >
> >>--> > _______________________________________________
> >>--> > rbridge mailing list
> >>--> > [email-masked]
> >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
> >>--> >
> >>--> > _______________________________________________
> >>--> > rbridge mailing list
> >>--> > [email-masked]
> >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
> >>-->
> >>--> _______________________________________________
> >>--> rbridge mailing list
> >>--> [email-masked]
> >>--> http://mailman.postel.org/mailman/listinfo/rbridge
> >>-->
> >>    
> >>
> >
> >_______________________________________________
> >rbridge mailing list
> >[email-masked]
> >http://mailman.postel.org/mailman/listinfo/rbridge
> >  
> >
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 

From: "Gray, Eric" <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>, Radia Perlman <[email-masked]>, Silvano Gai <[email-masked]>
Date: Tue, 7 Nov 2006 15:33:13 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 14290

At what point does the proposal become complex enough to be recognized 
as sub-optimal, even in the supposed "common case" envisioned by those 
arguing that the only solution that is important is one that applies to 
large - high-end - networks? 

What is fundamentally wrong with using a single SHIM format?

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Sanjay 
--> Sane (sanjays)
--> Sent: Tuesday, November 07, 2006 3:19 PM
--> To: Radia Perlman; Silvano Gai
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> Radia,
--> 
--> In today's presentation, the last suggested format was the following
--> 
--> 48 bits - egress rbridge id
--> 48 bits - ingress rbridge id
--> 16 bits - pt = TRILL
--> 16 bits - reserved + flag + TTL - the link local nicknames (who's
--> supposed to be the next-hop is in here) 
--> ....
--> 
--> 
--> when this goes over a shared media, there were learning issues as
--> pointed out during the meeting. Pls refer to this diagram 
--> to understand
--> the problem
--> 
--> 1. if packets from r1 to r5 are sent once via r2, and other 
--> times, via
--> r3, the classical bridge b will learn r1 as behind link 1 
--> or 2. So, this
--> is the learning problem. 
--> 2. thus, for return traffic frm r5 to r1, even though r4 
--> wants r2 to be
--> the next-hop for this packet, if we keep the destination 
--> rbridge id as
--> r1, the classical bridge would forward the packet to link 1, thereby
--> blackholing this traffic. 
--> 
--> So, there are multiple issues - learning issues and blakholing. 
--> 
--> Potential solution:
--> 
--> r2, r3 and r4 exchange the link-local nicknames, say link 
--> local nickname
--> for r2 = 1, r3 = 2, r4 = 3.
--> 
--> Now, instead of using the complete 48 bit rbridge ID as the 
--> rbridge MAC
--> address, we can fill the 48 bits as follows:
--> 
--> 16 bit - rbridge nickname
--> 4 bits - link local nickname
--> 
--> 2 bits - I/G and U/L
--> 26 bits - reserved. 
--> 
--> Thus, on this classical ethernet/bridging cloud, rbridge emits the
--> packet with the appropriate link-local nicknames.
--> 
--> For e.g. 
--> - packets from r1 to r5, sent via r2, are sent with
--> SA = r1.<link source's link-local-nickname> = r1.1, , notice
--> link-local-nickname of r2 is chosen. 
--> If r2 intends r4 to be the next-hop, he'll put 
--> DA = r5.<link destination's link-local-nickname> = r5.3, notice
--> link-local-nickname of r4 is chosen. 
--> Thus, classical bridge will learn r1.1 on the link 1. 
--> 
--> - packets from r1 to r5, sent via r3, are sent with
--> SA = r1.<link source's link-local-nickname> = r1.2, , notice
--> link-local-nickname of r3 is chosen. 
--> If r3 intends r4 to be the next-hop, he'll put 
--> DA = r5.<link destination's link-local-nickname> = r5.3, notice
--> link-local-nickname of r4 is chosen. 
--> Thus, classical bridge will learn r1.2 on the link 1. 
--> 
--> -- thus no learning issues. 
--> 
--> - return traffic from r5 to r1, sent via r4. If r4 intends 
--> r2 to be the
--> next hop, it'll put
--> 
-->  
--> 
--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On
--> Behalf Of Radia Perlman
--> Sent: Tuesday, November 07, 2006 10:23 AM
--> To: Silvano Gai
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> Looking at Silvano's proposed shim header---the only reason 
--> we need the
--> outer header is to distinguish between RBridge neighbors, 
--> in the case of
--> unicast, specifying next hop, and in the case of multicast, 
--> specifying
--> transmitter.
--> 
--> His format has two bytes after the Ethernet header portion 
--> of the shim
--> for TTL, and a bunch of reserved bits.
--> 
--> That leaves 10 bits. We can dynamically (through the IS-IS 
--> Hello) give
--> out, say, 4 bit link-local nicknames, and stick them there.
--> 
--> Then the only time we'd need an outer header is if there 
--> are more than,
--> say, 16 RBridges on the same link.
--> 
--> Radia
--> 
--> Silvano Gai wrote:
--> 
--> >I am not looking at TRILL for increased scalability, but 
--> for spanning 
--> >tree replacement to get high bisectional bandwidth.
--> >
--> >-- Silvano
--> >
--> >  
--> >
--> >>-----Original Message-----
--> >>From: Gray, Eric [mailto:[email-masked]]
--> >>Sent: Monday, November 06, 2006 10:38 AM
--> >>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
--> >>Subject: RE: [rbridge] Should we optimize the common case?
--> >>
--> >>Silvano,
--> >>
--> >>	The assertion that only fortune 500 companies are interested in
--> TRILL 
--> >>is baseless and untrue.  One reason why you may believe 
--> this is the 
--> >>case, is that you are making certain assumptions about 
--> complexity and 
--> >>scale of the desired solution that are equally unfounded or false.
--> >>
--> >>	There is nothing that particularly prohibits definition of some
--> form 
--> >>of RBridge functionality that might be simple enough to deploy in 
--> >>relatively small networks - where higher speed link are 
--> becoming more 
--> >>common and wasting high speed links is also a problem.
--> >>
--> >>	The types of networks you're talking about cannot realistically 
--> >>operate with plug & play devices, and greater scalability is
--> >>    
--> >>
--> >paramount.
--> >  
--> >
--> >>The work we're doing in this WG is aimed at simplistic, 
--> plug & play 
--> >>deployment where increased scalability is a secondary 
--> consideration.
--> >>
--> >>--
--> >>Eric
--> >>
--> >>--> -----Original Message-----
--> >>--> From: [email-masked]
--> >>--> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> >>--> Sent: Monday, November 06, 2006 1:51 AM
--> >>--> To: Eastlake III Donald-LDE008; [email-masked]
--> >>--> Subject: Re: [rbridge] Should we optimize the common case?
--> >>-->
--> >>-->
--> >>--> Donald,
--> >>-->
--> >>--> The high end and the low end are extremely different.
--> >>-->
--> >>--> The customers interested in TRILL are the Fortune 500 
--> companies. 
--> >>--> Large Enterprise networks and large data centers used to run 
--> >>--> Financial, Insurance, Health, Chemical, Oil, Information and 
--> >>--> manufacturing companies.
--> >>-->
--> >>--> They have huge demand for high bandwidth and low latency.
--> >>-->
--> >>--> Each of these companies spends millions each year in network 
--> >>--> operation
--> >>--> (OPEX) and millions in new equipment (CAPEX). In all 
--> of them OPEX
--> >>    
--> >>
--> >is
--> >  
--> >
--> >>--> much larger than CAPEX. They only buy major vendor 
--> equipments and 
--> >>--> they install them according to the recommended vendor design 
--> >>--> guideline.
--> >>--> Typically they have an internal certification lab in 
--> which they 
--> >>--> test the network configuration and the software 
--> releases before 
--> >>--> putting them in production networks.
--> >>-->
--> >>--> They have a very well defined concept of backbone 
--> ports and access
--> 
--> >>--> ports. All the backbone ports are in fiber at the 
--> highest possible
--> 
--> >>--> speed (today 10 GE). For the access port they use a 
--> mix of fiber 
--> >>--> and copper.
--> >>--> The backbone has a regular structure that matches the vendor
--> >>    
--> >>
--> >design
--> >  
--> >
--> >>--> guideline and the result of the certification experiment
--> >>--> they have done
--> >>--> independently.
--> >>-->
--> >>--> A network outage can cost millions/hour.
--> >>-->
--> >>--> There is no way you will see in one of these 
--> backbones a hub or
--> >>    
--> >>
--> >any
--> >  
--> >
--> >>--> other uncontrolled device. NEVER.
--> >>-->
--> >>--> That is the reason why I think this is the most 
--> important case for
--> >>--> TRILL.
--> >>-->
--> >>--> More inline.
--> >>-->
--> >>--> > -----Original Message-----
--> >>--> > From: [email-masked]
--> >>--> [mailto:[email-masked]]
--> >>--> On
--> >>--> > Behalf Of Eastlake III Donald-LDE008
--> >>--> > Sent: Sunday, November 05, 2006 10:20 PM
--> >>--> > To: [email-masked]
--> >>--> > Subject: Re: [rbridge] Should we optimize the common case?
--> >>--> >
--> >>--> > Silvano,
--> >>--> >
--> >>--> > Why do you think that 90% of Rbridge deployment 
--> will be for this
--> >>--> unusual
--> >>--> > case? I mean, I have no problem with the belief that
--> >>--> Rbridges would be
--> >>--> > better than bridges in this case but why shouldn't 
--> that be true
--> >>    
--> >>
--> >of
--> >  
--> >
--> >>--> less
--> >>--> > high end uses?
--> >>--> >
--> >>--> > A while ago on this list I posted a rhetorical 
--> question as to
--> >>    
--> >>
--> >why
--> >  
--> >
--> >>--> > Rbriges shouldn't eventually replace all bridges. 
--> No one posted
--> >>    
--> >>
--> >an
--> >  
--> >
--> >>--> > answer.
--> >>-->
--> >>--> This technology will start in the high end and move down to
--> >>--> the lower
--> >>--> end. How low will it goes is a good question.
--> >>-->
--> >>--> The low end is extremely cost sensitive. When we buys 
--> a switch or
--> >>    
--> >>
--> >a
--> >  
--> >
--> >>--> router on the Internet for 50-100$, the COGS cannot be more
--> >>--> that 15-30$,
--> >>--> even with low margins. This implies that few dollar more to
--> >>--> increase the
--> >>--> memory size or the processor speed are a big deal. 
--> Add software
--> >>--> development cost. Couple this with the fact that today we
--> >>--> have low cost
--> >>--> 1GE switches used by low-end users that have problems
--> >>--> pushing or pulling
--> >>--> more than few Mb/s. There is no bandwidth demand in 
--> the low end.
--> >>--> Spanning tree is just fine. Cost is the big issue. Moreover
--> >>--> there is the
--> >>--> huge issue of training home/small office installers 
--> in this new
--> >>--> technology.
--> >>-->
--> >>--> My 0.2 cents
--> >>-->
--> >>--> -- Silvano
--> >>-->
--> >>--> >
--> >>--> > Why not specify Rbridges more or less as we have been for
--> >>--> the common
--> >>--> > bridge case and, in the backbone case you are talking
--> >>--> about, just drop
--> >>--> > the MAC addresses on the point-to-point links within the
--> >>    
--> >>
--> >backbone?
--> >  
--> >
--> >>--> > Doesn't that produce less overhead than your proposal
--> >>--> below in both
--> >>--> the
--> >>--> > point-to-point and shared media cases?
--> >>--> >
--> >>--> > Donald
--> >>--> >
--> >>--> > -----Original Message-----
--> >>--> > From: [email-masked]
--> >>--> [mailto:[email-masked]]
--> >>--> On
--> >>--> > Behalf Of Silvano Gai
--> >>--> > Sent: Wednesday, November 01, 2006 9:07 PM
--> >>--> > To: [email-masked]
--> >>--> > Subject: [rbridge] Should we optimize the common case?
--> >>--> >
--> >>--> >
--> >>--> > With 16 bit addresses the current TRILL overhead over
--> >>--> Ethernet is 20
--> >>--> > bytes. If we want to expand the RBridge addresses, it we
--> >>--> will go to
--> >>--> > 22-24 bytes.
--> >>--> >
--> >>--> > What customers are telling us is that they will 
--> deploy RBridges
--> >>    
--> >>
--> >by
--> >  
--> >
--> >>--> > creating an RBridge backbone in which all the links will be
--> >>    
--> >>
--> >10GE.
--> >  
--> >
--> >>--> >
--> >>--> > They will connect regular bridges and host to the
--> >>--> periphery of this
--> >>--> > backbone.
--> >>--> >
--> >>--> > They will not mix backbone ports with access ports, 
--> because this
--> >>--> screws
--> >>--> > up management, traffic engineering, debugging, and
--> >>--> troubleshooting.
--> >>--> > Regular network design, easy to understand, is very
--> >>--> important. Ports
--> >>--> are
--> >>--> > cheap, labor is expensive.
--> >>--> >
--> >>--> > I am totally convinced that this will account for 
--> 90+ % of TRILL
--> >>--> > deployment.
--> >>--> >
--> >>--> > I am wondering if it makes sense to have a solution
--> >>--> highly optimized
--> >>--> for
--> >>--> > such an environment.
--> >>--> >
--> >>--> > For example we can put the egress/ingress RBridge 
--> addresses in
--> >>    
--> >>
--> >the
--> >  
--> >
--> >>--> outer
--> >>--> > MAC addresses and define a TRILL shim header that
--> >>--> contains 1 byte of
--> >>--> hop
--> >>--> > limit and 1 byte reserved. For this common case we will get:
--> >>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
--> >>--> > 2) nickname = MAC address, i.e no hash collision
--> >>--> > 3) zero-conf achieved
--> >>--> >
--> >>--> > In the case we need to go over a shared media we 
--> will need to
--> >>    
--> >>
--> >add
--> >  
--> >
--> >>--> > another Ethernet encapsulation to carry the next hop
--> >>--> address, i.e. 14
--> >>--> > bytes
--> >>--> > - total overhead will be 30 bytes
--> >>--> >
--> >>--> > Summarizing:
--> >>--> > - current proposal 20-24 bytes overhead
--> >>--> > - new proposal on point to point: 16 bytes
--> >>--> > - new proposal on shared media: 30 bytes
--> >>--> >
--> >>--> > Comments?
--> >>--> >
--> >>--> > -- Silvano
--> >>--> >
--> >>--> >
--> >>--> > _______________________________________________
--> >>--> > rbridge mailing list
--> >>--> > [email-masked]
--> >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> >>--> >
--> >>--> > _______________________________________________
--> >>--> > rbridge mailing list
--> >>--> > [email-masked]
--> >>--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> >>-->
--> >>--> _______________________________________________
--> >>--> rbridge mailing list
--> >>--> [email-masked]
--> >>--> http://mailman.postel.org/mailman/listinfo/rbridge
--> >>-->
--> >>    
--> >>
--> >
--> >_______________________________________________
--> >rbridge mailing list
--> >[email-masked]
--> >http://mailman.postel.org/mailman/listinfo/rbridge
--> >  
--> >
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Content-class: urn:content-classes:message
Date: Tue, 7 Nov 2006 12:24:31 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: "Sanjay Sane \(sanjays\)" <[email-masked]>, "Radia Perlman" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 24648

This is a multi-part message in MIME format.

------_=_NextPart_001_01C702AA.BC29B977
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Oops. Typed send before finishing.=20

attached the diagram.
Completed the description. See inline

-Sanjay

-----Original Message-----
From: Sanjay Sane (sanjays)=20
Sent: Tuesday, November 07, 2006 12:19 PM
To: 'Radia Perlman'; Silvano Gai
Cc: [email-masked]
Subject: RE: [rbridge] Should we optimize the common case?

Radia,

In today's presentation, the last suggested format was the following

48 bits - egress rbridge id
48 bits - ingress rbridge id
16 bits - pt =3D TRILL
16 bits - reserved + flag + TTL - the link local nicknames (who's
supposed to be the next-hop is in here) ....

when this goes over a shared media, there were learning issues as
pointed out during the meeting. Pls refer to this diagram to understand
the problem

1. if packets from r1 to r5 are sent once via r2, and other times, via
r3, the classical bridge b will learn r1 as behind link 1 or 2. So, this
is the learning problem.=20
2. thus, for return traffic frm r5 to r1, even though r4 wants r2 to be
the next-hop for this packet, if we keep the destination rbridge id as
r1, the classical bridge would forward the packet to link 1, thereby
blackholing this traffic.=20

So, there are multiple issues - learning issues and blakholing.=20

Potential solution:

r2, r3 and r4 exchange the link-local nicknames, say link local nickname
for r2 =3D 1, r3 =3D 2, r4 =3D 3.

Now, instead of using the complete 48 bit rbridge ID as the rbridge MAC
address, we can fill the 48 bits as follows:

16 bit - rbridge nickname
4 bits - link local nickname

2 bits - I/G and U/L
26 bits - reserved.=20

Thus, on this classical ethernet/bridging cloud, rbridge emits the
packet with the appropriate link-local nicknames.

For e.g.=20
- packets from r1 to r5, sent via r2, are sent with
SA =3D r1.<link source's link-local-nickname> =3D r1.1, , notice
link-local-nickname of r2 is chosen.=20
If r2 intends r4 to be the next-hop, he'll put=20
DA =3D r5.<link destination's link-local-nickname> =3D r5.3, notice
link-local-nickname of r4 is chosen.=20
Thus, classical bridge will learn r1.1 on the link 1.=20

- packets from r1 to r5, sent via r3, are sent with
SA =3D r1.<link source's link-local-nickname> =3D r1.2, , notice
link-local-nickname of r3 is chosen.=20
If r3 intends r4 to be the next-hop, he'll put=20
DA =3D r5.<link destination's link-local-nickname> =3D r5.3, notice
link-local-nickname of r4 is chosen.=20
Thus, classical bridge will learn r1.2 on the link 1.=20

-- thus no learning issues.=20

- return traffic from r5 to r1, sent via r4. If r4 intends r2 to be the
next hop, it'll put
SA =3D r5.<link source's link-local-nickname> =3D r5.3, , notice
link-local-nickname of r4 is chosen.=20
If r5 intends r2 to be the next-hop, he'll put=20
DA =3D r1.<link destination's link-local-nickname> =3D r1.1, notice
link-local-nickname of r1 is chosen.=20

-- thus no blackholing.

-Sanjay

=20

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Tuesday, November 07, 2006 10:23 AM
To: Silvano Gai
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?

Looking at Silvano's proposed shim header---the only reason we need the
outer header is to distinguish between RBridge neighbors, in the case of
unicast, specifying next hop, and in the case of multicast, specifying
transmitter.

His format has two bytes after the Ethernet header portion of the shim
for TTL, and a bunch of reserved bits.

That leaves 10 bits. We can dynamically (through the IS-IS Hello) give
out, say, 4 bit link-local nicknames, and stick them there.

Then the only time we'd need an outer header is if there are more than,
say, 16 RBridges on the same link.

Radia

Silvano Gai wrote:

>I am not looking at TRILL for increased scalability, but for spanning=20
>tree replacement to get high bisectional bandwidth.
>
>-- Silvano
>
> =20
>
>>-----Original Message-----
>>From: Gray, Eric [mailto:[email-masked]]
>>Sent: Monday, November 06, 2006 10:38 AM
>>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
>>Subject: RE: [rbridge] Should we optimize the common case?
>>
>>Silvano,
>>
>>	The assertion that only fortune 500 companies are interested in
TRILL=20
>>is baseless and untrue.  One reason why you may believe this is the=20
>>case, is that you are making certain assumptions about complexity and=20
>>scale of the desired solution that are equally unfounded or false.
>>
>>	There is nothing that particularly prohibits definition of some
form=20
>>of RBridge functionality that might be simple enough to deploy in=20
>>relatively small networks - where higher speed link are becoming more=20
>>common and wasting high speed links is also a problem.
>>
>>	The types of networks you're talking about cannot realistically=20
>>operate with plug & play devices, and greater scalability is
>>   =20
>>
>paramount.
> =20
>
>>The work we're doing in this WG is aimed at simplistic, plug & play=20
>>deployment where increased scalability is a secondary consideration.
>>
>>--
>>Eric
>>
>>--> -----Original Message-----
>>--> From: [email-masked]
>>--> [mailto:[email-masked]] On Behalf Of Silvano Gai
>>--> Sent: Monday, November 06, 2006 1:51 AM
>>--> To: Eastlake III Donald-LDE008; [email-masked]
>>--> Subject: Re: [rbridge] Should we optimize the common case?
>>-->
>>-->
>>--> Donald,
>>-->
>>--> The high end and the low end are extremely different.
>>-->
>>--> The customers interested in TRILL are the Fortune 500 companies.=20
>>--> Large Enterprise networks and large data centers used to run=20
>>--> Financial, Insurance, Health, Chemical, Oil, Information and=20
>>--> manufacturing companies.
>>-->
>>--> They have huge demand for high bandwidth and low latency.
>>-->
>>--> Each of these companies spends millions each year in network=20
>>--> operation
>>--> (OPEX) and millions in new equipment (CAPEX). In all of them OPEX
>>   =20
>>
>is
> =20
>
>>--> much larger than CAPEX. They only buy major vendor equipments and=20
>>--> they install them according to the recommended vendor design=20
>>--> guideline.
>>--> Typically they have an internal certification lab in which they=20
>>--> test the network configuration and the software releases before=20
>>--> putting them in production networks.
>>-->
>>--> They have a very well defined concept of backbone ports and access

>>--> ports. All the backbone ports are in fiber at the highest possible

>>--> speed (today 10 GE). For the access port they use a mix of fiber=20
>>--> and copper.
>>--> The backbone has a regular structure that matches the vendor
>>   =20
>>
>design
> =20
>
>>--> guideline and the result of the certification experiment
>>--> they have done
>>--> independently.
>>-->
>>--> A network outage can cost millions/hour.
>>-->
>>--> There is no way you will see in one of these backbones a hub or
>>   =20
>>
>any
> =20
>
>>--> other uncontrolled device. NEVER.
>>-->
>>--> That is the reason why I think this is the most important case for
>>--> TRILL.
>>-->
>>--> More inline.
>>-->
>>--> > -----Original Message-----
>>--> > From: [email-masked]
>>--> [mailto:[email-masked]]
>>--> On
>>--> > Behalf Of Eastlake III Donald-LDE008
>>--> > Sent: Sunday, November 05, 2006 10:20 PM
>>--> > To: [email-masked]
>>--> > Subject: Re: [rbridge] Should we optimize the common case?
>>--> >
>>--> > Silvano,
>>--> >
>>--> > Why do you think that 90% of Rbridge deployment will be for this
>>--> unusual
>>--> > case? I mean, I have no problem with the belief that
>>--> Rbridges would be
>>--> > better than bridges in this case but why shouldn't that be true
>>   =20
>>
>of
> =20
>
>>--> less
>>--> > high end uses?
>>--> >
>>--> > A while ago on this list I posted a rhetorical question as to
>>   =20
>>
>why
> =20
>
>>--> > Rbriges shouldn't eventually replace all bridges. No one posted
>>   =20
>>
>an
> =20
>
>>--> > answer.
>>-->
>>--> This technology will start in the high end and move down to
>>--> the lower
>>--> end. How low will it goes is a good question.
>>-->
>>--> The low end is extremely cost sensitive. When we buys a switch or
>>   =20
>>
>a
> =20
>
>>--> router on the Internet for 50-100$, the COGS cannot be more
>>--> that 15-30$,
>>--> even with low margins. This implies that few dollar more to
>>--> increase the
>>--> memory size or the processor speed are a big deal. Add software
>>--> development cost. Couple this with the fact that today we
>>--> have low cost
>>--> 1GE switches used by low-end users that have problems
>>--> pushing or pulling
>>--> more than few Mb/s. There is no bandwidth demand in the low end.
>>--> Spanning tree is just fine. Cost is the big issue. Moreover
>>--> there is the
>>--> huge issue of training home/small office installers in this new
>>--> technology.
>>-->
>>--> My 0.2 cents
>>-->
>>--> -- Silvano
>>-->
>>--> >
>>--> > Why not specify Rbridges more or less as we have been for
>>--> the common
>>--> > bridge case and, in the backbone case you are talking
>>--> about, just drop
>>--> > the MAC addresses on the point-to-point links within the
>>   =20
>>
>backbone?
> =20
>
>>--> > Doesn't that produce less overhead than your proposal
>>--> below in both
>>--> the
>>--> > point-to-point and shared media cases?
>>--> >
>>--> > Donald
>>--> >
>>--> > -----Original Message-----
>>--> > From: [email-masked]
>>--> [mailto:[email-masked]]
>>--> On
>>--> > Behalf Of Silvano Gai
>>--> > Sent: Wednesday, November 01, 2006 9:07 PM
>>--> > To: [email-masked]
>>--> > Subject: [rbridge] Should we optimize the common case?
>>--> >
>>--> >
>>--> > With 16 bit addresses the current TRILL overhead over
>>--> Ethernet is 20
>>--> > bytes. If we want to expand the RBridge addresses, it we
>>--> will go to
>>--> > 22-24 bytes.
>>--> >
>>--> > What customers are telling us is that they will deploy RBridges
>>   =20
>>
>by
> =20
>
>>--> > creating an RBridge backbone in which all the links will be
>>   =20
>>
>10GE.
> =20
>
>>--> >
>>--> > They will connect regular bridges and host to the
>>--> periphery of this
>>--> > backbone.
>>--> >
>>--> > They will not mix backbone ports with access ports, because this
>>--> screws
>>--> > up management, traffic engineering, debugging, and
>>--> troubleshooting.
>>--> > Regular network design, easy to understand, is very
>>--> important. Ports
>>--> are
>>--> > cheap, labor is expensive.
>>--> >
>>--> > I am totally convinced that this will account for 90+ % of TRILL
>>--> > deployment.
>>--> >
>>--> > I am wondering if it makes sense to have a solution
>>--> highly optimized
>>--> for
>>--> > such an environment.
>>--> >
>>--> > For example we can put the egress/ingress RBridge addresses in
>>   =20
>>
>the
> =20
>
>>--> outer
>>--> > MAC addresses and define a TRILL shim header that
>>--> contains 1 byte of
>>--> hop
>>--> > limit and 1 byte reserved. For this common case we will get:
>>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
>>--> > 2) nickname =3D MAC address, i.e no hash collision
>>--> > 3) zero-conf achieved
>>--> >
>>--> > In the case we need to go over a shared media we will need to
>>   =20
>>
>add
> =20
>
>>--> > another Ethernet encapsulation to carry the next hop
>>--> address, i.e. 14
>>--> > bytes
>>--> > - total overhead will be 30 bytes
>>--> >
>>--> > Summarizing:
>>--> > - current proposal 20-24 bytes overhead
>>--> > - new proposal on point to point: 16 bytes
>>--> > - new proposal on shared media: 30 bytes
>>--> >
>>--> > Comments?
>>--> >
>>--> > -- Silvano
>>--> >
>>--> >
>>--> > _______________________________________________
>>--> > rbridge mailing list
>>--> > [email-masked]
>>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>>--> >
>>--> > _______________________________________________
>>--> > rbridge mailing list
>>--> > [email-masked]
>>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>>-->
>>--> _______________________________________________
>>--> rbridge mailing list
>>--> [email-masked]
>>--> http://mailman.postel.org/mailman/listinfo/rbridge
>>-->
>>   =20
>>
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
> =20
>

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

------_=_NextPart_001_01C702AA.BC29B977
Content-Type: image/jpeg;
	name="trill.jpg"
Content-Transfer-Encoding: base64
Content-Description: trill.jpg
Content-Disposition: attachment;
	filename="trill.jpg"

------_=_NextPart_001_01C702AA.BC29B977--

Content-class: urn:content-classes:message
Date: Tue, 7 Nov 2006 12:18:31 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 11669

Radia,

In today's presentation, the last suggested format was the following

48 bits - egress rbridge id
48 bits - ingress rbridge id
16 bits - pt = TRILL
16 bits - reserved + flag + TTL - the link local nicknames (who's
supposed to be the next-hop is in here) 
....

when this goes over a shared media, there were learning issues as
pointed out during the meeting. Pls refer to this diagram to understand
the problem

1. if packets from r1 to r5 are sent once via r2, and other times, via
r3, the classical bridge b will learn r1 as behind link 1 or 2. So, this
is the learning problem. 
2. thus, for return traffic frm r5 to r1, even though r4 wants r2 to be
the next-hop for this packet, if we keep the destination rbridge id as
r1, the classical bridge would forward the packet to link 1, thereby
blackholing this traffic. 

So, there are multiple issues - learning issues and blakholing. 

Potential solution:

r2, r3 and r4 exchange the link-local nicknames, say link local nickname
for r2 = 1, r3 = 2, r4 = 3.

Now, instead of using the complete 48 bit rbridge ID as the rbridge MAC
address, we can fill the 48 bits as follows:

16 bit - rbridge nickname
4 bits - link local nickname

2 bits - I/G and U/L
26 bits - reserved. 

Thus, on this classical ethernet/bridging cloud, rbridge emits the
packet with the appropriate link-local nicknames.

For e.g. 
- packets from r1 to r5, sent via r2, are sent with
SA = r1.<link source's link-local-nickname> = r1.1, , notice
link-local-nickname of r2 is chosen. 
If r2 intends r4 to be the next-hop, he'll put 
DA = r5.<link destination's link-local-nickname> = r5.3, notice
link-local-nickname of r4 is chosen. 
Thus, classical bridge will learn r1.1 on the link 1. 

- packets from r1 to r5, sent via r3, are sent with
SA = r1.<link source's link-local-nickname> = r1.2, , notice
link-local-nickname of r3 is chosen. 
If r3 intends r4 to be the next-hop, he'll put 
DA = r5.<link destination's link-local-nickname> = r5.3, notice
link-local-nickname of r4 is chosen. 
Thus, classical bridge will learn r1.2 on the link 1. 

-- thus no learning issues. 

- return traffic from r5 to r1, sent via r4. If r4 intends r2 to be the
next hop, it'll put

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Tuesday, November 07, 2006 10:23 AM
To: Silvano Gai
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?

Looking at Silvano's proposed shim header---the only reason we need the
outer header is to distinguish between RBridge neighbors, in the case of
unicast, specifying next hop, and in the case of multicast, specifying
transmitter.

His format has two bytes after the Ethernet header portion of the shim
for TTL, and a bunch of reserved bits.

That leaves 10 bits. We can dynamically (through the IS-IS Hello) give
out, say, 4 bit link-local nicknames, and stick them there.

Then the only time we'd need an outer header is if there are more than,
say, 16 RBridges on the same link.

Radia

Silvano Gai wrote:

>I am not looking at TRILL for increased scalability, but for spanning 
>tree replacement to get high bisectional bandwidth.
>
>-- Silvano
>
>  
>
>>-----Original Message-----
>>From: Gray, Eric [mailto:[email-masked]]
>>Sent: Monday, November 06, 2006 10:38 AM
>>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
>>Subject: RE: [rbridge] Should we optimize the common case?
>>
>>Silvano,
>>
>>	The assertion that only fortune 500 companies are interested in
TRILL 
>>is baseless and untrue.  One reason why you may believe this is the 
>>case, is that you are making certain assumptions about complexity and 
>>scale of the desired solution that are equally unfounded or false.
>>
>>	There is nothing that particularly prohibits definition of some
form 
>>of RBridge functionality that might be simple enough to deploy in 
>>relatively small networks - where higher speed link are becoming more 
>>common and wasting high speed links is also a problem.
>>
>>	The types of networks you're talking about cannot realistically 
>>operate with plug & play devices, and greater scalability is
>>    
>>
>paramount.
>  
>
>>The work we're doing in this WG is aimed at simplistic, plug & play 
>>deployment where increased scalability is a secondary consideration.
>>
>>--
>>Eric
>>
>>--> -----Original Message-----
>>--> From: [email-masked]
>>--> [mailto:[email-masked]] On Behalf Of Silvano Gai
>>--> Sent: Monday, November 06, 2006 1:51 AM
>>--> To: Eastlake III Donald-LDE008; [email-masked]
>>--> Subject: Re: [rbridge] Should we optimize the common case?
>>-->
>>-->
>>--> Donald,
>>-->
>>--> The high end and the low end are extremely different.
>>-->
>>--> The customers interested in TRILL are the Fortune 500 companies. 
>>--> Large Enterprise networks and large data centers used to run 
>>--> Financial, Insurance, Health, Chemical, Oil, Information and 
>>--> manufacturing companies.
>>-->
>>--> They have huge demand for high bandwidth and low latency.
>>-->
>>--> Each of these companies spends millions each year in network 
>>--> operation
>>--> (OPEX) and millions in new equipment (CAPEX). In all of them OPEX
>>    
>>
>is
>  
>
>>--> much larger than CAPEX. They only buy major vendor equipments and 
>>--> they install them according to the recommended vendor design 
>>--> guideline.
>>--> Typically they have an internal certification lab in which they 
>>--> test the network configuration and the software releases before 
>>--> putting them in production networks.
>>-->
>>--> They have a very well defined concept of backbone ports and access

>>--> ports. All the backbone ports are in fiber at the highest possible

>>--> speed (today 10 GE). For the access port they use a mix of fiber 
>>--> and copper.
>>--> The backbone has a regular structure that matches the vendor
>>    
>>
>design
>  
>
>>--> guideline and the result of the certification experiment
>>--> they have done
>>--> independently.
>>-->
>>--> A network outage can cost millions/hour.
>>-->
>>--> There is no way you will see in one of these backbones a hub or
>>    
>>
>any
>  
>
>>--> other uncontrolled device. NEVER.
>>-->
>>--> That is the reason why I think this is the most important case for
>>--> TRILL.
>>-->
>>--> More inline.
>>-->
>>--> > -----Original Message-----
>>--> > From: [email-masked]
>>--> [mailto:[email-masked]]
>>--> On
>>--> > Behalf Of Eastlake III Donald-LDE008
>>--> > Sent: Sunday, November 05, 2006 10:20 PM
>>--> > To: [email-masked]
>>--> > Subject: Re: [rbridge] Should we optimize the common case?
>>--> >
>>--> > Silvano,
>>--> >
>>--> > Why do you think that 90% of Rbridge deployment will be for this
>>--> unusual
>>--> > case? I mean, I have no problem with the belief that
>>--> Rbridges would be
>>--> > better than bridges in this case but why shouldn't that be true
>>    
>>
>of
>  
>
>>--> less
>>--> > high end uses?
>>--> >
>>--> > A while ago on this list I posted a rhetorical question as to
>>    
>>
>why
>  
>
>>--> > Rbriges shouldn't eventually replace all bridges. No one posted
>>    
>>
>an
>  
>
>>--> > answer.
>>-->
>>--> This technology will start in the high end and move down to
>>--> the lower
>>--> end. How low will it goes is a good question.
>>-->
>>--> The low end is extremely cost sensitive. When we buys a switch or
>>    
>>
>a
>  
>
>>--> router on the Internet for 50-100$, the COGS cannot be more
>>--> that 15-30$,
>>--> even with low margins. This implies that few dollar more to
>>--> increase the
>>--> memory size or the processor speed are a big deal. Add software
>>--> development cost. Couple this with the fact that today we
>>--> have low cost
>>--> 1GE switches used by low-end users that have problems
>>--> pushing or pulling
>>--> more than few Mb/s. There is no bandwidth demand in the low end.
>>--> Spanning tree is just fine. Cost is the big issue. Moreover
>>--> there is the
>>--> huge issue of training home/small office installers in this new
>>--> technology.
>>-->
>>--> My 0.2 cents
>>-->
>>--> -- Silvano
>>-->
>>--> >
>>--> > Why not specify Rbridges more or less as we have been for
>>--> the common
>>--> > bridge case and, in the backbone case you are talking
>>--> about, just drop
>>--> > the MAC addresses on the point-to-point links within the
>>    
>>
>backbone?
>  
>
>>--> > Doesn't that produce less overhead than your proposal
>>--> below in both
>>--> the
>>--> > point-to-point and shared media cases?
>>--> >
>>--> > Donald
>>--> >
>>--> > -----Original Message-----
>>--> > From: [email-masked]
>>--> [mailto:[email-masked]]
>>--> On
>>--> > Behalf Of Silvano Gai
>>--> > Sent: Wednesday, November 01, 2006 9:07 PM
>>--> > To: [email-masked]
>>--> > Subject: [rbridge] Should we optimize the common case?
>>--> >
>>--> >
>>--> > With 16 bit addresses the current TRILL overhead over
>>--> Ethernet is 20
>>--> > bytes. If we want to expand the RBridge addresses, it we
>>--> will go to
>>--> > 22-24 bytes.
>>--> >
>>--> > What customers are telling us is that they will deploy RBridges
>>    
>>
>by
>  
>
>>--> > creating an RBridge backbone in which all the links will be
>>    
>>
>10GE.
>  
>
>>--> >
>>--> > They will connect regular bridges and host to the
>>--> periphery of this
>>--> > backbone.
>>--> >
>>--> > They will not mix backbone ports with access ports, because this
>>--> screws
>>--> > up management, traffic engineering, debugging, and
>>--> troubleshooting.
>>--> > Regular network design, easy to understand, is very
>>--> important. Ports
>>--> are
>>--> > cheap, labor is expensive.
>>--> >
>>--> > I am totally convinced that this will account for 90+ % of TRILL
>>--> > deployment.
>>--> >
>>--> > I am wondering if it makes sense to have a solution
>>--> highly optimized
>>--> for
>>--> > such an environment.
>>--> >
>>--> > For example we can put the egress/ingress RBridge addresses in
>>    
>>
>the
>  
>
>>--> outer
>>--> > MAC addresses and define a TRILL shim header that
>>--> contains 1 byte of
>>--> hop
>>--> > limit and 1 byte reserved. For this common case we will get:
>>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
>>--> > 2) nickname = MAC address, i.e no hash collision
>>--> > 3) zero-conf achieved
>>--> >
>>--> > In the case we need to go over a shared media we will need to
>>    
>>
>add
>  
>
>>--> > another Ethernet encapsulation to carry the next hop
>>--> address, i.e. 14
>>--> > bytes
>>--> > - total overhead will be 30 bytes
>>--> >
>>--> > Summarizing:
>>--> > - current proposal 20-24 bytes overhead
>>--> > - new proposal on point to point: 16 bytes
>>--> > - new proposal on shared media: 30 bytes
>>--> >
>>--> > Comments?
>>--> >
>>--> > -- Silvano
>>--> >
>>--> >
>>--> > _______________________________________________
>>--> > rbridge mailing list
>>--> > [email-masked]
>>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>>--> >
>>--> > _______________________________________________
>>--> > rbridge mailing list
>>--> > [email-masked]
>>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>>-->
>>--> _______________________________________________
>>--> rbridge mailing list
>>--> [email-masked]
>>--> http://mailman.postel.org/mailman/listinfo/rbridge
>>-->
>>    
>>
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Tue, 07 Nov 2006 10:22:54 -0800
From: Radia Perlman <[email-masked]>
To: Silvano Gai <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 9064

Looking at Silvano's proposed shim header---the only reason
we need the outer header is to distinguish between RBridge neighbors,
in the case of unicast, specifying next hop, and in the case of
multicast, specifying transmitter.

His format has two bytes after the Ethernet header portion of the shim
for TTL, and a bunch of reserved bits.

That leaves 10 bits. We can dynamically (through the IS-IS Hello)
give out, say, 4 bit link-local nicknames, and stick them there.

Then the only time we'd need an outer header is if there are more than,
say, 16 RBridges on the same link.

Radia

Silvano Gai wrote:

>I am not looking at TRILL for increased scalability, but for spanning
>tree replacement to get high bisectional bandwidth.
>
>-- Silvano
>
>  
>
>>-----Original Message-----
>>From: Gray, Eric [mailto:[email-masked]]
>>Sent: Monday, November 06, 2006 10:38 AM
>>To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
>>Subject: RE: [rbridge] Should we optimize the common case?
>>
>>Silvano,
>>
>>	The assertion that only fortune 500 companies are interested in
>>TRILL is baseless and untrue.  One reason why you may believe this is
>>the case, is that you are making certain assumptions about complexity
>>and scale of the desired solution that are equally unfounded or false.
>>
>>	There is nothing that particularly prohibits definition of some
>>form of RBridge functionality that might be simple enough to deploy in
>>relatively small networks - where higher speed link are becoming more
>>common and wasting high speed links is also a problem.
>>
>>	The types of networks you're talking about cannot realistically
>>operate with plug & play devices, and greater scalability is
>>    
>>
>paramount.
>  
>
>>The work we're doing in this WG is aimed at simplistic, plug & play
>>deployment where increased scalability is a secondary consideration.
>>
>>--
>>Eric
>>
>>--> -----Original Message-----
>>--> From: [email-masked]
>>--> [mailto:[email-masked]] On Behalf Of Silvano Gai
>>--> Sent: Monday, November 06, 2006 1:51 AM
>>--> To: Eastlake III Donald-LDE008; [email-masked]
>>--> Subject: Re: [rbridge] Should we optimize the common case?
>>-->
>>-->
>>--> Donald,
>>-->
>>--> The high end and the low end are extremely different.
>>-->
>>--> The customers interested in TRILL are the Fortune 500
>>--> companies. Large
>>--> Enterprise networks and large data centers used to run Financial,
>>--> Insurance, Health, Chemical, Oil, Information and manufacturing
>>--> companies.
>>-->
>>--> They have huge demand for high bandwidth and low latency.
>>-->
>>--> Each of these companies spends millions each year in
>>--> network operation
>>--> (OPEX) and millions in new equipment (CAPEX). In all of them OPEX
>>    
>>
>is
>  
>
>>--> much larger than CAPEX. They only buy major vendor
>>--> equipments and they
>>--> install them according to the recommended vendor design guideline.
>>--> Typically they have an internal certification lab in which
>>--> they test the
>>--> network configuration and the software releases before
>>--> putting them in
>>--> production networks.
>>-->
>>--> They have a very well defined concept of backbone ports and access
>>--> ports. All the backbone ports are in fiber at the highest
>>--> possible speed
>>--> (today 10 GE). For the access port they use a mix of fiber
>>--> and copper.
>>--> The backbone has a regular structure that matches the vendor
>>    
>>
>design
>  
>
>>--> guideline and the result of the certification experiment
>>--> they have done
>>--> independently.
>>-->
>>--> A network outage can cost millions/hour.
>>-->
>>--> There is no way you will see in one of these backbones a hub or
>>    
>>
>any
>  
>
>>--> other uncontrolled device. NEVER.
>>-->
>>--> That is the reason why I think this is the most important case for
>>--> TRILL.
>>-->
>>--> More inline.
>>-->
>>--> > -----Original Message-----
>>--> > From: [email-masked]
>>--> [mailto:[email-masked]]
>>--> On
>>--> > Behalf Of Eastlake III Donald-LDE008
>>--> > Sent: Sunday, November 05, 2006 10:20 PM
>>--> > To: [email-masked]
>>--> > Subject: Re: [rbridge] Should we optimize the common case?
>>--> >
>>--> > Silvano,
>>--> >
>>--> > Why do you think that 90% of Rbridge deployment will be for this
>>--> unusual
>>--> > case? I mean, I have no problem with the belief that
>>--> Rbridges would be
>>--> > better than bridges in this case but why shouldn't that be true
>>    
>>
>of
>  
>
>>--> less
>>--> > high end uses?
>>--> >
>>--> > A while ago on this list I posted a rhetorical question as to
>>    
>>
>why
>  
>
>>--> > Rbriges shouldn't eventually replace all bridges. No one posted
>>    
>>
>an
>  
>
>>--> > answer.
>>-->
>>--> This technology will start in the high end and move down to
>>--> the lower
>>--> end. How low will it goes is a good question.
>>-->
>>--> The low end is extremely cost sensitive. When we buys a switch or
>>    
>>
>a
>  
>
>>--> router on the Internet for 50-100$, the COGS cannot be more
>>--> that 15-30$,
>>--> even with low margins. This implies that few dollar more to
>>--> increase the
>>--> memory size or the processor speed are a big deal. Add software
>>--> development cost. Couple this with the fact that today we
>>--> have low cost
>>--> 1GE switches used by low-end users that have problems
>>--> pushing or pulling
>>--> more than few Mb/s. There is no bandwidth demand in the low end.
>>--> Spanning tree is just fine. Cost is the big issue. Moreover
>>--> there is the
>>--> huge issue of training home/small office installers in this new
>>--> technology.
>>-->
>>--> My 0.2 cents
>>-->
>>--> -- Silvano
>>-->
>>--> >
>>--> > Why not specify Rbridges more or less as we have been for
>>--> the common
>>--> > bridge case and, in the backbone case you are talking
>>--> about, just drop
>>--> > the MAC addresses on the point-to-point links within the
>>    
>>
>backbone?
>  
>
>>--> > Doesn't that produce less overhead than your proposal
>>--> below in both
>>--> the
>>--> > point-to-point and shared media cases?
>>--> >
>>--> > Donald
>>--> >
>>--> > -----Original Message-----
>>--> > From: [email-masked]
>>--> [mailto:[email-masked]]
>>--> On
>>--> > Behalf Of Silvano Gai
>>--> > Sent: Wednesday, November 01, 2006 9:07 PM
>>--> > To: [email-masked]
>>--> > Subject: [rbridge] Should we optimize the common case?
>>--> >
>>--> >
>>--> > With 16 bit addresses the current TRILL overhead over
>>--> Ethernet is 20
>>--> > bytes. If we want to expand the RBridge addresses, it we
>>--> will go to
>>--> > 22-24 bytes.
>>--> >
>>--> > What customers are telling us is that they will deploy RBridges
>>    
>>
>by
>  
>
>>--> > creating an RBridge backbone in which all the links will be
>>    
>>
>10GE.
>  
>
>>--> >
>>--> > They will connect regular bridges and host to the
>>--> periphery of this
>>--> > backbone.
>>--> >
>>--> > They will not mix backbone ports with access ports, because this
>>--> screws
>>--> > up management, traffic engineering, debugging, and
>>--> troubleshooting.
>>--> > Regular network design, easy to understand, is very
>>--> important. Ports
>>--> are
>>--> > cheap, labor is expensive.
>>--> >
>>--> > I am totally convinced that this will account for 90+ % of TRILL
>>--> > deployment.
>>--> >
>>--> > I am wondering if it makes sense to have a solution
>>--> highly optimized
>>--> for
>>--> > such an environment.
>>--> >
>>--> > For example we can put the egress/ingress RBridge addresses in
>>    
>>
>the
>  
>
>>--> outer
>>--> > MAC addresses and define a TRILL shim header that
>>--> contains 1 byte of
>>--> hop
>>--> > limit and 1 byte reserved. For this common case we will get:
>>--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
>>--> > 2) nickname = MAC address, i.e no hash collision
>>--> > 3) zero-conf achieved
>>--> >
>>--> > In the case we need to go over a shared media we will need to
>>    
>>
>add
>  
>
>>--> > another Ethernet encapsulation to carry the next hop
>>--> address, i.e. 14
>>--> > bytes
>>--> > - total overhead will be 30 bytes
>>--> >
>>--> > Summarizing:
>>--> > - current proposal 20-24 bytes overhead
>>--> > - new proposal on point to point: 16 bytes
>>--> > - new proposal on shared media: 30 bytes
>>--> >
>>--> > Comments?
>>--> >
>>--> > -- Silvano
>>--> >
>>--> >
>>--> > _______________________________________________
>>--> > rbridge mailing list
>>--> > [email-masked]
>>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>>--> >
>>--> > _______________________________________________
>>--> > rbridge mailing list
>>--> > [email-masked]
>>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>>-->
>>--> _______________________________________________
>>--> rbridge mailing list
>>--> [email-masked]
>>--> http://mailman.postel.org/mailman/listinfo/rbridge
>>-->
>>    
>>
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Date: Tue, 07 Nov 2006 09:33:19 -0800
From: Radia Perlman <[email-masked]>
To: Radia Perlman <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 5328

Actually---not sure what I said is correct. If there was actually 
connectivity (not through bridges)
it would act like I said (where the other ports would turn off).

However, beyond one hop, each port would still be reporting "R" as the 
root, so this would
actually partition the bridged cloud. Which is I think what we'd want. 
And what Sanjay said
would happen.

And this might also be the thing that does the right thing in the 
"wiring closet" case.

Radia

Radia Perlman wrote:

>Interesting question.
>
>If the RBridge is on the cut set of the link, then, indeed, the cloud 
>would get
>partitioned into multiple spanning tree domains all connected via the 
>RBridge. But
>that's a good thing.
>
>If there *is* connectivity between two of the RBridge's ports through
>the link, the RBridge will recognize this because the Root isn't simply 
>"R", but "R" concatenated with
>a port number. So RBridge R will state it is root "R.1" on one port and 
>"R.2" on the other.
>So R.1 will be the Root. So R's other port will decide "Oh...I'm not the 
>Root, so I'm not Designated
>RBridge on this link and therefore I won't forward traffic to/from this 
>link.
>
>
>Radia
>
>
>
>Sanjay Sane (sanjays) wrote:
>
>  
>
>>Radia,
>>
>>as per this proposal, 
>>if a rbridge is connected to the same bridging cloud by n ports, 
>>AND if the rbridge treats each of the ports as separate STP instances,
>>THEN it would break that single bridging cloud into n disjoint trees. 
>>Is that accurate? 
>>
>>btw, it could be that multiple ports of the same rbridge may, in fact, connect distinct bridging clouds. In such a scenario, it would not be a good idea for the rbrdige to merge the STP instances. 
>>
>>-Sanjay
>>
>>
>>-----Original Message-----
>>From: [email-masked] [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
>>Sent: Monday, November 06, 2006 2:52 PM
>>To: Radia Perlman
>>Cc: [email-masked]
>>Subject: Re: [rbridge] Traffic storms
>>
>>Radia,
>>      As you know, I support this approach. I have a doubt, however. 
>>The ID used is the RBridge ID or a different ID per port?
>>I assume it is by RBridge ID. Then, as far I understand, several ports of an RBridge could be connected to the same bridged link. In other words, an RBridge port may have to compete against other port of same RBridge for "root bridge" election. In this case, if the ID is the same (the RBridge ID), the link will split into two separate trees near the equal cost point if that is possible (at least a bridge exists between RBridge ports) to balance the cost of link connected to each of the root bridge ports, or by any of the standard tie breaking mechanisms like port ID if no there is no bridge interposed.
>>Regards
>>Guillermo
>>Radia Perlman escribi?:
>> 
>>
>>    
>>
>>>I hesitate to bring this up because I don't want to reintroduce 
>>>confusion about "participating" in bridge spanning tree algorithm. So, 
>>>please---what I'm about to propose does NOT merge links. Bridged links 
>>>still terminate at an RBridge.
>>>
>>>The issue is that it can be unpleasant for two RBridges to 
>>>simultaneously think they are both Designated on the same link, which 
>>>can happen if a bridge came up and connected two links. Or for that 
>>>matter, a repeater.
>>>
>>>One way of making sure that a situation like that resolves very 
>>>quickly, and absolutely, is to have RBridges act like bridges on each 
>>>of their ports, with numerically lowest (i.e., highest) priority for become Root.
>>>
>>>Now---I DO NOT MEAN that an RBridge merges the spanning trees on each 
>>>of its ports.
>>>The spanning tree is terminated at an RBridge. If an RBridge has 4 
>>>ports, it will participate in 4 independent bridge spanning tree 
>>>instances.
>>>
>>>The advantage of doing this is that we could make the Root bridge be 
>>>the Designated RBridge. Then if two RBridge links merged, the RBridges 
>>>would notice immediately.
>>>If you get usurped as bridge Root, you are also usurped as RBridge 
>>>Designated RBridge.
>>>
>>>Since the bridge spanning tree messages are never delayed by 
>>>pre-forwarding delays, this seems like it might be a nice thing to do.
>>>
>>>It would be nice if the same RBridge that would get elected Desiganted 
>>>RBridge in the IS-IS link election would be elected bridge Root on 
>>>that link. The easiest thing would be not to bother with IS-IS 
>>>priority, and have them all have the same priority, with election 
>>>being solely on ID. Then they can all use the lowest bridge root 
>>>priority, and the same RBridge would get elected bridge root on the 
>>>link as would get elected Designated RBridge on the link.
>>>
>>>Radia
>>>
>>>_______________________________________________
>>>rbridge mailing list
>>>[email-masked]
>>>http://mailman.postel.org/mailman/listinfo/rbridge
>>> 
>>>   
>>>
>>>      
>>>
>>_______________________________________________
>>rbridge mailing list
>>[email-masked]
>>http://mailman.postel.org/mailman/listinfo/rbridge
>>
>>_______________________________________________
>>rbridge mailing list
>>[email-masked]
>>http://mailman.postel.org/mailman/listinfo/rbridge
>> 
>>
>>    
>>
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Date: Mon, 06 Nov 2006 19:05:32 -0800
From: Radia Perlman <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 4546

Interesting question.

If the RBridge is on the cut set of the link, then, indeed, the cloud 
would get
partitioned into multiple spanning tree domains all connected via the 
RBridge. But
that's a good thing.

If there *is* connectivity between two of the RBridge's ports through
the link, the RBridge will recognize this because the Root isn't simply 
"R", but "R" concatenated with
a port number. So RBridge R will state it is root "R.1" on one port and 
"R.2" on the other.
So R.1 will be the Root. So R's other port will decide "Oh...I'm not the 
Root, so I'm not Designated
RBridge on this link and therefore I won't forward traffic to/from this 
link.

Radia

Sanjay Sane (sanjays) wrote:

>Radia,
>
>as per this proposal, 
>if a rbridge is connected to the same bridging cloud by n ports, 
>AND if the rbridge treats each of the ports as separate STP instances,
>THEN it would break that single bridging cloud into n disjoint trees. 
>Is that accurate? 
>
>btw, it could be that multiple ports of the same rbridge may, in fact, connect distinct bridging clouds. In such a scenario, it would not be a good idea for the rbrdige to merge the STP instances. 
>
>-Sanjay
> 
>
>-----Original Message-----
>From: [email-masked] [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
>Sent: Monday, November 06, 2006 2:52 PM
>To: Radia Perlman
>Cc: [email-masked]
>Subject: Re: [rbridge] Traffic storms
>
>Radia,
>       As you know, I support this approach. I have a doubt, however. 
>The ID used is the RBridge ID or a different ID per port?
> I assume it is by RBridge ID. Then, as far I understand, several ports of an RBridge could be connected to the same bridged link. In other words, an RBridge port may have to compete against other port of same RBridge for "root bridge" election. In this case, if the ID is the same (the RBridge ID), the link will split into two separate trees near the equal cost point if that is possible (at least a bridge exists between RBridge ports) to balance the cost of link connected to each of the root bridge ports, or by any of the standard tie breaking mechanisms like port ID if no there is no bridge interposed.
>Regards
>Guillermo
>Radia Perlman escribi?:
>  
>
>>I hesitate to bring this up because I don't want to reintroduce 
>>confusion about "participating" in bridge spanning tree algorithm. So, 
>>please---what I'm about to propose does NOT merge links. Bridged links 
>>still terminate at an RBridge.
>>
>>The issue is that it can be unpleasant for two RBridges to 
>>simultaneously think they are both Designated on the same link, which 
>>can happen if a bridge came up and connected two links. Or for that 
>>matter, a repeater.
>>
>>One way of making sure that a situation like that resolves very 
>>quickly, and absolutely, is to have RBridges act like bridges on each 
>>of their ports, with numerically lowest (i.e., highest) priority for become Root.
>>
>>Now---I DO NOT MEAN that an RBridge merges the spanning trees on each 
>>of its ports.
>>The spanning tree is terminated at an RBridge. If an RBridge has 4 
>>ports, it will participate in 4 independent bridge spanning tree 
>>instances.
>>
>>The advantage of doing this is that we could make the Root bridge be 
>>the Designated RBridge. Then if two RBridge links merged, the RBridges 
>>would notice immediately.
>>If you get usurped as bridge Root, you are also usurped as RBridge 
>>Designated RBridge.
>>
>>Since the bridge spanning tree messages are never delayed by 
>>pre-forwarding delays, this seems like it might be a nice thing to do.
>>
>>It would be nice if the same RBridge that would get elected Desiganted 
>>RBridge in the IS-IS link election would be elected bridge Root on 
>>that link. The easiest thing would be not to bother with IS-IS 
>>priority, and have them all have the same priority, with election 
>>being solely on ID. Then they can all use the lowest bridge root 
>>priority, and the same RBridge would get elected bridge root on the 
>>link as would get elected Designated RBridge on the link.
>>
>>Radia
>>
>>_______________________________________________
>>rbridge mailing list
>>[email-masked]
>>http://mailman.postel.org/mailman/listinfo/rbridge
>>  
>>    
>>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 21:29:16 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] WG last call commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-reqs-00.txt
Status: RO
Content-Length: 27161

Silvano,

I believe that the spec will say 1 or 2 depending on whether the working
group decides you need to look at BPDUs for loop avoidance or the like.

I believe that Rbridges will not generate BPDUs or run STP; however,
there are cases, like wanting an interface of a designated rbridge to be
the root of the spanning tree of a bridged network connected to that
interface, where people have talked about there being a "co-located"
bridge with the Rbridge. Of course, such a bridge would generate BPDUs
although it would be better to think of it as co-located just outside an
Rbridge interface, rather than co-located with the core rbridge. This
bridge is logically outboard to the rbridge, so it could be a separate
physical box:

      +--------+   +---------+
------+ Bridge +---+ Rbridge +---
      +--------+   +----+----+
                        |

Of course, someone could implement this by combining the bridge
implementation with their rbridge implementation in various clever ways.
But there is really no reason to clutter up the rbridge specification
talking about this a lot. An Rbridge implementer could implement such a
virtual bridge, assuming the bridge follows the bridging standards and
the rbridge follows the rbridge specification, even if the rbridge
specification never even hinted at this possibility.

Donald

-----Original Message-----
From: Silvano Gai [mailto:[email-masked]] 
Sent: Monday, November 06, 2006 8:41 PM
To: Gray, Eric; Eastlake III Donald-LDE008; [email-masked]
Subject: RE: [rbridge] WG last call
commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-
reqs-00.txt

Any wording that clarify which among these possible cases TRILL
implements:

1) drop BPDUs
2) receive BPDU, examine them to acquire information, but not pass them
to STP
3) in addition of 2) also generate some BPDU's behaving as STP
4) run STP

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Monday, November 06, 2006 10:49 AM
> To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
> Subject: RE: [rbridge] WG last call
>
commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-
> reqs-00.txt
> 
> Silvano,
> 
> 	Let's not be stubborn about wording.  You don't like the phrase
"drop 
> BPDUs."  I think it's fair to observe that "process BPDUs" is not 
> quite accurate either.
> 
> 	The intention is that implementations MAY examine BPDUs in an
effort 
> to maintain awareness of network conditions, but they are not to 
> "process" them in the usual sense of STP (or RSTP, or MSTP).
> 
> 	What wording would you like to see?
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> Sent: Monday, November 06, 2006 1:16 AM
> --> To: Eastlake III Donald-LDE008; [email-masked]
> --> Subject: Re: [rbridge] WG last call 
> --> commentsto:http://www.ietf.org/internet-drafts/draft-ietf-tr
> --> ill-routing-reqs-00.txt
> -->
> --> Donald,
> -->
> --> I think I agree with most of your comments, with one big
exception.
> -->
> --> I am not able to see the difference between "dropping a BPDU" or 
> --> "ignoring a BPDU".
> -->
> --> IMO there are two possibilities:
> --> 1) we drop BPDUs
> --> 2) we process BPDUs
> -->
> --> If we do 2), we can:
> --> 2.1) process BPDU using STP/RSTP
> --> 2.2) do other processing on the BPDU, not STP/RSTP related
> -->
> --> If we don't want to do 2.1), let's just say it.
> --> If we need to do 2.2), it is better we spell it out clearly, and
not
> --> hide it behind the word "ignore BPDUs".
> -->
> --> This is such a crucial point to achieve:
> --> a) Interoperability
> --> b) A robust implementation
> -->
> --> that we don't want to be vaguely defined.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Eastlake III Donald-LDE008
> --> > Sent: Sunday, November 05, 2006 3:22 PM
> --> > To: [email-masked]
> --> > Subject: Re: [rbridge] WG last call
> --> >
> --> commentsto:http://www.ietf.org/internet-drafts/draft-ietf-tr
> --> ill-routing-
> --> > reqs-00.txt
> --> >
> --> > Hi Silvano,
> --> >
> --> > I think I agree with most of your comments but see a few
> --> notes at @@@
> --> >
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Silvano Gai
> --> > Sent: Sunday, October 29, 2006 12:23 PM
> --> > To: [email-masked]
> --> > Subject: [rbridge] WG last call comments
> --> >
> --> to:http://www.ietf.org/internet-drafts/draft-ietf-trill-rout
> --> ing-reqs-00.
> --> > txt
> --> >
> --> > Comments inline marked "sgai n>"
> --> >
> --> > -- Silvano
> --> >
> --> > --------------------------------------------------------
> --> >
> --> > ... snip ...
> --> >
> --> > 1. Introduction
> --> >
> --> >    The current dominant approach to segregating network
> --> traffic relies
> --> >    on a hierarchical arrangement of bridges and routers.
> --> Hierarchy is
> --> >    further extended - both within routing protocols (such
> --> as IS-IS and
> --> >    OSPF) and between routing protocols (for example,
> --> between IGPs and
> --> >    BGP).  At least part of the current network structure
> --> is based on a
> --> >    determined trade-off between limitations of IP routing
> --> and similar
> --> >    disadvantages of 802 bridging.
> --> >
> --> >    Bridging Limitations
> --> >
> --> >    For example, bridged networks consist of single
> --> broadcast/flooding
> --> >    domains.  Ethernet/802 encapsulation (on which
> --> bridging is based)
> --> >    does not provide mechanisms for reducing the impact of
> --> looping data
> --> >    traffic that may result from a transient change in
> --> network topology
> --> >    and the existence of multiple paths.
> --> >
> --> >    The impact of looping traffic is far worse with flooded or
> --> broadcast
> --> >    traffic as this results in exponentially increasing
> --> traffic load.
> --> >    Consideration of the impacts of looping data lead to the use
of
> --> >    STP/RSTP to establish a connected - loop free - tree
> --> by disabling
> --> >    forwarding on a subset of links that might create a
> --> loop.  This has
> --> >    also the effect of eliminating redundant paths.
> --> >
> --> > @@@ Also generally lowers aggregate throughput and
> --> increases latency
> --> > through the net due to frames following suboptimal paths.
> --> >
> --> >    Because of the potential for severe impact from
> --> looping traffic,
> --> >    many (if not most) current bridge implementations stop
> --> forwarding
> --> of
> --> >    traffic frames following a topology change event and
> --> restart only
> --> >    after STP/RSTP is complete.
> --> >
> --> > Sgai 1> In STP there is no way of knowing when the convergence
has
> --> been
> --> > achieved; a bridge does not know or care about the timers of
other
> --> > bridges. The state machines on the ports are run
> --> independently. If you
> --> > refer to the Topology Change Notification Flag, its purpose is
to
> --> reduce
> --> > the filtering database ageing time, not to signal if STP/RSTP is

> --> > complete.
> --> >
> --> >    As a result, the process of eliminating potential
> --> loops in existing
> --> >    bridging deployments:
> --> >
> --> >      1) Results in inefficient use of inter-bridge connections
> --> >         and
> --> >      2) Causes delays in forwarding traffic as a result of
> --> >         changes in the network topology.
> --> >
> --> > Sgai 2> 2) is not true in the RSTP case; as a matter of
> --> fact RSTP is
> --> the
> --> > fastest converging protocol available today.
> --> >
> --> > @@@ I'm not sure why this and other documents put the
> --> emphasis they do
> --> > on STP/RSTP convergence. Of course it depends some on just how
> --> STP/RSTP
> --> > is implemented and how other algorithms are implemented.
> --> Perhaps it
> --> > stems from, as was pointed out early in the Rbridge
> --> effort, that the
> --> > replacement of bridges with Rbrides typically divides
> --> what would have
> --> > been one large spanning tree domain into a number of smaller
ones
> --> > interconnected by Rbridges. The STP/RSTP protocol within
> --> these small
> --> > spanning tree domains will typically converge for them
> --> all in parallel
> --> > more rapidly than the pre-existing larger single spanning tree
> --> STP/RSTP
> --> > convergence.
> --> >
> --> >    The combined effect of broadcast/flooding traffic, and
> --> the use of
> --> >    spanning trees for loop avoidance, sets practical
> --> limits on bridged
> --> >    network size in the network hierarchy and results in
> --> inefficient
> --> >    bandwidth use of inter-bridge connections. Inefficient
> --> inter-bridge
> --> >    connection usage similarly limits the usefulness of
> --> bridging with
> --> >    high-speed (and consequently high cost) interfaces.
> --> >
> --> >
> --> >
> --> >
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 3]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >    IP Routing Issues
> --> >
> --> >    For IP routed networks, any link (or subnet) must have
> --> at least one
> --> >    unique prefix. This means that a node that moves from
> --> one IP subnet
> --> >
> --> > sgai 3> in the case of IP instead of "node" is better to speak
of
> --> > "interface". It is the interface that has an address, not
> --> the node.
> --> >
> --> >    to another must change its IP address. Also, nodes
> --> with multiple IP
> --> >    subnet attachments must have multiple IP addresses.
> --> In IP routed
> --> >    networks, there are frequent trade-off considerations
> --> between using
> --> >    smaller subnets (longer prefix length) to minimize wasted IP
> --> address
> --> >    space (as a result of unused addresses in the fixed
> --> address range
> --> >    defined by the prefix and length) and using larger
> --> subnets (shorter
> --> >    prefix length) to minimize the need for (changes in)
> --> configuration.
> --> >
> --> >    In any case - with current IP routing technology -
> --> subnets must be
> --> >    configured for each routed interface.
> --> >
> --> >    Proposed Solution
> --> >
> --> >    Using a hybrid of routing and bridging - an RBridge -
> --> we hope to
> --> >    gain the benefits of both technologies, in particular,
> --> gaining the
> --> >    bandwidth advantages of shortest path routing while
> --> retaning the
> --> >    simplified configuration associated with bridging.
> --> >
> --> > 1.1. Terminology
> --> >
> --> >    The following terms are used in this document in the way that
> --> >    they are defined in "TRILL RBridge Architecture" [TARCH]:
> --> >
> --> >      ARP (Address Resolution Protocol)
> --> >      Bridge Learning
> --> >      Broadcast Domain
> --> >      Broadcast Traffic
> --> >      Cooperating RBridges
> --> >      Egress RBridge
> --> >      Ethernet
> --> >      Flooded Traffic
> --> >      Flooding
> --> >      Frame
> --> >      IGP (Interior Gateway Protocol)
> --> >      Ingress RBridge
> --> >      Ingress RBridge Tree
> --> >      IS-IS (Intermediate System to Intermediate System)
> --> >      ND (Neighbor Discovery)
> --> >      OSPF (Open Shortest Path First)
> --> >      Packet
> --> >
> --> > Sgai 4> in the case of layer 2 networks is more
> --> appropriate to use the
> --> > term frame, instead of packet.
> --> >
> --> > @@@ Frame appears earlier in this list and I believe that both
are
> --> > properly defined in the architecture document.
> --> >
> --> >      RBridge
> --> >      SPF (Shortest Path First)
> --> >      STP/RSTP (Spanning Tree Protocol/Rapid Spanning Tree
> --> Protocol)
> --> >      TRILL (TRansport Interconnect over Lots of Links)
> --> >      Unknown Destination
> --> >      VLAN (Virtual Local Area Network)
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 4]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> > 1.2. Specific TRILL Goals
> --> >
> --> >    (Near) Zero Configuration
> --> >
> --> >    It is a TRILL requirement that it must be possible to deploy
> --> RBridges
> --> >    in at least a nominal set of potential deployment
> --> scenarios without
> --> a
> --> >    need to perform any configuration at each RBridge.  It
> --> is possible
> --> to
> --> >    meet this goal for a sub-set of all possible
> --> deployment scenarios
> --> by
> --> >    making realistic restrictions on deployment - such as
> --> restricting
> --> the
> --> >    deployment scenarios to exclude those involving a "trust
model"
> --> that
> --> >    imposes a need for configuration of some form of
> --> "shared secret" or
> --> >    other configuration required to restrict access to "trusted"
> --> devices.
> --> >
> --> >    It is also conceivable that a minimal configuration
> --> may be required
> --> >    for deployment of an initial (set of) device(s) - with
> --> subsequently
> --> >    deployed devices deriving that configuration
> --> information during the
> --> >    process of - for example - peer discovery.  This would
> --> constitute a
> --> >    mechanism for "near zero configuration".
> --> >
> --> >    Efficient Unicast Bandwidth Usage
> --> >
> --> >    For unicast, non-flooded traffic, RBridges are
> --> intended to merge
> --> the
> --> >    efficient bandwidth use of IP routing with the simplicity of
> --> Ethernet
> --> >    (or 802.1) bridging for networks possibly larger - and
> --> with greater
> --> >    forwarding capacity - than is the case with these networks
> --> presently.
> --> >
> --> >    The approach that we will use in accomplishing this is
> --> based on the
> --> >    idea of extending (one or more) link state routing
> --> protocol(s) to
> --> >    include distribution of Ethernet/802 reachability information
> --> between
> --> >    RBridge instances.
> --> >
> --> > Sgai 5> "RBridge instances" is not defined.
> --> >
> --> > @@@ For a document at this level, perhaps it could just say
> --> "RBridges".
> --> >
> --> >    In addition, there may be specific requirements
> --> >    imposed on the interactions between these extensions and the
> --> Spanning
> --> >    Tree Protocol (STP) and between RBridge instances and
> --> (potentially
> --> >    co-located) IP routing instances.
> --> >
> --> >    Potentially More Efficient Multicast and Broadcast Usage
> --> >
> --> >    There are clear advantages to incorporating mechanisms
> --> for improved
> --> >    efficiency in forwarding (layer 2) multicast frames
> --> and - possibly
> --> >    in reducing the amount of broadcast traffic as well.
> --> To the extent
> --> >    that these efficiency improvements may be considered
> --> "optimizations"
> --> >    and may be defined orthogonally to the process of
> --> specifying basic
> --> >    RBridge functionality, the potential to include these
> --> optimizations
> --> >    is (highly) desirable, but not mandatory.
> --> >
> --> >    Examples of this type of optimization include use of
> --> any intrinsic
> --> >    multicast routing capabilities and optimizations of ARP/ND.
> --> >
> --> >
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 5]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> >    Backward Compatibility
> --> >
> --> >    RBridges must be fully compatible with current
> --> bridges, IPv4 and
> --> >    IPv6 routers and endnodes.  They should be invisible
> --> to current IP
> --> >    routers (just as bridges are), and like routers, they
> --> terminate a
> --> >    bridged spanning tree.
> --> >
> --> > Sgai 6> the concept of terminating a bridged spanning tree is to
> --> vague,
> --> > see also sgai 10.
> --> >
> --> > @@@ I think that concept is generally understood to mean
> --> that they do
> --> > not pass BPDUs. Perhaps "by not passing BPDUs" could be appended
> --> above.
> --> >
> --> >    Unlike Routers, RBridges do not terminate
> --> >    a broadcast domain.
> --> >
> --> >
> --> > 2. General Requirements Potentially Affecting Routing
> --> >
> --> >    Candidate IGP Routing protocols - IS-IS or OSPF - must
> --> be evaluated
> --> >    for compatibility with the above goals.
> --> >
> --> >    For example, since IS-IS requires a unique System ID
> --> for each IS-IS
> --> >    instance (at least within a "scoped" deployment), a
> --> requirement for
> --> >    "(near) zero configuration" implies a need for mechanisms
that
> --> allow
> --> >    auto-configuration and/or negotiation of these
> --> (scoped) unique IDs.
> --> >
> --> >    Similar requirement must apply for OSPF as well, if selected.
> --> >
> --> >    In addition, forwarding of protocol messages must be
compatible
> --> with
> --> >    (or reasonably adaptable to) use of forwarding at
> --> layer 2, or there
> --> >    must be a means for deriving suitable higher layer
> --> addresses for
> --> the
> --> >    purpose of protocol exchanges - without imposing the need to
> --> manually
> --> >    configure higher-layer addresses.
> --> >
> --> >
> --> > 3. Link State Protocol Specific Requirements
> --> >
> --> >    Assuming that link state routing protocols meet above
> --> requirements,
> --> >    running a link state protocol among RBridges is
> --> straightforward.
> --> It
> --> >    is the same as running a level 1 routing protocol in
> --> an area.  This
> --> >    would be theoretically true for either IS-IS or OSPF,
> --> assuming that
> --> >    both of these meet the general requiremenst above.
> --> >
> --> >    From the perspective of simply extending existing routing
> --> protocols,
> --> >    IS-IS is a more appropriate choice than OSPF because
> --> it is easy in
> --> >    IS-IS to define new TLVs for use in carrying a new
information
> --> type.
> --> >
> --> >    This document, however, does not mandate a specific
link-state,
> --> IGP,
> --> >    routing protocol.  Instead, it sets forth the requirements
that
> --> will
> --> >    apply to any link-state routing protocol that may be used.
> --> >
> --> >    For implementations providing co-located
> --> Router/RBridge function,
> --> >    it is necessary to have mechanisms for distinguishing
> --> any protocol
> --> >    interactions in Routing instances from protocol
> --> interactions in the
> --> >    co-located RBridge instance.  Specific mechanisms we
> --> will use are
> --> >    very likely to be determined by the Link State Routing
Protocol
> --> that
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 6]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> >    we select.  Potential distinguishing mechanisms
> --> include use of a
> --> new
> --> >    well-known Ethernet/802 multicast address,
> --> higher-layer protocol ID
> --> >    or other - routing protocol specific - approaches.
> --> >
> --> >    The mechanism chosen should be consistent with the TRILL
goals.
> --> If,
> --> >    for example, a routing protocol specific approach
> --> required use of a
> --> >    unique "area" identifier, the RBridge area identifier
> --> should be a
> --> >    constant, well-known, value for all RBridges, and
> --> would not be one
> --> >    that would ever appear as a real routing area
> --> identifer - in order
> --> >    to allow for a potential for configuration-free operation.
> --> >
> --> >    Information that RBridge link state information will carry
> --> includes:
> --> >
> --> >    o  layer 2 addresses of nodes within the domain which have
> --> >       transmitted frames but have not transmitted ARP or
> --> ND replies
> --> >
> --> >    o  layer 3, layer 2 addresses of IP nodes within the
> --> domain.  For
> --> >       data compression, perhaps only the portion of the address
> --> >       following the domain-wide prefix need be carried.
> --> This will be
> --> >       more of an issue for IPv6 than for IPv4.
> --> >
> --> >    o  VLANs directly connected to this RBridge
> --> >
> --> >
> --> > Sgai 7> The discussion about VLAN needs to be much more
> --> extensive. It
> --> is
> --> > clear from the mailing list discussion that VLANs can be
> --> used inside
> --> the
> --> > packet or in the Ethernet encapsulation of TRILL. These are two 
> --> > different kinds of VLANs and their requirement need to be stated

> --> > separately. Q in Q needs also to be discussed. I propose to
define
> --> inner
> --> > and outer VLANs (with reference to the position of the tag in
the
> --> frame.
> --> >
> --> > @@@ Based on the discussions that have been going on, I feel a
bit
> --> > clearer about VLANs than I used to. It seems hard to make
> --> a simple,
> --> > brief, definiteive statement about Rbridges and VLANs,
> --> except that all
> --> > the VLAN stuff needs to be configured, because there are so many

> --> > different scenarios. I agree that a fairly extensive discussion
of
> --> VLANs
> --> > should appear somewhere but I don't think this is the
> --> right document
> --> for
> --> > that. The requirement on the Rbridge routing expressed
> --> here is that it
> --> > needs, one way or the other, to be able to handle station
> --> identification
> --> > not just as a MAC address but as a VLAN tag and MAC address.
> --> >
> --> >    Endnode information need only be delivered to RBridges
> --> supporting
> --> >    the VLAN in which the endnode resides.
> --> >
> --> > Sgai 8> endnode -> station
> --> >
> --> >    So, for instance, if endnode
> --> >    E is discovered through a VLAN A frame, then E's
> --> location need only
> --> >    be delivered to other RBridges that are attached to
> --> VLAN A links.
> --> >
> --> >    Given that RBridges must support delivery only to
> --> links within a
> --> VLAN
> --> >
> --> >    (for multicast or unknown frames marked with the
> --> VLAN's tag), this
> --> >    mechanism can be used to advertise endnode information
> --> solely to
> --> the
> --> >    RBridges "within" a VLAN (i.e. - having connectivity or
> --> configuration
> --> >    that assoicates them with a VLAN).
> --> >
> --> >    Although a separate instance of
> --> >    the link state protocol could be run for this purpose,
> --> the topology
> --> >    is so restricted (just a single broadcast domain),
> --> that it may be
> --> >    preferable to define special case mechanisms whereby each DR
> --> >
> --> > sgai 9> DR? Designated RBridge???
> --> >
> --> > @@@ Yes, I think it should be spelled out.
> --> >
> --> >    advertises attached endnodes, and receives explicit
> --> acknolegments
> --> >    from other RBridges.
> --> >
> --> >
> --> > 4. Potential Issues
> --> >
> --> > 4.1. Interactions with Spanning Tree Forwarding and
> --> Bridge Learning
> --> >
> --> >    Spanning tree forwarding applies within parts of the RBridge
> --> domain,
> --> >    where two or more RBridges are connected by a link
> --> that includes
> --> >    multiple 802.1 bridges.
> --> >
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 7]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> >    In order to simplify the interactions between RBridges
> --> and bridges
> --> -
> --> >    in particular, relative to spanning tree forwarding -
> --> RBridges do
> --> not
> --> >    actively participate in spanning tree protocol with
> --> 802.1 bridges.
> --> >
> --> > Sgai 10> "do not participate actively" can mean two
> --> different things:
> --> > 1) they drop the BPDU
> --> > 2) they propagate the BPDUs as regular multicast frames
> --> >
> --> > can you clarify?
> --> >
> --> > @@@ They block BPDUs but might do something based on
> --> their receipt.
> --> > Another way to look at it is that an Rbridge with N
> --> interfaces, each
> --> > connected to bridged links, looks like N different leaf
> --> nodes to the
> --> > STP/RSTP running on those bridged links. (Could be N different
> --> spanning
> --> > trees or less than that if some of these links are connected or
> --> bridged
> --> > to each other.)
> --> >
> --> >    Hence, from the Link State Routing protocol perspective, the
> --> protocol
> --> >    will be able to treat spanning tree links as
> --> indistinguishable from
> --> >    any other Ethernet/802.1 link, in the same way that routing
> --> protocols
> --> >    do today.
> --> >
> --> >    However, support for multi-pathing is potentially
> --> problematic and
> --> is
> --> >    assumed - in this document - to be a non-goal.  Multi-path
> --> forwarding
> --> >    has the potential to confound the bridge learning process.
> --> >
> --> > Sgai 11> multi-pathing a non-goal? This seems to be in
> --> contradiction
> --> > with what said before. Is it because of the designated RBridge?
> --> >
> --> > Sgai 12> the requirement for a designated RBridge is not really 
> --> > discussed here. In particular there is no discussion of
> --> the property
> --> of
> --> > the election algorithm, which must avoid broadcast storms.
> --> >
> --> > @@@ Seems like the ideal thing would be to state the
> --> requirements that
> --> > having a Designated Rbridge meets rather then the
> --> mechanism of having
> --> a
> --> > Designated Rbridge.
> --> >
> --> > @@@ Some general statement about convergence and an acceptably
low
> --> level
> --> > of overhead traffic for all of the mechanisms associated with
the
> --> > routing protocol might be reasonable.
> --> >
> --> >
> --> > 4.2. Computing Routes
> --> >
> --> >    RBridges must calculate an L2 "route table" consisting
> --> of Next Hop
> --> >    information for each known L2 unicast destination
> --> address within a
> --> >    (possibly VLAN scoped) broadcast domain. This is
> --> computed using a
> --> >    routing protocol's SPF algorithm and based on
> --> destination layer 2
> --> >    address reachability advertisements.
> --> >
> --> > Sgai 13> from the previous sentence it seems that we are
> --> computing the
> --> > topology among all the MAC addresses. What we really do
> --> is compute the
> --> > topology among RBridges and then tag it with reachable
> --> MAC addresses.
> --> > >From the SPF perspective, it is a much easier problem.
> --> >
> --> > ... snip ...
> --> >
> --> >
> --> > @@@ Thanks,
> --> > @@@ Donald
> --> >
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> -->
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 18:13:36 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 3641

Radia,

as per this proposal, 
if a rbridge is connected to the same bridging cloud by n ports, 
AND if the rbridge treats each of the ports as separate STP instances,
THEN it would break that single bridging cloud into n disjoint trees. 
Is that accurate? 

btw, it could be that multiple ports of the same rbridge may, in fact, connect distinct bridging clouds. In such a scenario, it would not be a good idea for the rbrdige to merge the STP instances. 

-Sanjay

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
Sent: Monday, November 06, 2006 2:52 PM
To: Radia Perlman
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms

Radia,
       As you know, I support this approach. I have a doubt, however. 
The ID used is the RBridge ID or a different ID per port?
 I assume it is by RBridge ID. Then, as far I understand, several ports of an RBridge could be connected to the same bridged link. In other words, an RBridge port may have to compete against other port of same RBridge for "root bridge" election. In this case, if the ID is the same (the RBridge ID), the link will split into two separate trees near the equal cost point if that is possible (at least a bridge exists between RBridge ports) to balance the cost of link connected to each of the root bridge ports, or by any of the standard tie breaking mechanisms like port ID if no there is no bridge interposed.
Regards
Guillermo
Radia Perlman escribi?:
> I hesitate to bring this up because I don't want to reintroduce 
> confusion about "participating" in bridge spanning tree algorithm. So, 
> please---what I'm about to propose does NOT merge links. Bridged links 
> still terminate at an RBridge.
>
> The issue is that it can be unpleasant for two RBridges to 
> simultaneously think they are both Designated on the same link, which 
> can happen if a bridge came up and connected two links. Or for that 
> matter, a repeater.
>
> One way of making sure that a situation like that resolves very 
> quickly, and absolutely, is to have RBridges act like bridges on each 
> of their ports, with numerically lowest (i.e., highest) priority for become Root.
>
> Now---I DO NOT MEAN that an RBridge merges the spanning trees on each 
> of its ports.
> The spanning tree is terminated at an RBridge. If an RBridge has 4 
> ports, it will participate in 4 independent bridge spanning tree 
> instances.
>
> The advantage of doing this is that we could make the Root bridge be 
> the Designated RBridge. Then if two RBridge links merged, the RBridges 
> would notice immediately.
> If you get usurped as bridge Root, you are also usurped as RBridge 
> Designated RBridge.
>
> Since the bridge spanning tree messages are never delayed by 
> pre-forwarding delays, this seems like it might be a nice thing to do.
>
> It would be nice if the same RBridge that would get elected Desiganted 
> RBridge in the IS-IS link election would be elected bridge Root on 
> that link. The easiest thing would be not to bother with IS-IS 
> priority, and have them all have the same priority, with election 
> being solely on ID. Then they can all use the lowest bridge root 
> priority, and the same RBridge would get elected bridge root on the 
> link as would get elected Designated RBridge on the link.
>
> Radia
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 17:40:50 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Eastlake III Donald-LDE008" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] WG last call commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-reqs-00.txt
Status: RO
Content-Length: 25510

Any wording that clarify which among these possible cases TRILL
implements:

1) drop BPDUs
2) receive BPDU, examine them to acquire information, but not pass them
to STP
3) in addition of 2) also generate some BPDU's behaving as STP
4) run STP

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Monday, November 06, 2006 10:49 AM
> To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
> Subject: RE: [rbridge] WG last call
>
commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-
> reqs-00.txt
> 
> Silvano,
> 
> 	Let's not be stubborn about wording.  You don't like the phrase
> "drop BPDUs."  I think it's fair to observe that "process BPDUs" is
> not quite accurate either.
> 
> 	The intention is that implementations MAY examine BPDUs in an
> effort to maintain awareness of network conditions, but they are not
> to "process" them in the usual sense of STP (or RSTP, or MSTP).
> 
> 	What wording would you like to see?
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> Sent: Monday, November 06, 2006 1:16 AM
> --> To: Eastlake III Donald-LDE008; [email-masked]
> --> Subject: Re: [rbridge] WG last call
> --> commentsto:http://www.ietf.org/internet-drafts/draft-ietf-tr
> --> ill-routing-reqs-00.txt
> -->
> --> Donald,
> -->
> --> I think I agree with most of your comments, with one big
exception.
> -->
> --> I am not able to see the difference between "dropping a BPDU" or
> --> "ignoring a BPDU".
> -->
> --> IMO there are two possibilities:
> --> 1) we drop BPDUs
> --> 2) we process BPDUs
> -->
> --> If we do 2), we can:
> --> 2.1) process BPDU using STP/RSTP
> --> 2.2) do other processing on the BPDU, not STP/RSTP related
> -->
> --> If we don't want to do 2.1), let's just say it.
> --> If we need to do 2.2), it is better we spell it out clearly, and
not
> --> hide it behind the word "ignore BPDUs".
> -->
> --> This is such a crucial point to achieve:
> --> a) Interoperability
> --> b) A robust implementation
> -->
> --> that we don't want to be vaguely defined.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Eastlake III Donald-LDE008
> --> > Sent: Sunday, November 05, 2006 3:22 PM
> --> > To: [email-masked]
> --> > Subject: Re: [rbridge] WG last call
> --> >
> --> commentsto:http://www.ietf.org/internet-drafts/draft-ietf-tr
> --> ill-routing-
> --> > reqs-00.txt
> --> >
> --> > Hi Silvano,
> --> >
> --> > I think I agree with most of your comments but see a few
> --> notes at @@@
> --> >
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Silvano Gai
> --> > Sent: Sunday, October 29, 2006 12:23 PM
> --> > To: [email-masked]
> --> > Subject: [rbridge] WG last call comments
> --> >
> --> to:http://www.ietf.org/internet-drafts/draft-ietf-trill-rout
> --> ing-reqs-00.
> --> > txt
> --> >
> --> > Comments inline marked "sgai n>"
> --> >
> --> > -- Silvano
> --> >
> --> > --------------------------------------------------------
> --> >
> --> > ... snip ...
> --> >
> --> > 1. Introduction
> --> >
> --> >    The current dominant approach to segregating network
> --> traffic relies
> --> >    on a hierarchical arrangement of bridges and routers.
> --> Hierarchy is
> --> >    further extended - both within routing protocols (such
> --> as IS-IS and
> --> >    OSPF) and between routing protocols (for example,
> --> between IGPs and
> --> >    BGP).  At least part of the current network structure
> --> is based on a
> --> >    determined trade-off between limitations of IP routing
> --> and similar
> --> >    disadvantages of 802 bridging.
> --> >
> --> >    Bridging Limitations
> --> >
> --> >    For example, bridged networks consist of single
> --> broadcast/flooding
> --> >    domains.  Ethernet/802 encapsulation (on which
> --> bridging is based)
> --> >    does not provide mechanisms for reducing the impact of
> --> looping data
> --> >    traffic that may result from a transient change in
> --> network topology
> --> >    and the existence of multiple paths.
> --> >
> --> >    The impact of looping traffic is far worse with flooded or
> --> broadcast
> --> >    traffic as this results in exponentially increasing
> --> traffic load.
> --> >    Consideration of the impacts of looping data lead to the use
of
> --> >    STP/RSTP to establish a connected - loop free - tree
> --> by disabling
> --> >    forwarding on a subset of links that might create a
> --> loop.  This has
> --> >    also the effect of eliminating redundant paths.
> --> >
> --> > @@@ Also generally lowers aggregate throughput and
> --> increases latency
> --> > through the net due to frames following suboptimal paths.
> --> >
> --> >    Because of the potential for severe impact from
> --> looping traffic,
> --> >    many (if not most) current bridge implementations stop
> --> forwarding
> --> of
> --> >    traffic frames following a topology change event and
> --> restart only
> --> >    after STP/RSTP is complete.
> --> >
> --> > Sgai 1> In STP there is no way of knowing when the convergence
has
> --> been
> --> > achieved; a bridge does not know or care about the timers of
other
> --> > bridges. The state machines on the ports are run
> --> independently. If you
> --> > refer to the Topology Change Notification Flag, its purpose is
to
> --> reduce
> --> > the filtering database ageing time, not to signal if STP/RSTP is
> --> > complete.
> --> >
> --> >    As a result, the process of eliminating potential
> --> loops in existing
> --> >    bridging deployments:
> --> >
> --> >      1) Results in inefficient use of inter-bridge connections
> --> >         and
> --> >      2) Causes delays in forwarding traffic as a result of
> --> >         changes in the network topology.
> --> >
> --> > Sgai 2> 2) is not true in the RSTP case; as a matter of
> --> fact RSTP is
> --> the
> --> > fastest converging protocol available today.
> --> >
> --> > @@@ I'm not sure why this and other documents put the
> --> emphasis they do
> --> > on STP/RSTP convergence. Of course it depends some on just how
> --> STP/RSTP
> --> > is implemented and how other algorithms are implemented.
> --> Perhaps it
> --> > stems from, as was pointed out early in the Rbridge
> --> effort, that the
> --> > replacement of bridges with Rbrides typically divides
> --> what would have
> --> > been one large spanning tree domain into a number of smaller
ones
> --> > interconnected by Rbridges. The STP/RSTP protocol within
> --> these small
> --> > spanning tree domains will typically converge for them
> --> all in parallel
> --> > more rapidly than the pre-existing larger single spanning tree
> --> STP/RSTP
> --> > convergence.
> --> >
> --> >    The combined effect of broadcast/flooding traffic, and
> --> the use of
> --> >    spanning trees for loop avoidance, sets practical
> --> limits on bridged
> --> >    network size in the network hierarchy and results in
> --> inefficient
> --> >    bandwidth use of inter-bridge connections. Inefficient
> --> inter-bridge
> --> >    connection usage similarly limits the usefulness of
> --> bridging with
> --> >    high-speed (and consequently high cost) interfaces.
> --> >
> --> >
> --> >
> --> >
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 3]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >    IP Routing Issues
> --> >
> --> >    For IP routed networks, any link (or subnet) must have
> --> at least one
> --> >    unique prefix. This means that a node that moves from
> --> one IP subnet
> --> >
> --> > sgai 3> in the case of IP instead of "node" is better to speak
of
> --> > "interface". It is the interface that has an address, not
> --> the node.
> --> >
> --> >    to another must change its IP address. Also, nodes
> --> with multiple IP
> --> >    subnet attachments must have multiple IP addresses.
> --> In IP routed
> --> >    networks, there are frequent trade-off considerations
> --> between using
> --> >    smaller subnets (longer prefix length) to minimize wasted IP
> --> address
> --> >    space (as a result of unused addresses in the fixed
> --> address range
> --> >    defined by the prefix and length) and using larger
> --> subnets (shorter
> --> >    prefix length) to minimize the need for (changes in)
> --> configuration.
> --> >
> --> >    In any case - with current IP routing technology -
> --> subnets must be
> --> >    configured for each routed interface.
> --> >
> --> >    Proposed Solution
> --> >
> --> >    Using a hybrid of routing and bridging - an RBridge -
> --> we hope to
> --> >    gain the benefits of both technologies, in particular,
> --> gaining the
> --> >    bandwidth advantages of shortest path routing while
> --> retaning the
> --> >    simplified configuration associated with bridging.
> --> >
> --> > 1.1. Terminology
> --> >
> --> >    The following terms are used in this document in the way that
> --> >    they are defined in "TRILL RBridge Architecture" [TARCH]:
> --> >
> --> >      ARP (Address Resolution Protocol)
> --> >      Bridge Learning
> --> >      Broadcast Domain
> --> >      Broadcast Traffic
> --> >      Cooperating RBridges
> --> >      Egress RBridge
> --> >      Ethernet
> --> >      Flooded Traffic
> --> >      Flooding
> --> >      Frame
> --> >      IGP (Interior Gateway Protocol)
> --> >      Ingress RBridge
> --> >      Ingress RBridge Tree
> --> >      IS-IS (Intermediate System to Intermediate System)
> --> >      ND (Neighbor Discovery)
> --> >      OSPF (Open Shortest Path First)
> --> >      Packet
> --> >
> --> > Sgai 4> in the case of layer 2 networks is more
> --> appropriate to use the
> --> > term frame, instead of packet.
> --> >
> --> > @@@ Frame appears earlier in this list and I believe that both
are
> --> > properly defined in the architecture document.
> --> >
> --> >      RBridge
> --> >      SPF (Shortest Path First)
> --> >      STP/RSTP (Spanning Tree Protocol/Rapid Spanning Tree
> --> Protocol)
> --> >      TRILL (TRansport Interconnect over Lots of Links)
> --> >      Unknown Destination
> --> >      VLAN (Virtual Local Area Network)
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 4]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> > 1.2. Specific TRILL Goals
> --> >
> --> >    (Near) Zero Configuration
> --> >
> --> >    It is a TRILL requirement that it must be possible to deploy
> --> RBridges
> --> >    in at least a nominal set of potential deployment
> --> scenarios without
> --> a
> --> >    need to perform any configuration at each RBridge.  It
> --> is possible
> --> to
> --> >    meet this goal for a sub-set of all possible
> --> deployment scenarios
> --> by
> --> >    making realistic restrictions on deployment - such as
> --> restricting
> --> the
> --> >    deployment scenarios to exclude those involving a "trust
model"
> --> that
> --> >    imposes a need for configuration of some form of
> --> "shared secret" or
> --> >    other configuration required to restrict access to "trusted"
> --> devices.
> --> >
> --> >    It is also conceivable that a minimal configuration
> --> may be required
> --> >    for deployment of an initial (set of) device(s) - with
> --> subsequently
> --> >    deployed devices deriving that configuration
> --> information during the
> --> >    process of - for example - peer discovery.  This would
> --> constitute a
> --> >    mechanism for "near zero configuration".
> --> >
> --> >    Efficient Unicast Bandwidth Usage
> --> >
> --> >    For unicast, non-flooded traffic, RBridges are
> --> intended to merge
> --> the
> --> >    efficient bandwidth use of IP routing with the simplicity of
> --> Ethernet
> --> >    (or 802.1) bridging for networks possibly larger - and
> --> with greater
> --> >    forwarding capacity - than is the case with these networks
> --> presently.
> --> >
> --> >    The approach that we will use in accomplishing this is
> --> based on the
> --> >    idea of extending (one or more) link state routing
> --> protocol(s) to
> --> >    include distribution of Ethernet/802 reachability information
> --> between
> --> >    RBridge instances.
> --> >
> --> > Sgai 5> "RBridge instances" is not defined.
> --> >
> --> > @@@ For a document at this level, perhaps it could just say
> --> "RBridges".
> --> >
> --> >    In addition, there may be specific requirements
> --> >    imposed on the interactions between these extensions and the
> --> Spanning
> --> >    Tree Protocol (STP) and between RBridge instances and
> --> (potentially
> --> >    co-located) IP routing instances.
> --> >
> --> >    Potentially More Efficient Multicast and Broadcast Usage
> --> >
> --> >    There are clear advantages to incorporating mechanisms
> --> for improved
> --> >    efficiency in forwarding (layer 2) multicast frames
> --> and - possibly
> --> >    in reducing the amount of broadcast traffic as well.
> --> To the extent
> --> >    that these efficiency improvements may be considered
> --> "optimizations"
> --> >    and may be defined orthogonally to the process of
> --> specifying basic
> --> >    RBridge functionality, the potential to include these
> --> optimizations
> --> >    is (highly) desirable, but not mandatory.
> --> >
> --> >    Examples of this type of optimization include use of
> --> any intrinsic
> --> >    multicast routing capabilities and optimizations of ARP/ND.
> --> >
> --> >
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 5]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> >    Backward Compatibility
> --> >
> --> >    RBridges must be fully compatible with current
> --> bridges, IPv4 and
> --> >    IPv6 routers and endnodes.  They should be invisible
> --> to current IP
> --> >    routers (just as bridges are), and like routers, they
> --> terminate a
> --> >    bridged spanning tree.
> --> >
> --> > Sgai 6> the concept of terminating a bridged spanning tree is to
> --> vague,
> --> > see also sgai 10.
> --> >
> --> > @@@ I think that concept is generally understood to mean
> --> that they do
> --> > not pass BPDUs. Perhaps "by not passing BPDUs" could be appended
> --> above.
> --> >
> --> >    Unlike Routers, RBridges do not terminate
> --> >    a broadcast domain.
> --> >
> --> >
> --> > 2. General Requirements Potentially Affecting Routing
> --> >
> --> >    Candidate IGP Routing protocols - IS-IS or OSPF - must
> --> be evaluated
> --> >    for compatibility with the above goals.
> --> >
> --> >    For example, since IS-IS requires a unique System ID
> --> for each IS-IS
> --> >    instance (at least within a "scoped" deployment), a
> --> requirement for
> --> >    "(near) zero configuration" implies a need for mechanisms
that
> --> allow
> --> >    auto-configuration and/or negotiation of these
> --> (scoped) unique IDs.
> --> >
> --> >    Similar requirement must apply for OSPF as well, if selected.
> --> >
> --> >    In addition, forwarding of protocol messages must be
compatible
> --> with
> --> >    (or reasonably adaptable to) use of forwarding at
> --> layer 2, or there
> --> >    must be a means for deriving suitable higher layer
> --> addresses for
> --> the
> --> >    purpose of protocol exchanges - without imposing the need to
> --> manually
> --> >    configure higher-layer addresses.
> --> >
> --> >
> --> > 3. Link State Protocol Specific Requirements
> --> >
> --> >    Assuming that link state routing protocols meet above
> --> requirements,
> --> >    running a link state protocol among RBridges is
> --> straightforward.
> --> It
> --> >    is the same as running a level 1 routing protocol in
> --> an area.  This
> --> >    would be theoretically true for either IS-IS or OSPF,
> --> assuming that
> --> >    both of these meet the general requiremenst above.
> --> >
> --> >    From the perspective of simply extending existing routing
> --> protocols,
> --> >    IS-IS is a more appropriate choice than OSPF because
> --> it is easy in
> --> >    IS-IS to define new TLVs for use in carrying a new
information
> --> type.
> --> >
> --> >    This document, however, does not mandate a specific
link-state,
> --> IGP,
> --> >    routing protocol.  Instead, it sets forth the requirements
that
> --> will
> --> >    apply to any link-state routing protocol that may be used.
> --> >
> --> >    For implementations providing co-located
> --> Router/RBridge function,
> --> >    it is necessary to have mechanisms for distinguishing
> --> any protocol
> --> >    interactions in Routing instances from protocol
> --> interactions in the
> --> >    co-located RBridge instance.  Specific mechanisms we
> --> will use are
> --> >    very likely to be determined by the Link State Routing
Protocol
> --> that
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 6]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> >    we select.  Potential distinguishing mechanisms
> --> include use of a
> --> new
> --> >    well-known Ethernet/802 multicast address,
> --> higher-layer protocol ID
> --> >    or other - routing protocol specific - approaches.
> --> >
> --> >    The mechanism chosen should be consistent with the TRILL
goals.
> --> If,
> --> >    for example, a routing protocol specific approach
> --> required use of a
> --> >    unique "area" identifier, the RBridge area identifier
> --> should be a
> --> >    constant, well-known, value for all RBridges, and
> --> would not be one
> --> >    that would ever appear as a real routing area
> --> identifer - in order
> --> >    to allow for a potential for configuration-free operation.
> --> >
> --> >    Information that RBridge link state information will carry
> --> includes:
> --> >
> --> >    o  layer 2 addresses of nodes within the domain which have
> --> >       transmitted frames but have not transmitted ARP or
> --> ND replies
> --> >
> --> >    o  layer 3, layer 2 addresses of IP nodes within the
> --> domain.  For
> --> >       data compression, perhaps only the portion of the address
> --> >       following the domain-wide prefix need be carried.
> --> This will be
> --> >       more of an issue for IPv6 than for IPv4.
> --> >
> --> >    o  VLANs directly connected to this RBridge
> --> >
> --> >
> --> > Sgai 7> The discussion about VLAN needs to be much more
> --> extensive. It
> --> is
> --> > clear from the mailing list discussion that VLANs can be
> --> used inside
> --> the
> --> > packet or in the Ethernet encapsulation of TRILL. These are two
> --> > different kinds of VLANs and their requirement need to be stated
> --> > separately. Q in Q needs also to be discussed. I propose to
define
> --> inner
> --> > and outer VLANs (with reference to the position of the tag in
the
> --> frame.
> --> >
> --> > @@@ Based on the discussions that have been going on, I feel a
bit
> --> > clearer about VLANs than I used to. It seems hard to make
> --> a simple,
> --> > brief, definiteive statement about Rbridges and VLANs,
> --> except that all
> --> > the VLAN stuff needs to be configured, because there are so many
> --> > different scenarios. I agree that a fairly extensive discussion
of
> --> VLANs
> --> > should appear somewhere but I don't think this is the
> --> right document
> --> for
> --> > that. The requirement on the Rbridge routing expressed
> --> here is that it
> --> > needs, one way or the other, to be able to handle station
> --> identification
> --> > not just as a MAC address but as a VLAN tag and MAC address.
> --> >
> --> >    Endnode information need only be delivered to RBridges
> --> supporting
> --> >    the VLAN in which the endnode resides.
> --> >
> --> > Sgai 8> endnode -> station
> --> >
> --> >    So, for instance, if endnode
> --> >    E is discovered through a VLAN A frame, then E's
> --> location need only
> --> >    be delivered to other RBridges that are attached to
> --> VLAN A links.
> --> >
> --> >    Given that RBridges must support delivery only to
> --> links within a
> --> VLAN
> --> >
> --> >    (for multicast or unknown frames marked with the
> --> VLAN's tag), this
> --> >    mechanism can be used to advertise endnode information
> --> solely to
> --> the
> --> >    RBridges "within" a VLAN (i.e. - having connectivity or
> --> configuration
> --> >    that assoicates them with a VLAN).
> --> >
> --> >    Although a separate instance of
> --> >    the link state protocol could be run for this purpose,
> --> the topology
> --> >    is so restricted (just a single broadcast domain),
> --> that it may be
> --> >    preferable to define special case mechanisms whereby each DR
> --> >
> --> > sgai 9> DR? Designated RBridge???
> --> >
> --> > @@@ Yes, I think it should be spelled out.
> --> >
> --> >    advertises attached endnodes, and receives explicit
> --> acknolegments
> --> >    from other RBridges.
> --> >
> --> >
> --> > 4. Potential Issues
> --> >
> --> > 4.1. Interactions with Spanning Tree Forwarding and
> --> Bridge Learning
> --> >
> --> >    Spanning tree forwarding applies within parts of the RBridge
> --> domain,
> --> >    where two or more RBridges are connected by a link
> --> that includes
> --> >    multiple 802.1 bridges.
> --> >
> --> >
> --> >
> --> >
> --> > Gray                      Expires March, 2007
> -->     [Page 7]
> --> >
> --> > Internet-Draft        TRILL Routing Requirements
> --> September, 2006
> --> >
> --> >
> --> >
> --> >    In order to simplify the interactions between RBridges
> --> and bridges
> --> -
> --> >    in particular, relative to spanning tree forwarding -
> --> RBridges do
> --> not
> --> >    actively participate in spanning tree protocol with
> --> 802.1 bridges.
> --> >
> --> > Sgai 10> "do not participate actively" can mean two
> --> different things:
> --> > 1) they drop the BPDU
> --> > 2) they propagate the BPDUs as regular multicast frames
> --> >
> --> > can you clarify?
> --> >
> --> > @@@ They block BPDUs but might do something based on
> --> their receipt.
> --> > Another way to look at it is that an Rbridge with N
> --> interfaces, each
> --> > connected to bridged links, looks like N different leaf
> --> nodes to the
> --> > STP/RSTP running on those bridged links. (Could be N different
> --> spanning
> --> > trees or less than that if some of these links are connected or
> --> bridged
> --> > to each other.)
> --> >
> --> >    Hence, from the Link State Routing protocol perspective, the
> --> protocol
> --> >    will be able to treat spanning tree links as
> --> indistinguishable from
> --> >    any other Ethernet/802.1 link, in the same way that routing
> --> protocols
> --> >    do today.
> --> >
> --> >    However, support for multi-pathing is potentially
> --> problematic and
> --> is
> --> >    assumed - in this document - to be a non-goal.  Multi-path
> --> forwarding
> --> >    has the potential to confound the bridge learning process.
> --> >
> --> > Sgai 11> multi-pathing a non-goal? This seems to be in
> --> contradiction
> --> > with what said before. Is it because of the designated RBridge?
> --> >
> --> > Sgai 12> the requirement for a designated RBridge is not really
> --> > discussed here. In particular there is no discussion of
> --> the property
> --> of
> --> > the election algorithm, which must avoid broadcast storms.
> --> >
> --> > @@@ Seems like the ideal thing would be to state the
> --> requirements that
> --> > having a Designated Rbridge meets rather then the
> --> mechanism of having
> --> a
> --> > Designated Rbridge.
> --> >
> --> > @@@ Some general statement about convergence and an acceptably
low
> --> level
> --> > of overhead traffic for all of the mechanisms associated with
the
> --> > routing protocol might be reasonable.
> --> >
> --> >
> --> > 4.2. Computing Routes
> --> >
> --> >    RBridges must calculate an L2 "route table" consisting
> --> of Next Hop
> --> >    information for each known L2 unicast destination
> --> address within a
> --> >    (possibly VLAN scoped) broadcast domain. This is
> --> computed using a
> --> >    routing protocol's SPF algorithm and based on
> --> destination layer 2
> --> >    address reachability advertisements.
> --> >
> --> > Sgai 13> from the previous sentence it seems that we are
> --> computing the
> --> > topology among all the MAC addresses. What we really do
> --> is compute the
> --> > topology among RBridges and then tag it with reachable
> --> MAC addresses.
> --> > >From the SPF perspective, it is a much easier problem.
> --> >
> --> > ... snip ...
> --> >
> --> >
> --> > @@@ Thanks,
> --> > @@@ Donald
> --> >
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> -->
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 17:40:50 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Eastlake III Donald-LDE008" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 8064

I am not looking at TRILL for increased scalability, but for spanning
tree replacement to get high bisectional bandwidth.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Monday, November 06, 2006 10:38 AM
> To: Silvano Gai; Eastlake III Donald-LDE008; [email-masked]
> Subject: RE: [rbridge] Should we optimize the common case?
> 
> Silvano,
> 
> 	The assertion that only fortune 500 companies are interested in
> TRILL is baseless and untrue.  One reason why you may believe this is
> the case, is that you are making certain assumptions about complexity
> and scale of the desired solution that are equally unfounded or false.
> 
> 	There is nothing that particularly prohibits definition of some
> form of RBridge functionality that might be simple enough to deploy in
> relatively small networks - where higher speed link are becoming more
> common and wasting high speed links is also a problem.
> 
> 	The types of networks you're talking about cannot realistically
> operate with plug & play devices, and greater scalability is
paramount.
> The work we're doing in this WG is aimed at simplistic, plug & play
> deployment where increased scalability is a secondary consideration.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> Sent: Monday, November 06, 2006 1:51 AM
> --> To: Eastlake III Donald-LDE008; [email-masked]
> --> Subject: Re: [rbridge] Should we optimize the common case?
> -->
> -->
> --> Donald,
> -->
> --> The high end and the low end are extremely different.
> -->
> --> The customers interested in TRILL are the Fortune 500
> --> companies. Large
> --> Enterprise networks and large data centers used to run Financial,
> --> Insurance, Health, Chemical, Oil, Information and manufacturing
> --> companies.
> -->
> --> They have huge demand for high bandwidth and low latency.
> -->
> --> Each of these companies spends millions each year in
> --> network operation
> --> (OPEX) and millions in new equipment (CAPEX). In all of them OPEX
is
> --> much larger than CAPEX. They only buy major vendor
> --> equipments and they
> --> install them according to the recommended vendor design guideline.
> --> Typically they have an internal certification lab in which
> --> they test the
> --> network configuration and the software releases before
> --> putting them in
> --> production networks.
> -->
> --> They have a very well defined concept of backbone ports and access
> --> ports. All the backbone ports are in fiber at the highest
> --> possible speed
> --> (today 10 GE). For the access port they use a mix of fiber
> --> and copper.
> --> The backbone has a regular structure that matches the vendor
design
> --> guideline and the result of the certification experiment
> --> they have done
> --> independently.
> -->
> --> A network outage can cost millions/hour.
> -->
> --> There is no way you will see in one of these backbones a hub or
any
> --> other uncontrolled device. NEVER.
> -->
> --> That is the reason why I think this is the most important case for
> --> TRILL.
> -->
> --> More inline.
> -->
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Eastlake III Donald-LDE008
> --> > Sent: Sunday, November 05, 2006 10:20 PM
> --> > To: [email-masked]
> --> > Subject: Re: [rbridge] Should we optimize the common case?
> --> >
> --> > Silvano,
> --> >
> --> > Why do you think that 90% of Rbridge deployment will be for this
> --> unusual
> --> > case? I mean, I have no problem with the belief that
> --> Rbridges would be
> --> > better than bridges in this case but why shouldn't that be true
of
> --> less
> --> > high end uses?
> --> >
> --> > A while ago on this list I posted a rhetorical question as to
why
> --> > Rbriges shouldn't eventually replace all bridges. No one posted
an
> --> > answer.
> -->
> --> This technology will start in the high end and move down to
> --> the lower
> --> end. How low will it goes is a good question.
> -->
> --> The low end is extremely cost sensitive. When we buys a switch or
a
> --> router on the Internet for 50-100$, the COGS cannot be more
> --> that 15-30$,
> --> even with low margins. This implies that few dollar more to
> --> increase the
> --> memory size or the processor speed are a big deal. Add software
> --> development cost. Couple this with the fact that today we
> --> have low cost
> --> 1GE switches used by low-end users that have problems
> --> pushing or pulling
> --> more than few Mb/s. There is no bandwidth demand in the low end.
> --> Spanning tree is just fine. Cost is the big issue. Moreover
> --> there is the
> --> huge issue of training home/small office installers in this new
> --> technology.
> -->
> --> My 0.2 cents
> -->
> --> -- Silvano
> -->
> --> >
> --> > Why not specify Rbridges more or less as we have been for
> --> the common
> --> > bridge case and, in the backbone case you are talking
> --> about, just drop
> --> > the MAC addresses on the point-to-point links within the
backbone?
> --> > Doesn't that produce less overhead than your proposal
> --> below in both
> --> the
> --> > point-to-point and shared media cases?
> --> >
> --> > Donald
> --> >
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Silvano Gai
> --> > Sent: Wednesday, November 01, 2006 9:07 PM
> --> > To: [email-masked]
> --> > Subject: [rbridge] Should we optimize the common case?
> --> >
> --> >
> --> > With 16 bit addresses the current TRILL overhead over
> --> Ethernet is 20
> --> > bytes. If we want to expand the RBridge addresses, it we
> --> will go to
> --> > 22-24 bytes.
> --> >
> --> > What customers are telling us is that they will deploy RBridges
by
> --> > creating an RBridge backbone in which all the links will be
10GE.
> --> >
> --> > They will connect regular bridges and host to the
> --> periphery of this
> --> > backbone.
> --> >
> --> > They will not mix backbone ports with access ports, because this
> --> screws
> --> > up management, traffic engineering, debugging, and
> --> troubleshooting.
> --> > Regular network design, easy to understand, is very
> --> important. Ports
> --> are
> --> > cheap, labor is expensive.
> --> >
> --> > I am totally convinced that this will account for 90+ % of TRILL
> --> > deployment.
> --> >
> --> > I am wondering if it makes sense to have a solution
> --> highly optimized
> --> for
> --> > such an environment.
> --> >
> --> > For example we can put the egress/ingress RBridge addresses in
the
> --> outer
> --> > MAC addresses and define a TRILL shim header that
> --> contains 1 byte of
> --> hop
> --> > limit and 1 byte reserved. For this common case we will get:
> --> > 1) overhead of 16 bytes (4 to 8 bytes lower)
> --> > 2) nickname = MAC address, i.e no hash collision
> --> > 3) zero-conf achieved
> --> >
> --> > In the case we need to go over a shared media we will need to
add
> --> > another Ethernet encapsulation to carry the next hop
> --> address, i.e. 14
> --> > bytes
> --> > - total overhead will be 30 bytes
> --> >
> --> > Summarizing:
> --> > - current proposal 20-24 bytes overhead
> --> > - new proposal on point to point: 16 bytes
> --> > - new proposal on shared media: 30 bytes
> --> >
> --> > Comments?
> --> >
> --> > -- Silvano
> --> >
> --> >
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> --> >
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> -->
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->

Date: Mon, 06 Nov 2006 15:59:57 -0800
From: Joe Touch <[email-masked]>
To: Dinesh G Dutt <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on draft-ietf-trill-prob-01.txt
Status: RO
Content-Length: 4237

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigF7CA38ECC77FEB9BA08564CF
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Dinesh,

Thanks for your post.

Most should be easy to incorporate, so I trimmed them from the list.
Some notes/questions on others below:

Dinesh G Dutt wrote:
> Hi,
>=20
> Here are some comments based on the last call for=20
> draft-ietf-trill-prob-01.txt. Some general comments first.
=2E..
> - Section 2.4: There is no mention of other Ethernet protocols such as =

> 802.1au (Congestion Notification), 802.3ad (Link Aggregation), 802.3x=20
> (PAUSE). What is the relation of TRILL to these protocols ?

We haven't talked about them per-se. The 802.1 extensions are link
technology independent; the 802.3 ones do not appear to be (e.g.,
802.3ad seems GigE specific). I didn't think we were doing anything link
technology dependent.

I'm assuming control frames would be passed transparently, but I didn't
know whether we were requiring any of these on the paths inside the
rbridge, or whether they need to be interfaced to the routing protocols.

Any others have a position on this? IMO, 802.1* protocols are on the
table, but 802.3* ones shouldn't be if possible.

The goal is to support any frame that exists on an conventional ethernet
(D, D-2004, w, Q, Q-REV, v, s, etc. - though as far as I'm able to tell,
s is a supplement to Q, not subsumed in Q, and w is subsumed in D-2004).
This goes to your earlier question about support for other ethernet
control protocols, and your question below as well about VLAN pruning.

IMO, 802.1 D-2004 ought to be a minimum, but I'd add Q-REV, v, s

> - Section 2.5:I don't know were these number come from, but with 256/51=
2=20
> ports Ethernet switches available, it does not take 10,000 bridges to=20
> reach 100,000 nodes. I also don't understand if the mention of 1,000=20
> VLANs is intended as a limit. Many customers don't have enough of 4,000=
=20
> VLANs and deploy private VLANs.

The numbers are intended to reflect current scales; the goal is to imply
that this is NOT about scaling better than existing solutions. I can
update the numbers, adjust the text to refer to them as approximate, or
both.

Again, any others have a position on this?

> - Section 3.2: Use of VLANs in TRILL needs to be clarified. For example=
,=20
> there can be a VLAN tag in the outer MAC header as well as the inner=20
> MAC. Again, this has been the subject of extensive discussion on the=20
> mailing list.

Yes; how the two are handled should be addressed.

> - Section 3.2: What about VLAN pruning ? Should that be supported as=20
> well by TRILL ?

Can you define "support"? Does this mean transparently-forward, or
participate in? I didn't expect such protocols to go beyond the ingress
unless they were transparently forwarded; I didn't expect us to tie
these protocols into the interior IP routing.

Comments from others?

> - Section 3.3: Use of TTL alone isn't sufficient to fix problems caused=
=20
> by transient loops during topology changes. Again, this has been the=20
> subject of intense discussion on the mailing list. A form of interlock =

> protocol must ensure that there are no transient broadcast or multicast=
=20
> loops during topology changes.

TTL *must* be decremented before a packet is emitted; this can happen
before or after it is copied in multicast/broadcast. In that case (which
we might point out more explicitly), can you explain how TTL is not
sufficient?

> - Section 3.4: Interaction with spanning tree protocol as discussed=20
> under the subject "Traffic Storms" should be included here.

A short summary would be useful, if you can provide one ;-)

Joe

--------------enigF7CA38ECC77FEB9BA08564CF
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enigF7CA38ECC77FEB9BA08564CF--

Date: Mon, 6 Nov 2006 15:36:47 -0800
From: "Alia Atlas" <[email-masked]>
To: "Joe Touch" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] LIDs
Status: RO
Content-Length: 2469

I agree that LIDs are not a good idea.  For instance, if the ingress
has a separate next-hop table, then the size of the next-hop table
must grow to be O(rbridge interfaces) instead of O(rbridges) to store
the different encapsulation information.

This is avoiding a lookup on the egress rbridge to distribute more
change through the network and increase substantially the table
requirements on all ingress rbridges.

Alia

On 11/6/06, Joe Touch <[email-masked]> wrote:
> Caitlin Bestler wrote:
> ...
> >>
> >> With LIDs, an entry is need only per port, not per local MAC.
> >>  So given a 16 bit LID, only 16 cards * 48 ports * 16 bits =
> >> ~12kbits, a savings of ~47kbits.
> >>
> >> The more locally attached MACs, the bigger the savings.
> >
> > Instead of keeping the MAC to Port mapping in the egress RBridge
> > you instead keep it in each ingress rbridge that has learned
> > of this rbridge. I'm not seeing a net savings in memory costs
> > anywhere. There is certainly a potential latency benefit, but
> > is there really one that is valid over the desired lifespan
> > of the protocol?
>
> Catching up, and based on discussions today:
>
> LIDs don't seem to reduce memory; they increase it. The egress needs the
> MAC/LID table to tell the ingress anyway.
>
> Pro:    LIDs allow one existing ingress lookup to determine egress name
>         and egress port, saving the port lookup step at the egress.
>
> Con:    Larger shim header.
>
>         Need to coordinate LIDs to the ingress whenever egress port
>         changes (even if egress name doesn't), i.e., when a node moves
>         ports on an egress, the rbridge is impacted.
>
>         Packets lost/misdirected between when LID changes and when
>         ingress is updated.
>
>         Larger table -- O(R*P), vs O(R), where R=# routers, P=# ports.
>
> Given the fact that the lookup required is basically what bridges
> already do, I'm not sure why this is a useful reduction of effort at the
> egress. Further, a large egress should already have the resources to
> handle a large number of ports; shifting the work to the ingress could
> potentially redistribute the load in ways that make small ingresses
> responsible for very large egress tables.
>
> This seems like complexity and scalability risk that should be avoided.
>
> Joe
>
>
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>
>
>
>

Date: Mon, 6 Nov 2006 15:31:49 -0800
From: "Alia Atlas" <[email-masked]>
To: [email-masked]
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 19190

The multi-hop micro-forwarding loops only come up with asymmetric link
costs.  In TRILL, I believe the assumption is that there aren't
asymmetric link costs so that traffic flows are bidirectional.

For this case, dropping frames that would transmit through the same
interface that received it would handle the micro-forwarding loops, I
believe.

Alia

On 11/6/06, Pierre Francois <[email-masked]> wrote:
> Gray, Eric wrote:
> > Pierre,
> >
> >       The "?loop problem" is apparently an issue with some devices where
> > reasonable forwarding behavior limitations have been "optimized out."  A
> > better way to handle the ?loop problem with RBridges is not to optimize
> > out the behavior that prevents it - i.e. - a prohibition against emitting
> > a frame on the same interface on which it was received.
> >       To be clear, at either the last IETF meeting, or the one just before
> > that one, it was made fairly clear that the ?loop problem occurs when a
> > device sends a PDU out of the same interface on which it was received. In
> > comparison with simply dropping such a PDU, this behavior is pathological
> > - particularly in the case of L2 forwarding generally.
> >
>
> That would mean that under a **planned** removal of an rbridge-rbridge
> link, where the rbridge network could suffer of forwarding
> loops, you could drop traffic. Indeed,  "IS-IS like FIBs" are updated in
> an asynchronous fashion upon topological changes, so that transient
> inconsistency in the forwarding of
> unicast traffic, leading to ?loops,  is something that regularly occur.
>
> Moreover, if you use TE tools to set up the metrics of your links, you
> might end up with metric(X-->Y) != metric(Y-->X).
> In such cases, "longer ?loops", i.e. loops involving 3 or 4 rBridges can
> occur upon convergence,
> in which case the simple "incoming interface <>outgoing interface" loop
> mitigation check won't work.
>
> Pierre.
> >       I am not saying that we do not need ordered FIB for loop prevention
> > generally, but we should not need it for the ?loop problem.
> >
>
>
> > --
> > Eric
> >
> > --> -----Original Message-----
> > --> From: [email-masked]
> > --> [mailto:[email-masked]] On Behalf Of Pierre Francois
> > --> Sent: Monday, November 06, 2006 5:20 PM
> > --> To: Sanjay Sane (sanjays)
> > --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> > --> Subject: Re: [rbridge] Traffic storms
> > -->
> > -->
> > --> Sanjay,
> > -->
> > --> Sanjay Sane (sanjays) wrote:
> > --> > Pierre,
> > --> >
> > --> > After reading through this paper, it seems the oFIB
> > --> mechanism is suited
> > --> > towards unicast traffic, or a single-destination traffic.
> > --> >
> > --> > In TRILL, if the plan is to protect the traffic storms, we *must*
> > --> > protect the transient loops in the "trees" that are built to carry
> > --> > unknowns/floods, multicast as well as unicast. Such
> > --> traffic is targetted
> > --> > towards multiple destination, in fact, a tree extends to all the
> > --> > rbridges.
> > --> >
> > --> > After thinking a bit, if we think of extending the
> > --> mechanisms in the
> > --> > paper to cover "trees", we may have to delay the FIB
> > --> ordering on all the
> > --> > links that are part of the tree on any given rbridge.
> > --> This could be very
> > --> > inefficient. Do you think the oFIB mechanism would be
> > --> suitable for such
> > --> > trees?
> > --> >
> > -->
> > --> Applying an "oFIB-like" solution for multicast traffic is
> > --> something we
> > --> are working on.
> > --> So, you can make ofib suitable for multicast trees, but we
> > --> intend to
> > --> modify it for efficiency purposes.
> > --> btw, you already face the ?loop problem for unicast
> > --> traffic, and there
> > --> oFIB can be applied as-is by rbridges..
> > -->
> > --> Pierre.
> > --> > -Sanjay
> > --> >
> > --> >
> > --> >
> > --> > -----Original Message-----
> > --> > From: [email-masked]
> > --> [mailto:[email-masked]] On
> > --> > Behalf Of Pierre Francois
> > --> > Sent: Friday, November 03, 2006 5:10 PM
> > --> > To: Silvano Gai
> > --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> > --> > Subject: Re: [rbridge] Traffic storms
> > --> >
> > --> >
> > --> > Silvano,
> > --> >
> > --> > See
> > --> >
> > --> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
> > --> ib-02.txt,
> > --> > for a loop avoidance mechanism for IS-IS/OSPF.
> > --> >
> > --> > See you in SD,
> > --> >
> > --> > Pierre.
> > --> >
> > --> >
> > --> >
> > --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
> > --> >
> > --> >
> > --> >> Eric,
> > --> >>
> > --> >> Also I suggest that people that have solved the problem
> > --> of having a
> > --> >> loop free topology using ISIS, submit proposasl so that
> > --> we can compare
> > --> >>
> > --> > them.
> > --> >
> > --> >> Unfortunately I don't have one.
> > --> >>
> > --> >>
> > --> >>
> > --> >> -- Silvano
> > --> >>
> > --> >>
> > --> >>
> > --> >> ________________________________
> > --> >>
> > --> >> From: [email-masked]
> > --> [mailto:[email-masked]]
> > --> >> On Behalf Of Gray, Eric
> > --> >> Sent: Friday, November 03, 2006 11:54 AM
> > --> >> To: Gideon Kaempfer; Radia Perlman
> > --> >> Cc: [email-masked]
> > --> >> Subject: Re: [rbridge] Traffic storms
> > --> >>
> > --> >>
> > --> >>
> > --> >> Gideon,
> > --> >>
> > --> >>
> > --> >>
> > --> >>     "Drop BPDUs" is not (exactly) the same as ignore
> > --> them.  We use the
> > --> >>
> > --> >
> > --> >
> > --> >> term
> > --> >>
> > --> >> as short-hand for the one of three options we considered
> > --> for handling
> > --> >> BPDUs:
> > --> >>
> > --> >>
> > --> >>
> > --> >>     Drop (do not participate actively in STP, and do not
> > --> pass BPDUs
> > --> >> through),
> > --> >>
> > --> >>     Transparent (pass BPDUs through - potentially
> > --> altering them in
> > --> >> some way),
> > --> >>
> > --> >>     Participate (have each RBridge participate in STP as
> > --> if it were a
> > --> >> bridge).
> > --> >>
> > --> >>
> > --> >>
> > --> >> Hence, when we say "Drop BPDUs" we are not saying that
> > --> we cannot look
> > --> >>
> > --> >> at them, we are just saying that we're not doing one of
> > --> the other two
> > --> >> choices.
> > --> >>
> > --> >>
> > --> >>
> > --> >> --
> > --> >>
> > --> >> Eric
> > --> >>
> > --> >>
> > --> >>
> > --> >>
> > --> >> ________________________________
> > --> >>
> > --> >>
> > --> >>        From: [email-masked]
> > --> >> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
> > --> >>        Sent: Friday, November 03, 2006 1:40 AM
> > --> >>        To: Radia Perlman
> > --> >>        Cc: [email-masked]
> > --> >>        Subject: Re: [rbridge] Traffic storms
> > --> >>
> > --> >>        Radia,
> > --> >>
> > --> >>        Wouldn't this create a link between TRILL and STP we are trying
> > --> >>
> > --> > to
> > --> >
> > --> >> avoid?
> > --> >>
> > --> >>        Relying on the fact that a LAN segment has some kind of unique
> > --> >> identifier (such as the root bridge ID) seems like a
> > --> very practical
> > --> >> solution to me, but strongly reliant on the fact that
> > --> the Rbridges
> > --> >> actually process BPDUs. I thought they were just meant to discard
> > --> >>
> > --> > them.
> > --> >
> > --> >> Is this acceptable?
> > --> >>
> > --> >>        Regrads,
> > --> >>
> > --> >>         Gidi
> > --> >>
> > --> >>
> > --> >>
> > --> >>        On 11/3/06, Radia Perlman <[email-masked]> wrote:
> > --> >>
> > --> >>        The simplest way to put it, I think, is that in certain
> > --> >>
> > --> > transitory
> > --> >
> > --> >>        situations there might be two
> > --> >>        RBridges that both think they are Designated RBridge, and that
> > --> >>
> > --> > is
> > --> >
> > --> >> bad,
> > --> >>        but should stop
> > --> >>        as soon as a single Hello is received by the RBridge who should
> > --> >>
> > --> > not
> > --> >
> > --> >> be
> > --> >>        Designated.
> > --> >>
> > --> >>        I think PIM has similar transitory situations that can occur,
> > --> >>
> > --> > and
> > --> >
> > --> >>        bridges can also have (hopefully
> > --> >>        temporary) problems if a repeater came up and merged two LANs. I
> > --> >>
> > --> >
> > --> >
> > --> >> think
> > --> >>        such things are
> > --> >>        annoying but not fatal. But I think it's possible we can with
> > --> >>
> > --> > little
> > --> >
> > --> >>        effort avoid this problem.
> > --> >>
> > --> >>        However, with RBridges, because the bridge spanning tree
> > --> >>
> > --> > algorithm
> > --> >
> > --> >>        elects a Root, there's
> > --> >>        really a way of uniquely identifying a LAN (where "LAN" is a
> > --> >>
> > --> > bunch of
> > --> >
> > --> >>        links connected with
> > --> >>        bridges). The unique identifier is the root bridge.
> > --> >>
> > --> >>        When the B1-B2 link is down, RB1 and RB2 will see the topology
> > --> >>
> > --> > as two
> > --> >
> > --> >>        separate links, and each
> > --> >>        one will have a distinct spanning tree Root bridge (RB1 will see
> > --> >>
> > --> > B1,
> > --> >
> > --> >> and
> > --> >>        RB2 will see B2 as the root).
> > --> >>
> > --> >>        When the B1-B2 link comes up, the bridges will first merge the
> > --> >>
> > --> > two
> > --> >
> > --> >>        links, and either RB1 or RB2 will
> > --> >>        see that the bridge spanning tree root has changed. This will be
> > --> >>        discovered before B1 and B2 forward
> > --> >>        traffic across the link because of the bridge forwarding delay.
> > --> >>        If B1 has better priority as bridge spanning tree root than B2,
> > --> >>
> > --> > then
> > --> >
> > --> >> RB1
> > --> >>        will not notice anything
> > --> >>        different when the B1-B2 link comes up. But RB2 will notice
> > --> >>        something different; the spanning tree root has changed
> > --> >>
> > --> > identities
> > --> >
> > --> >> from
> > --> >>        "B2" to "B1".
> > --> >>
> > --> >>        Given this, RB2 could temporarily stop forwarding to or from the
> > --> >>
> > --> > link
> > --> >
> > --> >>        when the Root bridge
> > --> >>        changes identities, though it should definitely immediately send
> > --> >>
> > --> >
> > --> >
> > --> >> IS-IS
> > --> >>        Hellos (either RB1 or RB2 will
> > --> >>        be elected Designated Router in the IS-IS election for that
> > --> >>
> > --> > link). If
> > --> >
> > --> >>        RB2 has better prioirty for
> > --> >>        root, the RB1 will immediately stop forwarding to or from the
> > --> >>
> > --> > link
> > --> >
> > --> >> when
> > --> >>        it sees the Hello from RB2.
> > --> >>        If RB2 has better priority in the IS-IS election, then RB1
> > --> >>
> > --> > should
> > --> >
> > --> >>        immediately send an IS-IS Hello
> > --> >>        when it sees a Hello from a new RBridge on the link.
> > --> >>
> > --> >>        So I think this is not a big deal, and that if we are worried,
> > --> >>
> > --> > we can
> > --> >
> > --> >>        specify that an RBridge should
> > --> >>        stop acting like the Designated RBridge for a few seconds after
> > --> >>
> > --> > the
> > --> >
> > --> >>        identity of the Root in the spanning
> > --> >>        tree algorithm changes.
> > --> >>
> > --> >>        Or we could be even fancier and have each RBridge announce in
> > --> >>
> > --> > its
> > --> >
> > --> >> IS-IS
> > --> >>        Hellos which LAN IDs it
> > --> >>        is Designated for, where a LAN ID is the MAC address of the Root
> > --> >>
> > --> >
> > --> >
> > --> >> bridge.
> > --> >>        So RB1 continue
> > --> >>        forwarding if the identity changes from B1 to B2 provided no
> > --> >>
> > --> > other
> > --> >
> > --> >>        RBridge has claimed to be connected
> > --> >>        to B2. But if RB2's LSP claims it is attached to B2, then RB1
> > --> >>
> > --> > must
> > --> >
> > --> >> stop
> > --> >>        forwarding for enough time
> > --> >>        for the IS-IS election to sort itself out and choose a
> > --> >>
> > --> > Designated
> > --> >
> > --> >> RBridge.
> > --> >>
> > --> >>        Radia
> > --> >>
> > --> >>
> > --> >>
> > --> >>
> > --> >>
> > --> >>
> > --> >>        Gideon Kaempfer wrote:
> > --> >>
> > --> >>        >Following mention by Silvano of broadcast and multicast storms
> > --> >>
> > --> > (and
> > --> >
> > --> >> the need
> > --> >>        >to protect against them), I played around with different
> > --> >>
> > --> > scenarios
> > --> >
> > --> >> and came
> > --> >>        >upon one I would appreciate your comments on (in the hope I am
> > --> >> pointing out
> > --> >>        >a non-existent issue with TRILL). I believe a broadcast and
> > --> >>
> > --> > even a
> > --> >
> > --> >> unicast
> > --> >>        >storm could be created as the result of a loop that isn't
> > --> >>
> > --> > protected
> > --> >
> > --> >> by TTL
> > --> >>        >nor by STP in the case of a link connecting two separate LAN
> > --> >> segments coming
> > --> >>        >to life.
> > --> >>        >
> > --> >>        >- RB1 ---- RB2 -
> > --> >>        >   |        |
> > --> >>        >-  B1 --x-- B2 -
> > --> >>        >   |        |
> > --> >>        >   H1       H2
> > --> >>        >
> > --> >>        >1. The network (segment) involved consists of two Rbridges
> > --> >>
> > --> > (RB1,
> > --> >
> > --> >> RB2), two
> > --> >>        >bridges (B1, B2) and two hosts (H1, H2). They are physically
> > --> >> connected as
> > --> >>        >depicted.
> > --> >>        >2. State A: the direct link between B1 and B2 is down. B1 and
> > --> >> B2 find
> > --> >>        >themselves on different LAN segments and hence different
> > --> >>
> > --> > spanning
> > --> >
> > --> >> trees. RB1
> > --> >>        >and RB2 are both designated Rbridges (each for the segment of
> > --> >>
> > --> > the
> > --> >
> > --> >>        >corresponding bridge).
> > --> >>        >3. State B: the direct link between B1 and B2 goes up (someone
> > --> >> connects a
> > --> >>        >cable). B1 and B2 discover each other and establish a common
> > --> >> spanning tree.
> > --> >>        >RB1 and RB2 both find themselves attached to the same LAN
> > --> >>
> > --> > segment
> > --> >
> > --> >> and hence
> > --> >>        >RB1 (without loss of generality) will eventually become the
> > --> >> designated
> > --> >>        >Rbridge for it.
> > --> >>        >4. Just before RB1 and RB2 identify that they are both on the
> > --> >>
> > --> > same
> > --> >
> > --> >> segment
> > --> >>        >and RB2 stops functioning as a designated Rbridge the following
> > --> >>
> > --> >
> > --> >
> > --> >> scenario
> > --> >>        >seems possible:
> > --> >>        >  a. H1 sends a broadcast frame.
> > --> >>        >  b. B1 receives it and forwards to RB1 and B2.
> > --> >>        >  c. RB1 (encapsulates and) forwards to RB2.
> > --> >>        >  d. B2 forwards to RB2 and H2.
> > --> >>        >  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
> > --> >>
> > --> > to
> > --> >
> > --> >> RB1).
> > --> >>        >  f. (RB1 forwards to B1.)
> > --> >>        >  g. B2 forwards (again) to H2 and to B1.
> > --> >>        >  h. B1 forwards to H1 (see remark below regarding filtering
> > --> >>
> > --> > table
> > --> >
> > --> >>        >contamination) and to RB1.
> > --> >>        >  i. Etcetera etcetera.
> > --> >>        >5. A broadcast storm is born, created by a loop that is not
> > --> >> protected by TTL
> > --> >>        >(due to the fact that forwarding between the Rbridges is only
> > --> >>
> > --> > across
> > --> >
> > --> >> a
> > --> >>        >single hop) nor by STP (due to the fact that Rbridges do not
> > --> >> participate in
> > --> >>        >STP).
> > --> >>        >6. If forwarding commences at the hardware level and no
> > --> >>
> > --> > broadcast
> > --> >
> > --> >> rate
> > --> >>        >limiting is in place, the storm may cause severe damage in a
> > --> >>
> > --> > very
> > --> >
> > --> >> short time
> > --> >>        >(note that replicated frames are sent to H1 and H2 (or any
> > --> >>
> > --> > network
> > --> >
> > --> >> they
> > --> >>        >could represent).
> > --> >>        >7. Another unfortunate effect of this storm is that B1 and B2
> > --> >>
> > --> > no
> > --> >
> > --> >> longer know
> > --> >>        >where H1 is located (due to the contamination of their
> > --> >>
> > --> > filtering
> > --> >
> > --> >> tables by a
> > --> >>        >frame from H1 that arrives from the wrong direction (and in
> > --> >>
> > --> > fact
> > --> >
> > --> >> from
> > --> >>        >multiple directions). As a result, a possible unicast frame
> > --> >>
> > --> > from H2
> > --> >
> > --> >> to H1
> > --> >>        >will just join the storm over the loop at least in one
> > --> >>
> > --> > direction
> > --> >
> > --> >> (RB2 will
> > --> >>        >forward it to RB1) but will not arrive at H1...
> > --> >>        >
> > --> >>        >One possible solution could be for RB2 to identify the fact
> > --> >>
> > --> > that it
> > --> >
> > --> >> is
> > --> >>        >receiving a frame from a host with a MAC address that is
> > --> >>
> > --> > associated
> > --> >
> > --> >> with a
> > --> >>        >segment it thought it isn't connected to. Hence, it may trigger
> > --> >>
> > --> > an
> > --> >
> > --> >> immediate
> > --> >>        >neighbor discovery / designated Rbridge election. However,
> > --> >>
> > --> > because
> > --> >
> > --> >> Rbridges
> > --> >>        >should allow host mobility, this frame may need to be forwarded
> > --> >>
> > --> > (and
> > --> >
> > --> >> hence
> > --> >>        >the storm commences).
> > --> >>        >
> > --> >>        >As mentioned above, any comments are welcome.
> > --> >>        >  Gideon Kaempfer
> > --> >>        >
> > --> >>        >_______________________________________________
> > --> >>        >rbridge mailing list
> > --> >>        >[email-masked]
> > --> >>        > http://mailman.postel.org/mailman/listinfo/rbridge
> > --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
> > --> >>        >
> > --> >>        >
> > --> >>
> > --> >>        _______________________________________________
> > --> >>        rbridge mailing list
> > --> >>        [email-masked]
> > --> >>        http://mailman.postel.org/mailman/listinfo/rbridge
> > --> >>
> > --> >>
> > --> >>
> > --> >>
> > --> >>
> > --> > _______________________________________________
> > --> > rbridge mailing list
> > --> > [email-masked]
> > --> > http://mailman.postel.org/mailman/listinfo/rbridge
> > --> >
> > --> >
> > -->
> > --> _______________________________________________
> > --> rbridge mailing list
> > --> [email-masked]
> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> > -->
> >
> >
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>

Date: Mon, 06 Nov 2006 15:22:51 -0800
From: Joe Touch <[email-masked]>
To: Caitlin Bestler <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] LIDs
Status: RO
Content-Length: 2416

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig710D60A126E918DA987DDE3B
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Caitlin Bestler wrote:
=2E..
>>
>> With LIDs, an entry is need only per port, not per local MAC.
>>  So given a 16 bit LID, only 16 cards * 48 ports * 16 bits =3D
>> ~12kbits, a savings of ~47kbits.
>>
>> The more locally attached MACs, the bigger the savings.
>=20
> Instead of keeping the MAC to Port mapping in the egress RBridge
> you instead keep it in each ingress rbridge that has learned
> of this rbridge. I'm not seeing a net savings in memory costs
> anywhere. There is certainly a potential latency benefit, but
> is there really one that is valid over the desired lifespan
> of the protocol?

Catching up, and based on discussions today:

LIDs don't seem to reduce memory; they increase it. The egress needs the
MAC/LID table to tell the ingress anyway.

Pro:	LIDs allow one existing ingress lookup to determine egress name
	and egress port, saving the port lookup step at the egress.

Con:	Larger shim header.

	Need to coordinate LIDs to the ingress whenever egress port
	changes (even if egress name doesn't), i.e., when a node moves
	ports on an egress, the rbridge is impacted.

	Packets lost/misdirected between when LID changes and when
	ingress is updated.

	Larger table -- O(R*P), vs O(R), where R=3D# routers, P=3D# ports.

Given the fact that the lookup required is basically what bridges
already do, I'm not sure why this is a useful reduction of effort at the
egress. Further, a large egress should already have the resources to
handle a large number of ports; shifting the work to the ingress could
potentially redistribute the load in ways that make small ingresses
responsible for very large egress tables.

This seems like complexity and scalability risk that should be avoided.

Joe

--------------enig710D60A126E918DA987DDE3B
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enig710D60A126E918DA987DDE3B--

Date: Mon, 06 Nov 2006 15:01:00 -0800
From: Pierre Francois <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Reply-To: [email-masked]
Status: RO
Content-Length: 17131

Gray, Eric wrote:
> Pierre,
>
> 	The "?loop problem" is apparently an issue with some devices where
> reasonable forwarding behavior limitations have been "optimized out."  A
> better way to handle the ?loop problem with RBridges is not to optimize
> out the behavior that prevents it - i.e. - a prohibition against emitting
> a frame on the same interface on which it was received.
> 	To be clear, at either the last IETF meeting, or the one just before
> that one, it was made fairly clear that the ?loop problem occurs when a
> device sends a PDU out of the same interface on which it was received. In 
> comparison with simply dropping such a PDU, this behavior is pathological
> - particularly in the case of L2 forwarding generally.
>   

That would mean that under a **planned** removal of an rbridge-rbridge 
link, where the rbridge network could suffer of forwarding
loops, you could drop traffic. Indeed,  "IS-IS like FIBs" are updated in 
an asynchronous fashion upon topological changes, so that transient 
inconsistency in the forwarding of
unicast traffic, leading to ?loops,  is something that regularly occur.

Moreover, if you use TE tools to set up the metrics of your links, you 
might end up with metric(X-->Y) != metric(Y-->X).
In such cases, "longer ?loops", i.e. loops involving 3 or 4 rBridges can 
occur upon convergence,
in which case the simple "incoming interface <>outgoing interface" loop 
mitigation check won't work.

Pierre.
> 	I am not saying that we do not need ordered FIB for loop prevention
> generally, but we should not need it for the ?loop problem.
>   

> --
> Eric
>
> --> -----Original Message-----
> --> From: [email-masked] 
> --> [mailto:[email-masked]] On Behalf Of Pierre Francois
> --> Sent: Monday, November 06, 2006 5:20 PM
> --> To: Sanjay Sane (sanjays)
> --> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> --> Subject: Re: [rbridge] Traffic storms
> --> 
> --> 
> --> Sanjay,
> --> 
> --> Sanjay Sane (sanjays) wrote:
> --> > Pierre,
> --> >
> --> > After reading through this paper, it seems the oFIB 
> --> mechanism is suited
> --> > towards unicast traffic, or a single-destination traffic. 
> --> >
> --> > In TRILL, if the plan is to protect the traffic storms, we *must*
> --> > protect the transient loops in the "trees" that are built to carry
> --> > unknowns/floods, multicast as well as unicast. Such 
> --> traffic is targetted
> --> > towards multiple destination, in fact, a tree extends to all the
> --> > rbridges. 
> --> >
> --> > After thinking a bit, if we think of extending the 
> --> mechanisms in the
> --> > paper to cover "trees", we may have to delay the FIB 
> --> ordering on all the
> --> > links that are part of the tree on any given rbridge. 
> --> This could be very
> --> > inefficient. Do you think the oFIB mechanism would be 
> --> suitable for such
> --> > trees?
> --> >   
> --> 
> --> Applying an "oFIB-like" solution for multicast traffic is 
> --> something we 
> --> are working on.
> --> So, you can make ofib suitable for multicast trees, but we 
> --> intend to 
> --> modify it for efficiency purposes.
> --> btw, you already face the ?loop problem for unicast 
> --> traffic, and there 
> --> oFIB can be applied as-is by rbridges..
> --> 
> --> Pierre.
> --> > -Sanjay 
> --> >
> --> >  
> --> >
> --> > -----Original Message-----
> --> > From: [email-masked] 
> --> [mailto:[email-masked]] On
> --> > Behalf Of Pierre Francois
> --> > Sent: Friday, November 03, 2006 5:10 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> --> > Subject: Re: [rbridge] Traffic storms
> --> >
> --> >
> --> > Silvano,
> --> >
> --> > See
> --> > 
> --> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
> --> ib-02.txt,
> --> > for a loop avoidance mechanism for IS-IS/OSPF.
> --> >
> --> > See you in SD,
> --> >
> --> > Pierre.
> --> >
> --> >
> --> >
> --> > On Fri, 3 Nov 2006, Silvano Gai wrote:
> --> >
> --> >   
> --> >> Eric,
> --> >>
> --> >> Also I suggest that people that have solved the problem 
> --> of having a 
> --> >> loop free topology using ISIS, submit proposasl so that 
> --> we can compare
> --> >>     
> --> > them.
> --> >   
> --> >> Unfortunately I don't have one.
> --> >>
> --> >>
> --> >>
> --> >> -- Silvano
> --> >>
> --> >>
> --> >>
> --> >> ________________________________
> --> >>
> --> >> From: [email-masked] 
> --> [mailto:[email-masked]] 
> --> >> On Behalf Of Gray, Eric
> --> >> Sent: Friday, November 03, 2006 11:54 AM
> --> >> To: Gideon Kaempfer; Radia Perlman
> --> >> Cc: [email-masked]
> --> >> Subject: Re: [rbridge] Traffic storms
> --> >>
> --> >>
> --> >>
> --> >> Gideon,
> --> >>
> --> >>
> --> >>
> --> >>     "Drop BPDUs" is not (exactly) the same as ignore 
> --> them.  We use the
> --> >>     
> --> >
> --> >   
> --> >> term
> --> >>
> --> >> as short-hand for the one of three options we considered 
> --> for handling
> --> >> BPDUs:
> --> >>
> --> >>
> --> >>
> --> >>     Drop (do not participate actively in STP, and do not 
> --> pass BPDUs 
> --> >> through),
> --> >>
> --> >>     Transparent (pass BPDUs through - potentially 
> --> altering them in 
> --> >> some way),
> --> >>
> --> >>     Participate (have each RBridge participate in STP as 
> --> if it were a 
> --> >> bridge).
> --> >>
> --> >>
> --> >>
> --> >> Hence, when we say "Drop BPDUs" we are not saying that 
> --> we cannot look
> --> >>
> --> >> at them, we are just saying that we're not doing one of 
> --> the other two 
> --> >> choices.
> --> >>
> --> >>
> --> >>
> --> >> --
> --> >>
> --> >> Eric
> --> >>
> --> >>
> --> >>
> --> >>
> --> >> ________________________________
> --> >>
> --> >>
> --> >> 	From: [email-masked]
> --> >> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
> --> >> 	Sent: Friday, November 03, 2006 1:40 AM
> --> >> 	To: Radia Perlman
> --> >> 	Cc: [email-masked]
> --> >> 	Subject: Re: [rbridge] Traffic storms
> --> >>
> --> >> 	Radia,
> --> >>
> --> >> 	Wouldn't this create a link between TRILL and STP we are trying
> --> >>     
> --> > to 
> --> >   
> --> >> avoid?
> --> >>
> --> >> 	Relying on the fact that a LAN segment has some kind of unique 
> --> >> identifier (such as the root bridge ID) seems like a 
> --> very practical 
> --> >> solution to me, but strongly reliant on the fact that 
> --> the Rbridges 
> --> >> actually process BPDUs. I thought they were just meant to discard
> --> >>     
> --> > them.
> --> >   
> --> >> Is this acceptable?
> --> >>
> --> >> 	Regrads,
> --> >>
> --> >> 	 Gidi
> --> >>
> --> >>
> --> >>
> --> >> 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
> --> >>
> --> >> 	The simplest way to put it, I think, is that in certain
> --> >>     
> --> > transitory
> --> >   
> --> >> 	situations there might be two
> --> >> 	RBridges that both think they are Designated RBridge, and that
> --> >>     
> --> > is 
> --> >   
> --> >> bad,
> --> >> 	but should stop
> --> >> 	as soon as a single Hello is received by the RBridge who should
> --> >>     
> --> > not 
> --> >   
> --> >> be
> --> >> 	Designated.
> --> >>
> --> >> 	I think PIM has similar transitory situations that can occur,
> --> >>     
> --> > and
> --> >   
> --> >> 	bridges can also have (hopefully
> --> >> 	temporary) problems if a repeater came up and merged two LANs. I
> --> >>     
> --> >
> --> >   
> --> >> think
> --> >> 	such things are
> --> >> 	annoying but not fatal. But I think it's possible we can with
> --> >>     
> --> > little
> --> >   
> --> >> 	effort avoid this problem.
> --> >>
> --> >> 	However, with RBridges, because the bridge spanning tree
> --> >>     
> --> > algorithm
> --> >   
> --> >> 	elects a Root, there's
> --> >> 	really a way of uniquely identifying a LAN (where "LAN" is a
> --> >>     
> --> > bunch of
> --> >   
> --> >> 	links connected with
> --> >> 	bridges). The unique identifier is the root bridge.
> --> >>
> --> >> 	When the B1-B2 link is down, RB1 and RB2 will see the topology
> --> >>     
> --> > as two
> --> >   
> --> >> 	separate links, and each
> --> >> 	one will have a distinct spanning tree Root bridge (RB1 will see
> --> >>     
> --> > B1, 
> --> >   
> --> >> and
> --> >> 	RB2 will see B2 as the root).
> --> >>
> --> >> 	When the B1-B2 link comes up, the bridges will first merge the
> --> >>     
> --> > two
> --> >   
> --> >> 	links, and either RB1 or RB2 will
> --> >> 	see that the bridge spanning tree root has changed. This will be
> --> >> 	discovered before B1 and B2 forward
> --> >> 	traffic across the link because of the bridge forwarding delay.
> --> >> 	If B1 has better priority as bridge spanning tree root than B2,
> --> >>     
> --> > then 
> --> >   
> --> >> RB1
> --> >> 	will not notice anything
> --> >> 	different when the B1-B2 link comes up. But RB2 will notice
> --> >> 	something different; the spanning tree root has changed
> --> >>     
> --> > identities 
> --> >   
> --> >> from
> --> >> 	"B2" to "B1".
> --> >>
> --> >> 	Given this, RB2 could temporarily stop forwarding to or from the
> --> >>     
> --> > link
> --> >   
> --> >> 	when the Root bridge
> --> >> 	changes identities, though it should definitely immediately send
> --> >>     
> --> >
> --> >   
> --> >> IS-IS
> --> >> 	Hellos (either RB1 or RB2 will
> --> >> 	be elected Designated Router in the IS-IS election for that
> --> >>     
> --> > link). If
> --> >   
> --> >> 	RB2 has better prioirty for
> --> >> 	root, the RB1 will immediately stop forwarding to or from the
> --> >>     
> --> > link 
> --> >   
> --> >> when
> --> >> 	it sees the Hello from RB2.
> --> >> 	If RB2 has better priority in the IS-IS election, then RB1
> --> >>     
> --> > should
> --> >   
> --> >> 	immediately send an IS-IS Hello
> --> >> 	when it sees a Hello from a new RBridge on the link.
> --> >>
> --> >> 	So I think this is not a big deal, and that if we are worried,
> --> >>     
> --> > we can
> --> >   
> --> >> 	specify that an RBridge should
> --> >> 	stop acting like the Designated RBridge for a few seconds after
> --> >>     
> --> > the
> --> >   
> --> >> 	identity of the Root in the spanning
> --> >> 	tree algorithm changes.
> --> >>
> --> >> 	Or we could be even fancier and have each RBridge announce in
> --> >>     
> --> > its 
> --> >   
> --> >> IS-IS
> --> >> 	Hellos which LAN IDs it
> --> >> 	is Designated for, where a LAN ID is the MAC address of the Root
> --> >>     
> --> >
> --> >   
> --> >> bridge.
> --> >> 	So RB1 continue
> --> >> 	forwarding if the identity changes from B1 to B2 provided no
> --> >>     
> --> > other
> --> >   
> --> >> 	RBridge has claimed to be connected
> --> >> 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
> --> >>     
> --> > must 
> --> >   
> --> >> stop
> --> >> 	forwarding for enough time
> --> >> 	for the IS-IS election to sort itself out and choose a
> --> >>     
> --> > Designated 
> --> >   
> --> >> RBridge.
> --> >>
> --> >> 	Radia
> --> >>
> --> >>
> --> >>
> --> >>
> --> >>
> --> >>
> --> >> 	Gideon Kaempfer wrote:
> --> >>
> --> >> 	>Following mention by Silvano of broadcast and multicast storms
> --> >>     
> --> > (and 
> --> >   
> --> >> the need
> --> >> 	>to protect against them), I played around with different
> --> >>     
> --> > scenarios 
> --> >   
> --> >> and came
> --> >> 	>upon one I would appreciate your comments on (in the hope I am 
> --> >> pointing out
> --> >> 	>a non-existent issue with TRILL). I believe a broadcast and
> --> >>     
> --> > even a 
> --> >   
> --> >> unicast
> --> >> 	>storm could be created as the result of a loop that isn't
> --> >>     
> --> > protected 
> --> >   
> --> >> by TTL
> --> >> 	>nor by STP in the case of a link connecting two separate LAN 
> --> >> segments coming
> --> >> 	>to life.
> --> >> 	>
> --> >> 	>- RB1 ---- RB2 -
> --> >> 	>   |        |
> --> >> 	>-  B1 --x-- B2 -
> --> >> 	>   |        |
> --> >> 	>   H1       H2
> --> >> 	>
> --> >> 	>1. The network (segment) involved consists of two Rbridges
> --> >>     
> --> > (RB1, 
> --> >   
> --> >> RB2), two
> --> >> 	>bridges (B1, B2) and two hosts (H1, H2). They are physically 
> --> >> connected as
> --> >> 	>depicted.
> --> >> 	>2. State A: the direct link between B1 and B2 is down. B1 and
> --> >> B2 find
> --> >> 	>themselves on different LAN segments and hence different
> --> >>     
> --> > spanning 
> --> >   
> --> >> trees. RB1
> --> >> 	>and RB2 are both designated Rbridges (each for the segment of
> --> >>     
> --> > the
> --> >   
> --> >> 	>corresponding bridge).
> --> >> 	>3. State B: the direct link between B1 and B2 goes up (someone 
> --> >> connects a
> --> >> 	>cable). B1 and B2 discover each other and establish a common 
> --> >> spanning tree.
> --> >> 	>RB1 and RB2 both find themselves attached to the same LAN
> --> >>     
> --> > segment 
> --> >   
> --> >> and hence
> --> >> 	>RB1 (without loss of generality) will eventually become the 
> --> >> designated
> --> >> 	>Rbridge for it.
> --> >> 	>4. Just before RB1 and RB2 identify that they are both on the
> --> >>     
> --> > same 
> --> >   
> --> >> segment
> --> >> 	>and RB2 stops functioning as a designated Rbridge the following
> --> >>     
> --> >
> --> >   
> --> >> scenario
> --> >> 	>seems possible:
> --> >> 	>  a. H1 sends a broadcast frame.
> --> >> 	>  b. B1 receives it and forwards to RB1 and B2.
> --> >> 	>  c. RB1 (encapsulates and) forwards to RB2.
> --> >> 	>  d. B2 forwards to RB2 and H2.
> --> >> 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
> --> >>     
> --> > to 
> --> >   
> --> >> RB1).
> --> >> 	>  f. (RB1 forwards to B1.)
> --> >> 	>  g. B2 forwards (again) to H2 and to B1.
> --> >> 	>  h. B1 forwards to H1 (see remark below regarding filtering
> --> >>     
> --> > table
> --> >   
> --> >> 	>contamination) and to RB1.
> --> >> 	>  i. Etcetera etcetera.
> --> >> 	>5. A broadcast storm is born, created by a loop that is not 
> --> >> protected by TTL
> --> >> 	>(due to the fact that forwarding between the Rbridges is only
> --> >>     
> --> > across 
> --> >   
> --> >> a
> --> >> 	>single hop) nor by STP (due to the fact that Rbridges do not 
> --> >> participate in
> --> >> 	>STP).
> --> >> 	>6. If forwarding commences at the hardware level and no
> --> >>     
> --> > broadcast 
> --> >   
> --> >> rate
> --> >> 	>limiting is in place, the storm may cause severe damage in a
> --> >>     
> --> > very 
> --> >   
> --> >> short time
> --> >> 	>(note that replicated frames are sent to H1 and H2 (or any
> --> >>     
> --> > network 
> --> >   
> --> >> they
> --> >> 	>could represent).
> --> >> 	>7. Another unfortunate effect of this storm is that B1 and B2
> --> >>     
> --> > no 
> --> >   
> --> >> longer know
> --> >> 	>where H1 is located (due to the contamination of their
> --> >>     
> --> > filtering 
> --> >   
> --> >> tables by a
> --> >> 	>frame from H1 that arrives from the wrong direction (and in
> --> >>     
> --> > fact 
> --> >   
> --> >> from
> --> >> 	>multiple directions). As a result, a possible unicast frame
> --> >>     
> --> > from H2 
> --> >   
> --> >> to H1
> --> >> 	>will just join the storm over the loop at least in one
> --> >>     
> --> > direction 
> --> >   
> --> >> (RB2 will
> --> >> 	>forward it to RB1) but will not arrive at H1...
> --> >> 	>
> --> >> 	>One possible solution could be for RB2 to identify the fact
> --> >>     
> --> > that it 
> --> >   
> --> >> is
> --> >> 	>receiving a frame from a host with a MAC address that is
> --> >>     
> --> > associated 
> --> >   
> --> >> with a
> --> >> 	>segment it thought it isn't connected to. Hence, it may trigger
> --> >>     
> --> > an 
> --> >   
> --> >> immediate
> --> >> 	>neighbor discovery / designated Rbridge election. However,
> --> >>     
> --> > because 
> --> >   
> --> >> Rbridges
> --> >> 	>should allow host mobility, this frame may need to be forwarded
> --> >>     
> --> > (and 
> --> >   
> --> >> hence
> --> >> 	>the storm commences).
> --> >> 	>
> --> >> 	>As mentioned above, any comments are welcome.
> --> >> 	>  Gideon Kaempfer
> --> >> 	>
> --> >> 	>_______________________________________________
> --> >> 	>rbridge mailing list
> --> >> 	>[email-masked]
> --> >> 	> http://mailman.postel.org/mailman/listinfo/rbridge
> --> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
> --> >> 	>
> --> >> 	>
> --> >>
> --> >> 	_______________________________________________
> --> >> 	rbridge mailing list
> --> >> 	[email-masked]
> --> >> 	http://mailman.postel.org/mailman/listinfo/rbridge
> --> >>
> --> >>
> --> >>
> --> >>
> --> >>     
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> --> >
> --> >   
> --> 
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> 
>
>   

Date: Mon, 06 Nov 2006 23:52:18 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: Radia Perlman <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 2798

Radia,
       As you know, I support this approach. I have a doubt, however. 
The ID used is the RBridge ID or a different ID per port?
 I assume it is by RBridge ID. Then, as far I understand, several ports 
of an RBridge could be connected to the same bridged link. In other 
words, an RBridge port may have to compete against other port of same 
RBridge for "root bridge" election. In this case, if the ID is the same 
(the RBridge ID), the link will split into two separate trees near the 
equal cost point if that is possible (at least a bridge exists between 
RBridge ports) to balance the cost of link connected to each of the root 
bridge ports, or by any of the standard tie breaking mechanisms like 
port ID if no there is no bridge interposed.
Regards
Guillermo
Radia Perlman escribi?:
> I hesitate to bring this up because I don't want to reintroduce 
> confusion about
> "participating" in bridge spanning tree algorithm. So, please---what I'm
> about to propose does NOT merge links. Bridged links still terminate at 
> an RBridge.
>
> The issue is that it can be unpleasant for two RBridges to 
> simultaneously think they
> are both Designated on the same link, which can happen if a bridge came up
> and connected two links. Or for that matter, a repeater.
>
> One way of making sure that a situation like that resolves very quickly,
> and absolutely, is to have RBridges act like bridges on each of their ports,
> with numerically lowest (i.e., highest) priority for become Root.
>
> Now---I DO NOT MEAN that an RBridge merges the spanning trees on each of 
> its ports.
> The spanning tree is terminated at an RBridge. If an RBridge has 4 
> ports, it will
> participate in 4 independent bridge spanning tree instances.
>
> The advantage of doing this is that we could make the Root bridge be the 
> Designated
> RBridge. Then if two RBridge links merged, the RBridges would notice 
> immediately.
> If you get usurped as bridge Root, you are also usurped as RBridge 
> Designated RBridge.
>
> Since the bridge spanning tree messages are never delayed by 
> pre-forwarding delays,
> this seems like it might be a nice thing to do.
>
> It would be nice if the same RBridge that would get elected Desiganted 
> RBridge in
> the IS-IS link election would be elected bridge Root on that link. The 
> easiest thing
> would be not to bother with IS-IS priority, and have them all have the 
> same priority,
> with election being solely on ID. Then they can all use the lowest 
> bridge root priority,
> and the same RBridge would get elected bridge root on the link as would get
> elected Designated RBridge on the link.
>
> Radia
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   

Date: Mon, 06 Nov 2006 14:50:50 -0800
From: Joe Touch <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 3238

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enigB5E0093D85301953B4916C33
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Gray, Eric wrote:
> Joe,
>=20
> 	For the unicast case, it need not be.=20

Agreed.

> Reasons why it should
> be different in the flooded, broadcast and multicast case are - I
> believe - fairly obvious, since these behaviors are ditinctly not
> the same in these cases.

Yes; they're used for scoping. I'm not clear on why scoping comes into
play here, though - there's never a time we want to do
multicast/broadcast that doesn't reach the edge, and no penalty
(excepting w.r.t. looping) for overreaching. I.e., it has no equivalent
case here.
> 	Also, even in the IP case, there has been discussion in the
> past about the advantages of TTL reduction for tunneled traffic.

Much of what I've heard of there has been used for "security" (heavy
emphasis on the quotes) for tunneled BGP traffic. Is there another case,
 or are you referring to that?

Joe

>=20
> --
> Eric=20
>=20
> --> -----Original Message-----
> --> From: Joe Touch [mailto:[email-masked]]=20
> --> Sent: Monday, November 06, 2006 5:36 PM
> --> To: Gray, Eric
> --> Cc: Eastlake III Donald-LDE008; [email-masked]
> --> Subject: Re: [rbridge] A thought about TTLs
> -->=20
> -->=20
> -->=20
> --> Gray, Eric wrote:
> --> > Joe,
> --> >=20
> --> > 	The protocol specification cannot be silent on the setting of
> --> > a value for TTL.  For one thing, any value less than the=20
> --> max, should
> --> > be compared with the expected number of hops as a sanity=20
> --> check - one
> --> > way or another (meaning if the boxes don't do it, the=20
> --> user will have
> --> > to do it themselves).
> --> >=20
> --> > 	For example, if an implementer decided that 16 hops was the=20
> --> > most they could realistically expect to see in an RBridge=20
> --> CRED, they
> --> > might set it to 16.  If it subsequently turns out that a=20
> --> network is=20
> --> > larger than they expected, I sincerely hope that they made this a=

> --> > configurable value.  If there is going to be a need to configure =
a
> --> > value for this in most implementations, then we might as=20
> --> well say so
> --> > up front so that there is likely to be a standard MIB object that=

> --> > corresponds to this value.
> --> >=20
> --> > 	Clearly the simplest thing to do, therefore, is to set TTL to
> --> > the maximum possible value.  Simple, but probably not sane.
> -->=20
> --> Why is/should it be different than in an IP network?
> -->=20
> --> Joe
> -->=20
> -->=20

--=20
----------------------------------------
Joe Touch
Sr. Network Engineer, USAF TSAT Space Segment

--------------enigB5E0093D85301953B4916C33
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enigB5E0093D85301953B4916C33--

From: "Gray, Eric" <[email-masked]>
To: [email-masked], "Sanjay Sane (sanjays)" <[email-masked]>
Date: Mon, 6 Nov 2006 17:45:04 -0500 
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 15241

Pierre,

	The "?loop problem" is apparently an issue with some devices where
reasonable forwarding behavior limitations have been "optimized out."  A
better way to handle the ?loop problem with RBridges is not to optimize
out the behavior that prevents it - i.e. - a prohibition against emitting
a frame on the same interface on which it was received.

	To be clear, at either the last IETF meeting, or the one just before
that one, it was made fairly clear that the ?loop problem occurs when a
device sends a PDU out of the same interface on which it was received. In 
comparison with simply dropping such a PDU, this behavior is pathological
- particularly in the case of L2 forwarding generally.

	I am not saying that we do not need ordered FIB for loop prevention
generally, but we should not need it for the ?loop problem.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Pierre Francois
--> Sent: Monday, November 06, 2006 5:20 PM
--> To: Sanjay Sane (sanjays)
--> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
--> Subject: Re: [rbridge] Traffic storms
--> 
--> 
--> Sanjay,
--> 
--> Sanjay Sane (sanjays) wrote:
--> > Pierre,
--> >
--> > After reading through this paper, it seems the oFIB 
--> mechanism is suited
--> > towards unicast traffic, or a single-destination traffic. 
--> >
--> > In TRILL, if the plan is to protect the traffic storms, we *must*
--> > protect the transient loops in the "trees" that are built to carry
--> > unknowns/floods, multicast as well as unicast. Such 
--> traffic is targetted
--> > towards multiple destination, in fact, a tree extends to all the
--> > rbridges. 
--> >
--> > After thinking a bit, if we think of extending the 
--> mechanisms in the
--> > paper to cover "trees", we may have to delay the FIB 
--> ordering on all the
--> > links that are part of the tree on any given rbridge. 
--> This could be very
--> > inefficient. Do you think the oFIB mechanism would be 
--> suitable for such
--> > trees?
--> >   
--> 
--> Applying an "oFIB-like" solution for multicast traffic is 
--> something we 
--> are working on.
--> So, you can make ofib suitable for multicast trees, but we 
--> intend to 
--> modify it for efficiency purposes.
--> btw, you already face the ?loop problem for unicast 
--> traffic, and there 
--> oFIB can be applied as-is by rbridges..
--> 
--> Pierre.
--> > -Sanjay 
--> >
--> >  
--> >
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]] On
--> > Behalf Of Pierre Francois
--> > Sent: Friday, November 03, 2006 5:10 PM
--> > To: Silvano Gai
--> > Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
--> > Subject: Re: [rbridge] Traffic storms
--> >
--> >
--> > Silvano,
--> >
--> > See
--> > 
--> http://www.ietf.org/internet-drafts/draft-francois-ordered-f
--> ib-02.txt,
--> > for a loop avoidance mechanism for IS-IS/OSPF.
--> >
--> > See you in SD,
--> >
--> > Pierre.
--> >
--> >
--> >
--> > On Fri, 3 Nov 2006, Silvano Gai wrote:
--> >
--> >   
--> >> Eric,
--> >>
--> >> Also I suggest that people that have solved the problem 
--> of having a 
--> >> loop free topology using ISIS, submit proposasl so that 
--> we can compare
--> >>     
--> > them.
--> >   
--> >> Unfortunately I don't have one.
--> >>
--> >>
--> >>
--> >> -- Silvano
--> >>
--> >>
--> >>
--> >> ________________________________
--> >>
--> >> From: [email-masked] 
--> [mailto:[email-masked]] 
--> >> On Behalf Of Gray, Eric
--> >> Sent: Friday, November 03, 2006 11:54 AM
--> >> To: Gideon Kaempfer; Radia Perlman
--> >> Cc: [email-masked]
--> >> Subject: Re: [rbridge] Traffic storms
--> >>
--> >>
--> >>
--> >> Gideon,
--> >>
--> >>
--> >>
--> >>     "Drop BPDUs" is not (exactly) the same as ignore 
--> them.  We use the
--> >>     
--> >
--> >   
--> >> term
--> >>
--> >> as short-hand for the one of three options we considered 
--> for handling
--> >> BPDUs:
--> >>
--> >>
--> >>
--> >>     Drop (do not participate actively in STP, and do not 
--> pass BPDUs 
--> >> through),
--> >>
--> >>     Transparent (pass BPDUs through - potentially 
--> altering them in 
--> >> some way),
--> >>
--> >>     Participate (have each RBridge participate in STP as 
--> if it were a 
--> >> bridge).
--> >>
--> >>
--> >>
--> >> Hence, when we say "Drop BPDUs" we are not saying that 
--> we cannot look
--> >>
--> >> at them, we are just saying that we're not doing one of 
--> the other two 
--> >> choices.
--> >>
--> >>
--> >>
--> >> --
--> >>
--> >> Eric
--> >>
--> >>
--> >>
--> >>
--> >> ________________________________
--> >>
--> >>
--> >> 	From: [email-masked]
--> >> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
--> >> 	Sent: Friday, November 03, 2006 1:40 AM
--> >> 	To: Radia Perlman
--> >> 	Cc: [email-masked]
--> >> 	Subject: Re: [rbridge] Traffic storms
--> >>
--> >> 	Radia,
--> >>
--> >> 	Wouldn't this create a link between TRILL and STP we are trying
--> >>     
--> > to 
--> >   
--> >> avoid?
--> >>
--> >> 	Relying on the fact that a LAN segment has some kind of unique 
--> >> identifier (such as the root bridge ID) seems like a 
--> very practical 
--> >> solution to me, but strongly reliant on the fact that 
--> the Rbridges 
--> >> actually process BPDUs. I thought they were just meant to discard
--> >>     
--> > them.
--> >   
--> >> Is this acceptable?
--> >>
--> >> 	Regrads,
--> >>
--> >> 	 Gidi
--> >>
--> >>
--> >>
--> >> 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
--> >>
--> >> 	The simplest way to put it, I think, is that in certain
--> >>     
--> > transitory
--> >   
--> >> 	situations there might be two
--> >> 	RBridges that both think they are Designated RBridge, and that
--> >>     
--> > is 
--> >   
--> >> bad,
--> >> 	but should stop
--> >> 	as soon as a single Hello is received by the RBridge who should
--> >>     
--> > not 
--> >   
--> >> be
--> >> 	Designated.
--> >>
--> >> 	I think PIM has similar transitory situations that can occur,
--> >>     
--> > and
--> >   
--> >> 	bridges can also have (hopefully
--> >> 	temporary) problems if a repeater came up and merged two LANs. I
--> >>     
--> >
--> >   
--> >> think
--> >> 	such things are
--> >> 	annoying but not fatal. But I think it's possible we can with
--> >>     
--> > little
--> >   
--> >> 	effort avoid this problem.
--> >>
--> >> 	However, with RBridges, because the bridge spanning tree
--> >>     
--> > algorithm
--> >   
--> >> 	elects a Root, there's
--> >> 	really a way of uniquely identifying a LAN (where "LAN" is a
--> >>     
--> > bunch of
--> >   
--> >> 	links connected with
--> >> 	bridges). The unique identifier is the root bridge.
--> >>
--> >> 	When the B1-B2 link is down, RB1 and RB2 will see the topology
--> >>     
--> > as two
--> >   
--> >> 	separate links, and each
--> >> 	one will have a distinct spanning tree Root bridge (RB1 will see
--> >>     
--> > B1, 
--> >   
--> >> and
--> >> 	RB2 will see B2 as the root).
--> >>
--> >> 	When the B1-B2 link comes up, the bridges will first merge the
--> >>     
--> > two
--> >   
--> >> 	links, and either RB1 or RB2 will
--> >> 	see that the bridge spanning tree root has changed. This will be
--> >> 	discovered before B1 and B2 forward
--> >> 	traffic across the link because of the bridge forwarding delay.
--> >> 	If B1 has better priority as bridge spanning tree root than B2,
--> >>     
--> > then 
--> >   
--> >> RB1
--> >> 	will not notice anything
--> >> 	different when the B1-B2 link comes up. But RB2 will notice
--> >> 	something different; the spanning tree root has changed
--> >>     
--> > identities 
--> >   
--> >> from
--> >> 	"B2" to "B1".
--> >>
--> >> 	Given this, RB2 could temporarily stop forwarding to or from the
--> >>     
--> > link
--> >   
--> >> 	when the Root bridge
--> >> 	changes identities, though it should definitely immediately send
--> >>     
--> >
--> >   
--> >> IS-IS
--> >> 	Hellos (either RB1 or RB2 will
--> >> 	be elected Designated Router in the IS-IS election for that
--> >>     
--> > link). If
--> >   
--> >> 	RB2 has better prioirty for
--> >> 	root, the RB1 will immediately stop forwarding to or from the
--> >>     
--> > link 
--> >   
--> >> when
--> >> 	it sees the Hello from RB2.
--> >> 	If RB2 has better priority in the IS-IS election, then RB1
--> >>     
--> > should
--> >   
--> >> 	immediately send an IS-IS Hello
--> >> 	when it sees a Hello from a new RBridge on the link.
--> >>
--> >> 	So I think this is not a big deal, and that if we are worried,
--> >>     
--> > we can
--> >   
--> >> 	specify that an RBridge should
--> >> 	stop acting like the Designated RBridge for a few seconds after
--> >>     
--> > the
--> >   
--> >> 	identity of the Root in the spanning
--> >> 	tree algorithm changes.
--> >>
--> >> 	Or we could be even fancier and have each RBridge announce in
--> >>     
--> > its 
--> >   
--> >> IS-IS
--> >> 	Hellos which LAN IDs it
--> >> 	is Designated for, where a LAN ID is the MAC address of the Root
--> >>     
--> >
--> >   
--> >> bridge.
--> >> 	So RB1 continue
--> >> 	forwarding if the identity changes from B1 to B2 provided no
--> >>     
--> > other
--> >   
--> >> 	RBridge has claimed to be connected
--> >> 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
--> >>     
--> > must 
--> >   
--> >> stop
--> >> 	forwarding for enough time
--> >> 	for the IS-IS election to sort itself out and choose a
--> >>     
--> > Designated 
--> >   
--> >> RBridge.
--> >>
--> >> 	Radia
--> >>
--> >>
--> >>
--> >>
--> >>
--> >>
--> >> 	Gideon Kaempfer wrote:
--> >>
--> >> 	>Following mention by Silvano of broadcast and multicast storms
--> >>     
--> > (and 
--> >   
--> >> the need
--> >> 	>to protect against them), I played around with different
--> >>     
--> > scenarios 
--> >   
--> >> and came
--> >> 	>upon one I would appreciate your comments on (in the hope I am 
--> >> pointing out
--> >> 	>a non-existent issue with TRILL). I believe a broadcast and
--> >>     
--> > even a 
--> >   
--> >> unicast
--> >> 	>storm could be created as the result of a loop that isn't
--> >>     
--> > protected 
--> >   
--> >> by TTL
--> >> 	>nor by STP in the case of a link connecting two separate LAN 
--> >> segments coming
--> >> 	>to life.
--> >> 	>
--> >> 	>- RB1 ---- RB2 -
--> >> 	>   |        |
--> >> 	>-  B1 --x-- B2 -
--> >> 	>   |        |
--> >> 	>   H1       H2
--> >> 	>
--> >> 	>1. The network (segment) involved consists of two Rbridges
--> >>     
--> > (RB1, 
--> >   
--> >> RB2), two
--> >> 	>bridges (B1, B2) and two hosts (H1, H2). They are physically 
--> >> connected as
--> >> 	>depicted.
--> >> 	>2. State A: the direct link between B1 and B2 is down. B1 and
--> >> B2 find
--> >> 	>themselves on different LAN segments and hence different
--> >>     
--> > spanning 
--> >   
--> >> trees. RB1
--> >> 	>and RB2 are both designated Rbridges (each for the segment of
--> >>     
--> > the
--> >   
--> >> 	>corresponding bridge).
--> >> 	>3. State B: the direct link between B1 and B2 goes up (someone 
--> >> connects a
--> >> 	>cable). B1 and B2 discover each other and establish a common 
--> >> spanning tree.
--> >> 	>RB1 and RB2 both find themselves attached to the same LAN
--> >>     
--> > segment 
--> >   
--> >> and hence
--> >> 	>RB1 (without loss of generality) will eventually become the 
--> >> designated
--> >> 	>Rbridge for it.
--> >> 	>4. Just before RB1 and RB2 identify that they are both on the
--> >>     
--> > same 
--> >   
--> >> segment
--> >> 	>and RB2 stops functioning as a designated Rbridge the following
--> >>     
--> >
--> >   
--> >> scenario
--> >> 	>seems possible:
--> >> 	>  a. H1 sends a broadcast frame.
--> >> 	>  b. B1 receives it and forwards to RB1 and B2.
--> >> 	>  c. RB1 (encapsulates and) forwards to RB2.
--> >> 	>  d. B2 forwards to RB2 and H2.
--> >> 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
--> >>     
--> > to 
--> >   
--> >> RB1).
--> >> 	>  f. (RB1 forwards to B1.)
--> >> 	>  g. B2 forwards (again) to H2 and to B1.
--> >> 	>  h. B1 forwards to H1 (see remark below regarding filtering
--> >>     
--> > table
--> >   
--> >> 	>contamination) and to RB1.
--> >> 	>  i. Etcetera etcetera.
--> >> 	>5. A broadcast storm is born, created by a loop that is not 
--> >> protected by TTL
--> >> 	>(due to the fact that forwarding between the Rbridges is only
--> >>     
--> > across 
--> >   
--> >> a
--> >> 	>single hop) nor by STP (due to the fact that Rbridges do not 
--> >> participate in
--> >> 	>STP).
--> >> 	>6. If forwarding commences at the hardware level and no
--> >>     
--> > broadcast 
--> >   
--> >> rate
--> >> 	>limiting is in place, the storm may cause severe damage in a
--> >>     
--> > very 
--> >   
--> >> short time
--> >> 	>(note that replicated frames are sent to H1 and H2 (or any
--> >>     
--> > network 
--> >   
--> >> they
--> >> 	>could represent).
--> >> 	>7. Another unfortunate effect of this storm is that B1 and B2
--> >>     
--> > no 
--> >   
--> >> longer know
--> >> 	>where H1 is located (due to the contamination of their
--> >>     
--> > filtering 
--> >   
--> >> tables by a
--> >> 	>frame from H1 that arrives from the wrong direction (and in
--> >>     
--> > fact 
--> >   
--> >> from
--> >> 	>multiple directions). As a result, a possible unicast frame
--> >>     
--> > from H2 
--> >   
--> >> to H1
--> >> 	>will just join the storm over the loop at least in one
--> >>     
--> > direction 
--> >   
--> >> (RB2 will
--> >> 	>forward it to RB1) but will not arrive at H1...
--> >> 	>
--> >> 	>One possible solution could be for RB2 to identify the fact
--> >>     
--> > that it 
--> >   
--> >> is
--> >> 	>receiving a frame from a host with a MAC address that is
--> >>     
--> > associated 
--> >   
--> >> with a
--> >> 	>segment it thought it isn't connected to. Hence, it may trigger
--> >>     
--> > an 
--> >   
--> >> immediate
--> >> 	>neighbor discovery / designated Rbridge election. However,
--> >>     
--> > because 
--> >   
--> >> Rbridges
--> >> 	>should allow host mobility, this frame may need to be forwarded
--> >>     
--> > (and 
--> >   
--> >> hence
--> >> 	>the storm commences).
--> >> 	>
--> >> 	>As mentioned above, any comments are welcome.
--> >> 	>  Gideon Kaempfer
--> >> 	>
--> >> 	>_______________________________________________
--> >> 	>rbridge mailing list
--> >> 	>[email-masked]
--> >> 	> http://mailman.postel.org/mailman/listinfo/rbridge
--> >> <http://mailman.postel.org/mailman/listinfo/rbridge>
--> >> 	>
--> >> 	>
--> >>
--> >> 	_______________________________________________
--> >> 	rbridge mailing list
--> >> 	[email-masked]
--> >> 	http://mailman.postel.org/mailman/listinfo/rbridge
--> >>
--> >>
--> >>
--> >>
--> >>     
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> >
--> >   
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Joe Touch <[email-masked]>, "Gray, Eric" <[email-masked]>
Date: Mon, 6 Nov 2006 17:41:34 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 1788

Joe,

	For the unicast case, it need not be.  Reasons why it should
be different in the flooded, broadcast and multicast case are - I
believe - fairly obvious, since these behaviors are ditinctly not
the same in these cases.

	Also, even in the IP case, there has been discussion in the
past about the advantages of TTL reduction for tunneled traffic.

--
Eric 

--> -----Original Message-----
--> From: Joe Touch [mailto:[email-masked]] 
--> Sent: Monday, November 06, 2006 5:36 PM
--> To: Gray, Eric
--> Cc: Eastlake III Donald-LDE008; [email-masked]
--> Subject: Re: [rbridge] A thought about TTLs
--> 
--> 
--> 
--> Gray, Eric wrote:
--> > Joe,
--> > 
--> > 	The protocol specification cannot be silent on the setting of
--> > a value for TTL.  For one thing, any value less than the 
--> max, should
--> > be compared with the expected number of hops as a sanity 
--> check - one
--> > way or another (meaning if the boxes don't do it, the 
--> user will have
--> > to do it themselves).
--> > 
--> > 	For example, if an implementer decided that 16 hops was the 
--> > most they could realistically expect to see in an RBridge 
--> CRED, they
--> > might set it to 16.  If it subsequently turns out that a 
--> network is 
--> > larger than they expected, I sincerely hope that they made this a
--> > configurable value.  If there is going to be a need to configure a
--> > value for this in most implementations, then we might as 
--> well say so
--> > up front so that there is likely to be a standard MIB object that
--> > corresponds to this value.
--> > 
--> > 	Clearly the simplest thing to do, therefore, is to set TTL to
--> > the maximum possible value.  Simple, but probably not sane.
--> 
--> Why is/should it be different than in an IP network?
--> 
--> Joe
--> 
--> 

Date: Mon, 06 Nov 2006 14:36:14 -0800
From: Joe Touch <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 1746

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig567DB5B99A5C5175F1F3FF50
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Gray, Eric wrote:
> Joe,
>=20
> 	The protocol specification cannot be silent on the setting of
> a value for TTL.  For one thing, any value less than the max, should
> be compared with the expected number of hops as a sanity check - one
> way or another (meaning if the boxes don't do it, the user will have
> to do it themselves).
>=20
> 	For example, if an implementer decided that 16 hops was the=20
> most they could realistically expect to see in an RBridge CRED, they
> might set it to 16.  If it subsequently turns out that a network is=20
> larger than they expected, I sincerely hope that they made this a
> configurable value.  If there is going to be a need to configure a
> value for this in most implementations, then we might as well say so
> up front so that there is likely to be a standard MIB object that
> corresponds to this value.
>=20
> 	Clearly the simplest thing to do, therefore, is to set TTL to
> the maximum possible value.  Simple, but probably not sane.

Why is/should it be different than in an IP network?

Joe

--------------enig567DB5B99A5C5175F1F3FF50
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enig567DB5B99A5C5175F1F3FF50--

From: "Gray, Eric" <[email-masked]>
To: Joe Touch <[email-masked]>
Date: Mon, 6 Nov 2006 17:30:01 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 3777

Joe,

	The protocol specification cannot be silent on the setting of
a value for TTL.  For one thing, any value less than the max, should
be compared with the expected number of hops as a sanity check - one
way or another (meaning if the boxes don't do it, the user will have
to do it themselves).

	For example, if an implementer decided that 16 hops was the 
most they could realistically expect to see in an RBridge CRED, they
might set it to 16.  If it subsequently turns out that a network is 
larger than they expected, I sincerely hope that they made this a
configurable value.  If there is going to be a need to configure a
value for this in most implementations, then we might as well say so
up front so that there is likely to be a standard MIB object that
corresponds to this value.

	Clearly the simplest thing to do, therefore, is to set TTL to
the maximum possible value.  Simple, but probably not sane.

--
Eric

--> -----Original Message-----
--> From: Joe Touch [mailto:[email-masked]] 
--> Sent: Monday, November 06, 2006 5:12 PM
--> To: Gray, Eric
--> Cc: Eastlake III Donald-LDE008; [email-masked]
--> Subject: Re: [rbridge] A thought about TTLs
--> 
--> That argument holds as well for packets in the Internet. 
--> There are two
--> cases:
--> 
--> 	1- loops are common, and we want to reduce the looped traffic
--> 
--> 	2- loops are not common, and we want to reduce effort in
--> 	predicting the expected TTL
--> 
--> I sincerely hope that 2 is what we're designing for.
--> 
--> As to 1, if a vendor wants that as value added, that's 
--> fine. But I would
--> not encourage the WG to endorse that approach as an 
--> optimization, since
--> if (when) it fails it has more substantial consequences than longer
--> loops, since legitimate traffic will be silently dropped even when
--> routing is correct. If a vendor wants to take that risk, 
--> that's fine,
--> but the WG shouldn't engineer a spec for it, IMO.
--> 
--> Joe
--> 
--> Gray, Eric wrote:
--> > Joe,
--> > 
--> > 	I tend to agree with Donald's comments (which are not 
--> included here,
--> > because of the difficulty I have in responding to your 
--> mail generally).
--> > 
--> > 	To your point, it might be possible for RBridges to use 
--> some factor
--> > (such as +2 hops, or *2 hops) over the actual expected 
--> tunnel length, but
--> > it is unreasonable to use any number much larger than 
--> that for the purpose
--> > preserving frames that are taking some tortuous, but not 
--> looping, path in
--> > a changing network.
--> > 
--> > --
--> > Eric
--> > 
--> > Earlier, you said:
--> > --> The whole point of a TTL is that things could change 
--> en-route, which
--> > --> means that a rbridge might want to scope the TTL 
--> down, but this could
--> > --> end up dropping a packet that would have had a 
--> legitimate, nonlooping
--> > --> path that's unexpectedly longer later.
--> > --> 
--> > --> IMO, let the TTL be what it is - loop prevention for 
--> unicast, and
--> > --> diameter scope for broad/multicast. Don't try to 
--> overthink it beyond
--> > that.
--> > --> 
--> > --> Joe
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked] 
--> > --> [mailto:[email-masked]] On Behalf Of Joe Touch
--> > --> Sent: Monday, November 06, 2006 1:32 AM
--> > --> To: Eastlake III Donald-LDE008
--> > --> Cc: [email-masked]
--> > --> Subject: Re: [rbridge] A thought about TTLs
--> > --> 
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > --> 
--> 
--> -- 
--> ----------------------------------------
--> Joe Touch
--> Sr. Network Engineer, USAF TSAT Space Segment
--> 
--> 

Date: Mon, 06 Nov 2006 14:19:35 -0800
From: Pierre Francois <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Reply-To: [email-masked]
Status: RO
Content-Length: 11731

Sanjay,

Sanjay Sane (sanjays) wrote:
> Pierre,
>
> After reading through this paper, it seems the oFIB mechanism is suited
> towards unicast traffic, or a single-destination traffic. 
>
> In TRILL, if the plan is to protect the traffic storms, we *must*
> protect the transient loops in the "trees" that are built to carry
> unknowns/floods, multicast as well as unicast. Such traffic is targetted
> towards multiple destination, in fact, a tree extends to all the
> rbridges. 
>
> After thinking a bit, if we think of extending the mechanisms in the
> paper to cover "trees", we may have to delay the FIB ordering on all the
> links that are part of the tree on any given rbridge. This could be very
> inefficient. Do you think the oFIB mechanism would be suitable for such
> trees?
>   

Applying an "oFIB-like" solution for multicast traffic is something we 
are working on.
So, you can make ofib suitable for multicast trees, but we intend to 
modify it for efficiency purposes.
btw, you already face the ?loop problem for unicast traffic, and there 
oFIB can be applied as-is by rbridges..

Pierre.
> -Sanjay 
>
>  
>
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Pierre Francois
> Sent: Friday, November 03, 2006 5:10 PM
> To: Silvano Gai
> Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
> Subject: Re: [rbridge] Traffic storms
>
>
> Silvano,
>
> See
> http://www.ietf.org/internet-drafts/draft-francois-ordered-fib-02.txt,
> for a loop avoidance mechanism for IS-IS/OSPF.
>
> See you in SD,
>
> Pierre.
>
>
>
> On Fri, 3 Nov 2006, Silvano Gai wrote:
>
>   
>> Eric,
>>
>> Also I suggest that people that have solved the problem of having a 
>> loop free topology using ISIS, submit proposasl so that we can compare
>>     
> them.
>   
>> Unfortunately I don't have one.
>>
>>
>>
>> -- Silvano
>>
>>
>>
>> ________________________________
>>
>> From: [email-masked] [mailto:[email-masked]] 
>> On Behalf Of Gray, Eric
>> Sent: Friday, November 03, 2006 11:54 AM
>> To: Gideon Kaempfer; Radia Perlman
>> Cc: [email-masked]
>> Subject: Re: [rbridge] Traffic storms
>>
>>
>>
>> Gideon,
>>
>>
>>
>>     "Drop BPDUs" is not (exactly) the same as ignore them.  We use the
>>     
>
>   
>> term
>>
>> as short-hand for the one of three options we considered for handling
>> BPDUs:
>>
>>
>>
>>     Drop (do not participate actively in STP, and do not pass BPDUs 
>> through),
>>
>>     Transparent (pass BPDUs through - potentially altering them in 
>> some way),
>>
>>     Participate (have each RBridge participate in STP as if it were a 
>> bridge).
>>
>>
>>
>> Hence, when we say "Drop BPDUs" we are not saying that we cannot look
>>
>> at them, we are just saying that we're not doing one of the other two 
>> choices.
>>
>>
>>
>> --
>>
>> Eric
>>
>>
>>
>>
>> ________________________________
>>
>>
>> 	From: [email-masked]
>> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
>> 	Sent: Friday, November 03, 2006 1:40 AM
>> 	To: Radia Perlman
>> 	Cc: [email-masked]
>> 	Subject: Re: [rbridge] Traffic storms
>>
>> 	Radia,
>>
>> 	Wouldn't this create a link between TRILL and STP we are trying
>>     
> to 
>   
>> avoid?
>>
>> 	Relying on the fact that a LAN segment has some kind of unique 
>> identifier (such as the root bridge ID) seems like a very practical 
>> solution to me, but strongly reliant on the fact that the Rbridges 
>> actually process BPDUs. I thought they were just meant to discard
>>     
> them.
>   
>> Is this acceptable?
>>
>> 	Regrads,
>>
>> 	 Gidi
>>
>>
>>
>> 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
>>
>> 	The simplest way to put it, I think, is that in certain
>>     
> transitory
>   
>> 	situations there might be two
>> 	RBridges that both think they are Designated RBridge, and that
>>     
> is 
>   
>> bad,
>> 	but should stop
>> 	as soon as a single Hello is received by the RBridge who should
>>     
> not 
>   
>> be
>> 	Designated.
>>
>> 	I think PIM has similar transitory situations that can occur,
>>     
> and
>   
>> 	bridges can also have (hopefully
>> 	temporary) problems if a repeater came up and merged two LANs. I
>>     
>
>   
>> think
>> 	such things are
>> 	annoying but not fatal. But I think it's possible we can with
>>     
> little
>   
>> 	effort avoid this problem.
>>
>> 	However, with RBridges, because the bridge spanning tree
>>     
> algorithm
>   
>> 	elects a Root, there's
>> 	really a way of uniquely identifying a LAN (where "LAN" is a
>>     
> bunch of
>   
>> 	links connected with
>> 	bridges). The unique identifier is the root bridge.
>>
>> 	When the B1-B2 link is down, RB1 and RB2 will see the topology
>>     
> as two
>   
>> 	separate links, and each
>> 	one will have a distinct spanning tree Root bridge (RB1 will see
>>     
> B1, 
>   
>> and
>> 	RB2 will see B2 as the root).
>>
>> 	When the B1-B2 link comes up, the bridges will first merge the
>>     
> two
>   
>> 	links, and either RB1 or RB2 will
>> 	see that the bridge spanning tree root has changed. This will be
>> 	discovered before B1 and B2 forward
>> 	traffic across the link because of the bridge forwarding delay.
>> 	If B1 has better priority as bridge spanning tree root than B2,
>>     
> then 
>   
>> RB1
>> 	will not notice anything
>> 	different when the B1-B2 link comes up. But RB2 will notice
>> 	something different; the spanning tree root has changed
>>     
> identities 
>   
>> from
>> 	"B2" to "B1".
>>
>> 	Given this, RB2 could temporarily stop forwarding to or from the
>>     
> link
>   
>> 	when the Root bridge
>> 	changes identities, though it should definitely immediately send
>>     
>
>   
>> IS-IS
>> 	Hellos (either RB1 or RB2 will
>> 	be elected Designated Router in the IS-IS election for that
>>     
> link). If
>   
>> 	RB2 has better prioirty for
>> 	root, the RB1 will immediately stop forwarding to or from the
>>     
> link 
>   
>> when
>> 	it sees the Hello from RB2.
>> 	If RB2 has better priority in the IS-IS election, then RB1
>>     
> should
>   
>> 	immediately send an IS-IS Hello
>> 	when it sees a Hello from a new RBridge on the link.
>>
>> 	So I think this is not a big deal, and that if we are worried,
>>     
> we can
>   
>> 	specify that an RBridge should
>> 	stop acting like the Designated RBridge for a few seconds after
>>     
> the
>   
>> 	identity of the Root in the spanning
>> 	tree algorithm changes.
>>
>> 	Or we could be even fancier and have each RBridge announce in
>>     
> its 
>   
>> IS-IS
>> 	Hellos which LAN IDs it
>> 	is Designated for, where a LAN ID is the MAC address of the Root
>>     
>
>   
>> bridge.
>> 	So RB1 continue
>> 	forwarding if the identity changes from B1 to B2 provided no
>>     
> other
>   
>> 	RBridge has claimed to be connected
>> 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
>>     
> must 
>   
>> stop
>> 	forwarding for enough time
>> 	for the IS-IS election to sort itself out and choose a
>>     
> Designated 
>   
>> RBridge.
>>
>> 	Radia
>>
>>
>>
>>
>>
>>
>> 	Gideon Kaempfer wrote:
>>
>> 	>Following mention by Silvano of broadcast and multicast storms
>>     
> (and 
>   
>> the need
>> 	>to protect against them), I played around with different
>>     
> scenarios 
>   
>> and came
>> 	>upon one I would appreciate your comments on (in the hope I am 
>> pointing out
>> 	>a non-existent issue with TRILL). I believe a broadcast and
>>     
> even a 
>   
>> unicast
>> 	>storm could be created as the result of a loop that isn't
>>     
> protected 
>   
>> by TTL
>> 	>nor by STP in the case of a link connecting two separate LAN 
>> segments coming
>> 	>to life.
>> 	>
>> 	>- RB1 ---- RB2 -
>> 	>   |        |
>> 	>-  B1 --x-- B2 -
>> 	>   |        |
>> 	>   H1       H2
>> 	>
>> 	>1. The network (segment) involved consists of two Rbridges
>>     
> (RB1, 
>   
>> RB2), two
>> 	>bridges (B1, B2) and two hosts (H1, H2). They are physically 
>> connected as
>> 	>depicted.
>> 	>2. State A: the direct link between B1 and B2 is down. B1 and
>> B2 find
>> 	>themselves on different LAN segments and hence different
>>     
> spanning 
>   
>> trees. RB1
>> 	>and RB2 are both designated Rbridges (each for the segment of
>>     
> the
>   
>> 	>corresponding bridge).
>> 	>3. State B: the direct link between B1 and B2 goes up (someone 
>> connects a
>> 	>cable). B1 and B2 discover each other and establish a common 
>> spanning tree.
>> 	>RB1 and RB2 both find themselves attached to the same LAN
>>     
> segment 
>   
>> and hence
>> 	>RB1 (without loss of generality) will eventually become the 
>> designated
>> 	>Rbridge for it.
>> 	>4. Just before RB1 and RB2 identify that they are both on the
>>     
> same 
>   
>> segment
>> 	>and RB2 stops functioning as a designated Rbridge the following
>>     
>
>   
>> scenario
>> 	>seems possible:
>> 	>  a. H1 sends a broadcast frame.
>> 	>  b. B1 receives it and forwards to RB1 and B2.
>> 	>  c. RB1 (encapsulates and) forwards to RB2.
>> 	>  d. B2 forwards to RB2 and H2.
>> 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
>>     
> to 
>   
>> RB1).
>> 	>  f. (RB1 forwards to B1.)
>> 	>  g. B2 forwards (again) to H2 and to B1.
>> 	>  h. B1 forwards to H1 (see remark below regarding filtering
>>     
> table
>   
>> 	>contamination) and to RB1.
>> 	>  i. Etcetera etcetera.
>> 	>5. A broadcast storm is born, created by a loop that is not 
>> protected by TTL
>> 	>(due to the fact that forwarding between the Rbridges is only
>>     
> across 
>   
>> a
>> 	>single hop) nor by STP (due to the fact that Rbridges do not 
>> participate in
>> 	>STP).
>> 	>6. If forwarding commences at the hardware level and no
>>     
> broadcast 
>   
>> rate
>> 	>limiting is in place, the storm may cause severe damage in a
>>     
> very 
>   
>> short time
>> 	>(note that replicated frames are sent to H1 and H2 (or any
>>     
> network 
>   
>> they
>> 	>could represent).
>> 	>7. Another unfortunate effect of this storm is that B1 and B2
>>     
> no 
>   
>> longer know
>> 	>where H1 is located (due to the contamination of their
>>     
> filtering 
>   
>> tables by a
>> 	>frame from H1 that arrives from the wrong direction (and in
>>     
> fact 
>   
>> from
>> 	>multiple directions). As a result, a possible unicast frame
>>     
> from H2 
>   
>> to H1
>> 	>will just join the storm over the loop at least in one
>>     
> direction 
>   
>> (RB2 will
>> 	>forward it to RB1) but will not arrive at H1...
>> 	>
>> 	>One possible solution could be for RB2 to identify the fact
>>     
> that it 
>   
>> is
>> 	>receiving a frame from a host with a MAC address that is
>>     
> associated 
>   
>> with a
>> 	>segment it thought it isn't connected to. Hence, it may trigger
>>     
> an 
>   
>> immediate
>> 	>neighbor discovery / designated Rbridge election. However,
>>     
> because 
>   
>> Rbridges
>> 	>should allow host mobility, this frame may need to be forwarded
>>     
> (and 
>   
>> hence
>> 	>the storm commences).
>> 	>
>> 	>As mentioned above, any comments are welcome.
>> 	>  Gideon Kaempfer
>> 	>
>> 	>_______________________________________________
>> 	>rbridge mailing list
>> 	>[email-masked]
>> 	> http://mailman.postel.org/mailman/listinfo/rbridge
>> <http://mailman.postel.org/mailman/listinfo/rbridge>
>> 	>
>> 	>
>>
>> 	_______________________________________________
>> 	rbridge mailing list
>> 	[email-masked]
>> 	http://mailman.postel.org/mailman/listinfo/rbridge
>>
>>
>>
>>
>>     
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>
>   

Date: Mon, 06 Nov 2006 14:12:11 -0800
From: Joe Touch <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 3001

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig56C06190C21DA7EC625BD003
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

That argument holds as well for packets in the Internet. There are two
cases:

	1- loops are common, and we want to reduce the looped traffic

	2- loops are not common, and we want to reduce effort in
	predicting the expected TTL

I sincerely hope that 2 is what we're designing for.

As to 1, if a vendor wants that as value added, that's fine. But I would
not encourage the WG to endorse that approach as an optimization, since
if (when) it fails it has more substantial consequences than longer
loops, since legitimate traffic will be silently dropped even when
routing is correct. If a vendor wants to take that risk, that's fine,
but the WG shouldn't engineer a spec for it, IMO.

Joe

Gray, Eric wrote:
> Joe,
>=20
> 	I tend to agree with Donald's comments (which are not included here,
> because of the difficulty I have in responding to your mail generally).=

>=20
> 	To your point, it might be possible for RBridges to use some factor
> (such as +2 hops, or *2 hops) over the actual expected tunnel length, b=
ut
> it is unreasonable to use any number much larger than that for the purp=
ose
> preserving frames that are taking some tortuous, but not looping, path =
in
> a changing network.
>=20
> --
> Eric
>=20
> Earlier, you said:
> --> The whole point of a TTL is that things could change en-route, whic=
h
> --> means that a rbridge might want to scope the TTL down, but this cou=
ld
> --> end up dropping a packet that would have had a legitimate, nonloopi=
ng
> --> path that's unexpectedly longer later.
> -->=20
> --> IMO, let the TTL be what it is - loop prevention for unicast, and
> --> diameter scope for broad/multicast. Don't try to overthink it beyon=
d
> that.
> -->=20
> --> Joe
>=20
> --> -----Original Message-----
> --> From: [email-masked]=20
> --> [mailto:[email-masked]] On Behalf Of Joe Touch
> --> Sent: Monday, November 06, 2006 1:32 AM
> --> To: Eastlake III Donald-LDE008
> --> Cc: [email-masked]
> --> Subject: Re: [rbridge] A thought about TTLs
> -->=20
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> -->=20

--=20
----------------------------------------
Joe Touch
Sr. Network Engineer, USAF TSAT Space Segment

--------------enig56C06190C21DA7EC625BD003
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enig56C06190C21DA7EC625BD003--

From: "Saikat Ray" <[email-masked]>
To: <[email-masked]>
Date: Mon, 6 Nov 2006 14:44:15 -0500
Organization: University of Pennsylvania
Subject: Re: [rbridge] Should we optimize the common case?
Reply-To: [email-masked]
Status: RO
Content-Length: 1047

> Radia,
> 
> 	I think I agree with this and would go further to make two
> additional comments/observations:
> 
> 	1) Unless it is possible to determine absolutely what cases
>          exist where RBridges can know that the link between them
>          actually is p2p (as opposed to looks like it is p2p), it
>          is risky to leave this sort of behavior as an unspecified
>          option.

Isn't it simple to test whether an RBridge A can send a packet to RBridge B
using the Shim header alone? Each of the RBridges can try sending a few test
packets without outer header; a received packet would trigger an ACK, again
without an outer header. If an RBridge gets an ACK (or ACKs to a few such
packets), then it can mark that neighbor as "directly connected". If there
are non-RBridge devise in between, then they will simply drop those
"unrecognizable" packets. The only issue would be making sure that such
"unrecognizable" packets do not trigger any undesirable behavior (e.g., they
do not resemble any non-RBridge control packets).

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 11:33:07 -0800
From: "Wadekar, Manoj K" <[email-masked]>
To: "Silvano Gai" <[email-masked]>, "Gray, Eric" <[email-masked]>, "Larry Kreeger \(kreeger\)" <[email-masked]>, "Davide Bergamasco \(davide\)" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st Issue
Status: RO
Content-Length: 11268

Hi Eric,

	BCN has been defined to work on the data center networks with
short range networks (in meters, not kilometers). Network latency is
definitely significant factor in the analysis for BCN. 

	Current analysis showed stability of solution for networks with
control loop delay of < 1mS. (This includes delay at the end nodes,
links as well as switch forwarding delays). 

	We can discuss details of BCN protocol and any concerns you may
have tomorrow in SD. I will be happy to share due diligence done on BCN.

Thanks,
-Manoj
-----Original Message-----
From: Silvano Gai [mailto:[email-masked]] 
Sent: Sunday, November 05, 2006 10:33 AM
To: Gray, Eric; Larry Kreeger (kreeger); Wadekar, Manoj K; Davide
Bergamasco (davide)
Cc: [email-masked]
Subject: RE: [rbridge] Ingress Rbridge address and BCN - 1st Issue

Eric,

I am OK to have this discussion, I understand BCN at the system level,
but I am not a control theory guy or a congestion management geek.

Two engineers that know BCN very well and that can contribute to the
discussion are:
Manoj K Wadekar <[email-masked]> and
Davide Bergamasco <[email-masked]>
I'll recommend we include them in the discussion.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Sunday, November 05, 2006 10:25 AM
> To: Silvano Gai; Larry Kreeger (kreeger)
> Cc: [email-masked]
> Subject: RE: [rbridge] Ingress Rbridge address and BCN - 1st Issue
> 
> Silvano,
> 
> 	We should probably have some discussion - perhaps off line -
> about how BCN actually works.
> 
> 	For one thing, from what I've heard so far, I have some doubts
> about it working in real networks at all.  That might be addressed by
> taking the time to read the actual BCN specifications in detail and -
> if I were in  a position of having a lot of free time, or under some
> direct pressure from customers to support BCN - I would do that.  So
> far, I have heard that some people have some customers that want BCN
> support (whatever that actually means) and it is hard for me to drop
> something else on so thin a basis.
> 
> 	And it seems likely - based on what people are saying - that our
> taking the time to figure out how BCN "works" might be a waste of
time.
> 
> 	For one thing, your observation about the need for fast feedback
> mechanisms (that appear to be supported by protocol analysis that has
> been performed by someone at least) tends to argue that this technique
> was not designed with real networks in mind.
> 
> 	Delay is a big part of the nature of networks.  Hence realistic
> feedback mechanisms need not only to take into account the fact that
> delay is absolutely unavoidable, but they need to have "knobs" that
> can be adjusted to allow for the mechanism to adapt to different
delays
> in different networks.
> 
> 	The way I am hearing BCN described, it seems as if it has "hard"
> delay bounds and that is a problem - IMO - with the design of BCN.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Saturday, October 28, 2006 11:16 AM
> --> To: Gray, Eric; Larry Kreeger (kreeger)
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Ingress Rbridge address and BCN - 1st Issue
> -->
> --> Eric,
> -->
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Gray, Eric
> --> > Sent: Friday, October 27, 2006 3:20 PM
> --> > To: Larry Kreeger (kreeger)
> --> > Cc: [email-masked]
> --> > Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st
Issue
> --> >
> --> > Larry,
> --> >
> --> > 	A slower look up may be okay for exception processing.
> -->
> -->
> --> The BCN closed loop control algorithm requires timely
> --> replies done in
> --> HW. We can ask BCN experts which is the amount of delay that can
be
> --> tolerate, but if I remember correctly the stability
> --> analysis, it was not
> --> much.
> -->
> --> -- Silvano
> -->
> -->
> --> >
> --> > 	BCNs should be required far less often than frames are
being
> --> > forwarded.
> --> >
> --> > 	Having a transit RBridge "look inside [at?] the inner
MAC"
> --> > is not what is effectively happening - as I understand it - when
> --> > a "core RBridge" is generating a BCN.  BCN-capable core RBridges
> --> > would presumably copy the header information from some subset of
> --> > the frames on a minimally-congested link, strip the tunneling
> --> > encapsulation and originate a new frame containing a
Notification
> --> > (BCN) message.
> --> >
> --> > 	This must be a new frame, as opposed to a reflection of
the
> --> > original frame, so it is interesting that people assume this is
a
> --> > trivial operation in hardware in the first place.
> --> >
> --> > 	Since the BCN-capable RBridge has to "flip" the MAC SA
into
> --> > a MAC DA in a BCN anyway, it MUST look at that part of the frame
> --> > in every case before it can generate a BCN.
> --> >
> --> > 	In effect, the frame is (partially) copied, the copied
> --> > information is locally terminated and used to originate a new
> --> > message.  This message would then be sent - presumably using
> --> > the usual means for message origination - by encapsulating it
> --> > in RBridge tunnel encapsulation and forwarding it to (at least)
> --> > the ingress RBridge from which it was introduced.
> --> >
> --> > 	That is not nearly as much of a confusion of layers as
it
> --> > is to 1) assume that the frame is munged in hardware and turned
> --> > around and 2) normal processing of originated local messages is
> --> > bypassed in an attempt to optimize BCN sending at the cost of
> --> > including additional information in _every_ frame.
> --> >
> --> > 	Oh, and, apparently I can blame you for trying... :-)
> --> >
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: Larry Kreeger (kreeger) [mailto:[email-masked]]
> --> > --> Sent: Friday, October 27, 2006 5:26 PM
> --> > --> To: Gray, Eric
> --> > --> Cc: [email-masked]
> --> > --> Subject: RE: [rbridge] Ingress Rbridge address and
> --> BCN - 1st Issue
> --> > -->
> --> > --> Gray, Eric wrote on Friday, October 27, 2006 11:33 AM:
> --> > -->
> --> > --> > Larry,
> --> > --> >
> --> > --> > 	Separating these issues...
> --> > --> >
> --> > --> > -- [SNIP] --
> --> > --> > -->
> --> > --> > --> Please correct me if I incorrectly summarize the
above.
> --> > --> > -->
> --> > --> > --> 1) Scaling the number of fowarding entries in the
> --> > --> core is not a
> --> > --> > --> problem that TRILL needs to solve.
> --> > --> >
> --> > --> > While this is a possible intrepretation, it is not
> --> an accurate
> --> > --> > characterization of what I said.
> --> > --> >
> --> > --> > I'll try again, starting with what you have said.
> --> > --> >
> --> > --> > Scaling of the number of forwarding entries in the
> --> core is not a
> --> > --> > problem that the TRILL working group has decided to solve.
> --> > --> >
> --> > --> > Hence, you might conclude that the TRILL working group
> --> > --> has passively
> --> > --> > decided that this is not a problem that TRILL needs
> --> to solve.
> --> > --> >
> --> > --> > One reason why this might be the case is that people
> --> > --> could not decide
> --> > --> > the "by how much" question.
> --> > --> >
> --> > --> > Never-the-less, an implicit requirement that the solution
> --> > --> should not
> --> > --> > prevent more scalable implementations, enables people who
> --> > --> might not
> --> > --> > be able to agree in public (as to what factor of increased
> --> > --> > scalability should apply) to produce and deploy solutions
> --> > --> that are in
> --> > --> > fact more scalable, by at least some amount.
> --> > --> >
> --> > --> > --> 2) Link utilization is a problem and TRILL needs to
> --> > --> be concerned
> --> > --> > --> with it.
> --> > --> >
> --> > --> > Certainly.
> --> > --> >
> --> > --> > -->
> --> > --> > --> If this is correct, it leads me to believe that you
> --> > --> would advocate
> --> > --> > --> for
> --> > --> > --> 1) Remove the destination RBridge from the shim, and
> --> > --> just lookup
> --> > --> > the
> --> > --> > --> destination MAC directly
> --> > --> >
> --> > --> > How do you arrive at this conclusion?  There are
> --> > --> scenarios where this
> --> > --> > might be done, but clearly the use of a smaller field for
> --> > --> a look-up
> --> > --> > is traditionally viewed as likely to be quicker.
> --> > -->
> --> > --> I appologize for trying to put words in you mouth, but I am
> --> > --> trying to
> --> > --> understand what you are arguing for...and after
> --> reading the above,
> --> I
> --> > --> still don't know.  Maybe it is because I am confusing
> --> what you are
> --> > --> personally saying versus what you are echoing from others
> --> > --> in the group.
> --> > --> Do you believe we need the RBridge Id in the shim or not?
> --> > --> If you do,
> --> > --> then why?  For a quicker lookup?  If so, then why would a
> --> > --> slower lookup
> --> > --> to generate the source RBridge for BCN be acceptable?
> --> > -->
> --> > --> >
> --> > --> > --> 2) Eliminate the need for the outer MAC header
> --> between two
> --> > --> > RBridges
> --> > --> > --> if the link is point to point (quite likely in
> --> my opinion).
> --> > --> >
> --> > --> > Ultimately, point-to-point is very likely, but we have to
> --> > --> deal with
> --> > --> > the step-by-step deployment scenarios.
> --> > --> >
> --> > --> > In any case, I do not advocate special-casing
> --> > --> encapsulation based on
> --> > --> > link types in general - beyond that already required by
> --> > --> the specific
> --> > --> > link.  As I thought would be obvious by now, I advocate
> --> functional
> --> > --> > separation - which works better if you don't build in a
> --> > --> lot of layer
> --> > --> > dependencies.
> --> > -->
> --> > --> I agree with you about building in a lot of layer
> --> > --> dependencies.  Having
> --> > --> transit RBridges look inside the inner MAC seems like a
> --> > --> layer dependency
> --> > --> to me.  Not encapsulating with an extra 14 to 18 bytes on
> --> > --> point to point
> --> > --> link seems like it would be well worth it if you are
> --> > --> concerned with link
> --> > --> overhead.  I would gladly trade 14/18 bytes of overhead for
> --> > --> another 2
> --> > --> bytes of source RBridge which will help with BCN as well as
> --> > --> help with
> --> > --> network troubleshooting.
> --> > -->
> --> > --> >
> --> > --> > -->
> --> > --> > --> Again, I apologize for not keeping up with the latest
> --> > --> discussions,
> --> > --> > --> but have these ideas been discussed already?
> --> If so, could
> --> you
> --> > --> > --> summarize the outcome?
> --> > --> >
> --> > --> > This is not a reasonable request.
> --> > -->
> --> > --> Oh well, cant' blame me for trying can you? ;-)
> --> > -->
> --> > --> >
> --> > --> > -- [SNIP] --
> --> > -->
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> -->

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 11:18:56 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: "Pierre Francois" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 10167

Pierre,

After reading through this paper, it seems the oFIB mechanism is suited
towards unicast traffic, or a single-destination traffic. 

In TRILL, if the plan is to protect the traffic storms, we *must*
protect the transient loops in the "trees" that are built to carry
unknowns/floods, multicast as well as unicast. Such traffic is targetted
towards multiple destination, in fact, a tree extends to all the
rbridges. 

After thinking a bit, if we think of extending the mechanisms in the
paper to cover "trees", we may have to delay the FIB ordering on all the
links that are part of the tree on any given rbridge. This could be very
inefficient. Do you think the oFIB mechanism would be suitable for such
trees? 

-Sanjay 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Pierre Francois
Sent: Friday, November 03, 2006 5:10 PM
To: Silvano Gai
Cc: [email-masked]; Gideon Kaempfer; Radia Perlman
Subject: Re: [rbridge] Traffic storms

Silvano,

See
http://www.ietf.org/internet-drafts/draft-francois-ordered-fib-02.txt,
for a loop avoidance mechanism for IS-IS/OSPF.

See you in SD,

Pierre.

On Fri, 3 Nov 2006, Silvano Gai wrote:

> Eric,
>
> Also I suggest that people that have solved the problem of having a 
> loop free topology using ISIS, submit proposasl so that we can compare
them.
> Unfortunately I don't have one.
>
>
>
> -- Silvano
>
>
>
> ________________________________
>
> From: [email-masked] [mailto:[email-masked]] 
> On Behalf Of Gray, Eric
> Sent: Friday, November 03, 2006 11:54 AM
> To: Gideon Kaempfer; Radia Perlman
> Cc: [email-masked]
> Subject: Re: [rbridge] Traffic storms
>
>
>
> Gideon,
>
>
>
>     "Drop BPDUs" is not (exactly) the same as ignore them.  We use the

> term
>
> as short-hand for the one of three options we considered for handling
> BPDUs:
>
>
>
>     Drop (do not participate actively in STP, and do not pass BPDUs 
> through),
>
>     Transparent (pass BPDUs through - potentially altering them in 
> some way),
>
>     Participate (have each RBridge participate in STP as if it were a 
> bridge).
>
>
>
> Hence, when we say "Drop BPDUs" we are not saying that we cannot look
>
> at them, we are just saying that we're not doing one of the other two 
> choices.
>
>
>
> --
>
> Eric
>
>
>
>
> ________________________________
>
>
> 	From: [email-masked]
> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
> 	Sent: Friday, November 03, 2006 1:40 AM
> 	To: Radia Perlman
> 	Cc: [email-masked]
> 	Subject: Re: [rbridge] Traffic storms
>
> 	Radia,
>
> 	Wouldn't this create a link between TRILL and STP we are trying
to 
> avoid?
>
> 	Relying on the fact that a LAN segment has some kind of unique 
> identifier (such as the root bridge ID) seems like a very practical 
> solution to me, but strongly reliant on the fact that the Rbridges 
> actually process BPDUs. I thought they were just meant to discard
them.
> Is this acceptable?
>
> 	Regrads,
>
> 	 Gidi
>
>
>
> 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
>
> 	The simplest way to put it, I think, is that in certain
transitory
> 	situations there might be two
> 	RBridges that both think they are Designated RBridge, and that
is 
> bad,
> 	but should stop
> 	as soon as a single Hello is received by the RBridge who should
not 
> be
> 	Designated.
>
> 	I think PIM has similar transitory situations that can occur,
and
> 	bridges can also have (hopefully
> 	temporary) problems if a repeater came up and merged two LANs. I

> think
> 	such things are
> 	annoying but not fatal. But I think it's possible we can with
little
> 	effort avoid this problem.
>
> 	However, with RBridges, because the bridge spanning tree
algorithm
> 	elects a Root, there's
> 	really a way of uniquely identifying a LAN (where "LAN" is a
bunch of
> 	links connected with
> 	bridges). The unique identifier is the root bridge.
>
> 	When the B1-B2 link is down, RB1 and RB2 will see the topology
as two
> 	separate links, and each
> 	one will have a distinct spanning tree Root bridge (RB1 will see
B1, 
> and
> 	RB2 will see B2 as the root).
>
> 	When the B1-B2 link comes up, the bridges will first merge the
two
> 	links, and either RB1 or RB2 will
> 	see that the bridge spanning tree root has changed. This will be
> 	discovered before B1 and B2 forward
> 	traffic across the link because of the bridge forwarding delay.
> 	If B1 has better priority as bridge spanning tree root than B2,
then 
> RB1
> 	will not notice anything
> 	different when the B1-B2 link comes up. But RB2 will notice
> 	something different; the spanning tree root has changed
identities 
> from
> 	"B2" to "B1".
>
> 	Given this, RB2 could temporarily stop forwarding to or from the
link
> 	when the Root bridge
> 	changes identities, though it should definitely immediately send

> IS-IS
> 	Hellos (either RB1 or RB2 will
> 	be elected Designated Router in the IS-IS election for that
link). If
> 	RB2 has better prioirty for
> 	root, the RB1 will immediately stop forwarding to or from the
link 
> when
> 	it sees the Hello from RB2.
> 	If RB2 has better priority in the IS-IS election, then RB1
should
> 	immediately send an IS-IS Hello
> 	when it sees a Hello from a new RBridge on the link.
>
> 	So I think this is not a big deal, and that if we are worried,
we can
> 	specify that an RBridge should
> 	stop acting like the Designated RBridge for a few seconds after
the
> 	identity of the Root in the spanning
> 	tree algorithm changes.
>
> 	Or we could be even fancier and have each RBridge announce in
its 
> IS-IS
> 	Hellos which LAN IDs it
> 	is Designated for, where a LAN ID is the MAC address of the Root

> bridge.
> 	So RB1 continue
> 	forwarding if the identity changes from B1 to B2 provided no
other
> 	RBridge has claimed to be connected
> 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
must 
> stop
> 	forwarding for enough time
> 	for the IS-IS election to sort itself out and choose a
Designated 
> RBridge.
>
> 	Radia
>
>
>
>
>
>
> 	Gideon Kaempfer wrote:
>
> 	>Following mention by Silvano of broadcast and multicast storms
(and 
> the need
> 	>to protect against them), I played around with different
scenarios 
> and came
> 	>upon one I would appreciate your comments on (in the hope I am 
> pointing out
> 	>a non-existent issue with TRILL). I believe a broadcast and
even a 
> unicast
> 	>storm could be created as the result of a loop that isn't
protected 
> by TTL
> 	>nor by STP in the case of a link connecting two separate LAN 
> segments coming
> 	>to life.
> 	>
> 	>- RB1 ---- RB2 -
> 	>   |        |
> 	>-  B1 --x-- B2 -
> 	>   |        |
> 	>   H1       H2
> 	>
> 	>1. The network (segment) involved consists of two Rbridges
(RB1, 
> RB2), two
> 	>bridges (B1, B2) and two hosts (H1, H2). They are physically 
> connected as
> 	>depicted.
> 	>2. State A: the direct link between B1 and B2 is down. B1 and
> B2 find
> 	>themselves on different LAN segments and hence different
spanning 
> trees. RB1
> 	>and RB2 are both designated Rbridges (each for the segment of
the
> 	>corresponding bridge).
> 	>3. State B: the direct link between B1 and B2 goes up (someone 
> connects a
> 	>cable). B1 and B2 discover each other and establish a common 
> spanning tree.
> 	>RB1 and RB2 both find themselves attached to the same LAN
segment 
> and hence
> 	>RB1 (without loss of generality) will eventually become the 
> designated
> 	>Rbridge for it.
> 	>4. Just before RB1 and RB2 identify that they are both on the
same 
> segment
> 	>and RB2 stops functioning as a designated Rbridge the following

> scenario
> 	>seems possible:
> 	>  a. H1 sends a broadcast frame.
> 	>  b. B1 receives it and forwards to RB1 and B2.
> 	>  c. RB1 (encapsulates and) forwards to RB2.
> 	>  d. B2 forwards to RB2 and H2.
> 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
to 
> RB1).
> 	>  f. (RB1 forwards to B1.)
> 	>  g. B2 forwards (again) to H2 and to B1.
> 	>  h. B1 forwards to H1 (see remark below regarding filtering
table
> 	>contamination) and to RB1.
> 	>  i. Etcetera etcetera.
> 	>5. A broadcast storm is born, created by a loop that is not 
> protected by TTL
> 	>(due to the fact that forwarding between the Rbridges is only
across 
> a
> 	>single hop) nor by STP (due to the fact that Rbridges do not 
> participate in
> 	>STP).
> 	>6. If forwarding commences at the hardware level and no
broadcast 
> rate
> 	>limiting is in place, the storm may cause severe damage in a
very 
> short time
> 	>(note that replicated frames are sent to H1 and H2 (or any
network 
> they
> 	>could represent).
> 	>7. Another unfortunate effect of this storm is that B1 and B2
no 
> longer know
> 	>where H1 is located (due to the contamination of their
filtering 
> tables by a
> 	>frame from H1 that arrives from the wrong direction (and in
fact 
> from
> 	>multiple directions). As a result, a possible unicast frame
from H2 
> to H1
> 	>will just join the storm over the loop at least in one
direction 
> (RB2 will
> 	>forward it to RB1) but will not arrive at H1...
> 	>
> 	>One possible solution could be for RB2 to identify the fact
that it 
> is
> 	>receiving a frame from a host with a MAC address that is
associated 
> with a
> 	>segment it thought it isn't connected to. Hence, it may trigger
an 
> immediate
> 	>neighbor discovery / designated Rbridge election. However,
because 
> Rbridges
> 	>should allow host mobility, this frame may need to be forwarded
(and 
> hence
> 	>the storm commences).
> 	>
> 	>As mentioned above, any comments are welcome.
> 	>  Gideon Kaempfer
> 	>
> 	>_______________________________________________
> 	>rbridge mailing list
> 	>[email-masked]
> 	> http://mailman.postel.org/mailman/listinfo/rbridge
> <http://mailman.postel.org/mailman/listinfo/rbridge>
> 	>
> 	>
>
> 	_______________________________________________
> 	rbridge mailing list
> 	[email-masked]
> 	http://mailman.postel.org/mailman/listinfo/rbridge
>
>
>
>
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 11:18:53 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: "Eastlake III Donald-LDE008" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	computation and optimality of delivery
Status: RO
Content-Length: 2697

I would also support a minimum or a default of 2 trees. Thus, at
minimum, we can assure multicast-multipathing (even if it's 2-way) in a
TRILL network. 

Sanjay

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Eastlake III Donald-LDE008
Sent: Saturday, November 04, 2006 2:10 PM
To: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between
computation and optimality of delivery

I really can't see why the minimum should be one. In an network where
Rbridge trees make any difference you have at least two Rbridges so I
can't see why you wouldn't, at a minimum, have two trees. I think we
should just prohibit Rbridges that claim to be able to support only one
tree.

Donald

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Thursday, November 02, 2006 2:20 PM
To: Sanjay Sane (sanjays)
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between
com putation and optimality of delivery

Warning---half-baked idea at the end of this message (my own---see
"***")

Sanjay Sane (sanjays) wrote:

>
>So, the TLV inside rbridge LSP could contain 2 things
>1 -- "my priority for being a tree root is x". 
>2 -- "I can support n trees"
>
>If both of these are absent, we could choose 1 tree, and the rbridge 
>with lowest MAC address is the root of that single tree.
>
>-Sanjay
>
Right. I'm a bit nervous about some random RBridge that can only support
one tree, or that just leaves the TLV out, from going up and down. We
have to make sure it's not unstable.

Suppose the nickname of the RBridge with highest priority for being root
is 24.
Suppose ingress RBridge R1 doesn't notice that wimpy RBridge R5 (that
can only support one tree) has joined the net, and R1 selects "79" as
the tree .

I guess we should say that if you see a specified tree that shouldn't be
legal, you drop the packet, right?

***An alternative is to continue forwarding it along the 79-tree and
hey, if R5 is on the path, it will drop the packet and only nodes
downstream from R5 will suffer. We could even do complicated things like
say that you can calculate trees beyond R5's capabilities by considering
links out of R5 to be infinity. That way a wimpy RBridge can be a leaf,
and going up and down won't affect existing trees.

Radia

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

From: "Gray, Eric" <[email-masked]>
To: Radia Perlman <[email-masked]>, Eastlake III Donald-LDE008 <[email-masked]>
Date: Mon, 6 Nov 2006 14:11:52 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 4736

Radia,

	I think I agree with this and would go further to make two
additional comments/observations:

	1) Unless it is possible to determine absolutely what cases
         exist where RBridges can know that the link between them
         actually is p2p (as opposed to looks like it is p2p), it
         is risky to leave this sort of behavior as an unspecified
         option.
	2) If we cannot explicitly list the conditions under which 
         all implementations MUST assume a NULL outer header, and
         we really believe it is important to have this, then we
         need to specify a negotiation mechanism whereby RBridges
         can signal the intention to leave out the outer header.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Radia Perlman
--> Sent: Monday, November 06, 2006 1:14 PM
--> To: Eastlake III Donald-LDE008
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> Yes, if there are two RBridges that can figure out they have a point to 
--> point link between them, it seems like it would be good to drop the
outer 
--> header, since there's really no information there.
--> 
--> Is there a way to automatically know this is definitely a pt-to-pt 
--> Ethernet link and not a shared link?
--> 
--> Radia
--> 
--> Eastlake III Donald-LDE008 wrote:
--> 
--> >Silvano,
--> >
--> >Why do you think that 90% of Rbridge deployment will be 
--> for this unusual
--> >case? I mean, I have no problem with the belief that 
--> Rbridges would be
--> >better than bridges in this case but why shouldn't that be 
--> true of less
--> >high end uses?
--> >
--> >A while ago on this list I posted a rhetorical question as to why
--> >Rbriges shouldn't eventually replace all bridges. No one posted an
--> >answer.
--> >
--> >Why not specify Rbridges more or less as we have been for 
--> the common
--> >bridge case and, in the backbone case you are talking 
--> about, just drop
--> >the MAC addresses on the point-to-point links within the backbone?
--> >Doesn't that produce less overhead than your proposal 
--> below in both the
--> >point-to-point and shared media cases?
--> >
--> >Donald
--> >
--> >-----Original Message-----
--> >From: [email-masked] 
--> [mailto:[email-masked]] On
--> >Behalf Of Silvano Gai
--> >Sent: Wednesday, November 01, 2006 9:07 PM
--> >To: [email-masked]
--> >Subject: [rbridge] Should we optimize the common case?
--> >
--> >
--> >With 16 bit addresses the current TRILL overhead over 
--> Ethernet is 20
--> >bytes. If we want to expand the RBridge addresses, it we will go to
--> >22-24 bytes.
--> >
--> >What customers are telling us is that they will deploy RBridges by
--> >creating an RBridge backbone in which all the links will be 10GE.
--> >
--> >They will connect regular bridges and host to the periphery of this
--> >backbone. 
--> >
--> >They will not mix backbone ports with access ports, 
--> because this screws
--> >up management, traffic engineering, debugging, and troubleshooting.
--> >Regular network design, easy to understand, is very 
--> important. Ports are
--> >cheap, labor is expensive.
--> >
--> >I am totally convinced that this will account for 90+ % of TRILL
--> >deployment. 
--> >
--> >I am wondering if it makes sense to have a solution highly 
--> optimized for
--> >such an environment.
--> >
--> >For example we can put the egress/ingress RBridge 
--> addresses in the outer
--> >MAC addresses and define a TRILL shim header that contains 
--> 1 byte of hop
--> >limit and 1 byte reserved. For this common case we will get:
--> >1) overhead of 16 bytes (4 to 8 bytes lower)
--> >2) nickname = MAC address, i.e no hash collision
--> >3) zero-conf achieved
--> >
--> >In the case we need to go over a shared media we will need to add
--> >another Ethernet encapsulation to carry the next hop 
--> address, i.e. 14
--> >bytes
--> >- total overhead will be 30 bytes
--> >
--> >Summarizing:
--> >- current proposal 20-24 bytes overhead
--> >- new proposal on point to point: 16 bytes
--> >- new proposal on shared media: 30 bytes
--> >
--> >Comments?
--> >
--> >-- Silvano
--> >
--> >
--> >_______________________________________________
--> >rbridge mailing list
--> >[email-masked]
--> >http://mailman.postel.org/mailman/listinfo/rbridge
--> >
--> >_______________________________________________
--> >rbridge mailing list
--> >[email-masked]
--> >http://mailman.postel.org/mailman/listinfo/rbridge
--> >  
--> >
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Eastlake III Donald-LDE008 <[email-masked]>
Date: Mon, 6 Nov 2006 13:53:58 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 1836

Donald,

	To expand on this, it is actually necessary for the protocol 
specification to be very explicit in describing how TTL is handled
- both in establishing the initial value, and in processing by an
intermediate (or egress) RBridge.

	There can be some flexibility in how any individual RBridge
implementation determines an initial value, but it is not sufficient
to leave this entirely to implementation discretion.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Eastlake 
--> III Donald-LDE008
--> Sent: Monday, November 06, 2006 1:14 AM
--> To: [email-masked]
--> Subject: [rbridge] A thought about TTLs
--> 
--> Rbridges are in a fundamentally different position in 
--> deciding shim TTLs
--> than IP hosts are in deciding IP TTLs. In particular, a host knows
--> almost nothing about the routing situation while an Rbridge 
--> has explicit
--> link state information.
--> 
--> Thus it would be reasonable to recommend a TTL based on the expected
--> number of hops for unicast or maximum expected number of hops for
--> multicast/broadcast/flooded or on the diameter of the 
--> network (maximum
--> number of Rbridge-Rbridge hops for the two most distant 
--> Rbridges) or the
--> like ... It would even be possible to have Rbridges trim 
--> back the TTL
--> for the copy forwarding to a particularly short branch of a 
--> tree or even
--> when forwarding along a unicast path if that path has 
--> gotten shorter.
--> Such adjustment is probably too much work to mandate but it 
--> seems to me
--> that it should be allowable behavior.
--> 
--> Thanks,
--> Donald
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Eastlake III Donald-LDE008 <[email-masked]>, [email-masked]
Date: Mon, 6 Nov 2006 13:49:14 -0500 
Subject: Re: [rbridge] WG last call commentsto:http://www.ietf.org/interne	t-drafts/draft-ietf-trill-routing-reqs-00.txt
Status: RO
Content-Length: 23872

Silvano,

	Let's not be stubborn about wording.  You don't like the phrase
"drop BPDUs."  I think it's fair to observe that "process BPDUs" is
not quite accurate either.

	The intention is that implementations MAY examine BPDUs in an
effort to maintain awareness of network conditions, but they are not
to "process" them in the usual sense of STP (or RSTP, or MSTP).

	What wording would you like to see?

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> Sent: Monday, November 06, 2006 1:16 AM
--> To: Eastlake III Donald-LDE008; [email-masked]
--> Subject: Re: [rbridge] WG last call 
--> commentsto:http://www.ietf.org/internet-drafts/draft-ietf-tr
--> ill-routing-reqs-00.txt
--> 
--> Donald,
--> 
--> I think I agree with most of your comments, with one big exception.
--> 
--> I am not able to see the difference between "dropping a BPDU" or
--> "ignoring a BPDU".
--> 
--> IMO there are two possibilities:
--> 1) we drop BPDUs
--> 2) we process BPDUs
--> 
--> If we do 2), we can:
--> 2.1) process BPDU using STP/RSTP
--> 2.2) do other processing on the BPDU, not STP/RSTP related
--> 
--> If we don't want to do 2.1), let's just say it.
--> If we need to do 2.2), it is better we spell it out clearly, and not
--> hide it behind the word "ignore BPDUs".
--> 
--> This is such a crucial point to achieve:
--> a) Interoperability
--> b) A robust implementation
--> 
--> that we don't want to be vaguely defined.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]]
--> On
--> > Behalf Of Eastlake III Donald-LDE008
--> > Sent: Sunday, November 05, 2006 3:22 PM
--> > To: [email-masked]
--> > Subject: Re: [rbridge] WG last call
--> >
--> commentsto:http://www.ietf.org/internet-drafts/draft-ietf-tr
--> ill-routing-
--> > reqs-00.txt
--> > 
--> > Hi Silvano,
--> > 
--> > I think I agree with most of your comments but see a few 
--> notes at @@@
--> > 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]]
--> On
--> > Behalf Of Silvano Gai
--> > Sent: Sunday, October 29, 2006 12:23 PM
--> > To: [email-masked]
--> > Subject: [rbridge] WG last call comments
--> >
--> to:http://www.ietf.org/internet-drafts/draft-ietf-trill-rout
--> ing-reqs-00.
--> > txt
--> > 
--> > Comments inline marked "sgai n>"
--> > 
--> > -- Silvano
--> > 
--> > --------------------------------------------------------
--> > 
--> > ... snip ...
--> > 
--> > 1. Introduction
--> > 
--> >    The current dominant approach to segregating network 
--> traffic relies
--> >    on a hierarchical arrangement of bridges and routers.  
--> Hierarchy is
--> >    further extended - both within routing protocols (such 
--> as IS-IS and
--> >    OSPF) and between routing protocols (for example, 
--> between IGPs and
--> >    BGP).  At least part of the current network structure 
--> is based on a
--> >    determined trade-off between limitations of IP routing 
--> and similar
--> >    disadvantages of 802 bridging.
--> > 
--> >    Bridging Limitations
--> > 
--> >    For example, bridged networks consist of single 
--> broadcast/flooding
--> >    domains.  Ethernet/802 encapsulation (on which 
--> bridging is based)
--> >    does not provide mechanisms for reducing the impact of 
--> looping data
--> >    traffic that may result from a transient change in 
--> network topology
--> >    and the existence of multiple paths.
--> > 
--> >    The impact of looping traffic is far worse with flooded or
--> broadcast
--> >    traffic as this results in exponentially increasing 
--> traffic load.
--> >    Consideration of the impacts of looping data lead to the use of
--> >    STP/RSTP to establish a connected - loop free - tree 
--> by disabling
--> >    forwarding on a subset of links that might create a 
--> loop.  This has
--> >    also the effect of eliminating redundant paths.
--> > 
--> > @@@ Also generally lowers aggregate throughput and 
--> increases latency
--> > through the net due to frames following suboptimal paths.
--> > 
--> >    Because of the potential for severe impact from 
--> looping traffic,
--> >    many (if not most) current bridge implementations stop 
--> forwarding
--> of
--> >    traffic frames following a topology change event and 
--> restart only
--> >    after STP/RSTP is complete.
--> > 
--> > Sgai 1> In STP there is no way of knowing when the convergence has
--> been
--> > achieved; a bridge does not know or care about the timers of other
--> > bridges. The state machines on the ports are run 
--> independently. If you
--> > refer to the Topology Change Notification Flag, its purpose is to
--> reduce
--> > the filtering database ageing time, not to signal if STP/RSTP is
--> > complete.
--> > 
--> >    As a result, the process of eliminating potential 
--> loops in existing
--> >    bridging deployments:
--> > 
--> >      1) Results in inefficient use of inter-bridge connections
--> >         and
--> >      2) Causes delays in forwarding traffic as a result of
--> >         changes in the network topology.
--> > 
--> > Sgai 2> 2) is not true in the RSTP case; as a matter of 
--> fact RSTP is
--> the
--> > fastest converging protocol available today.
--> > 
--> > @@@ I'm not sure why this and other documents put the 
--> emphasis they do
--> > on STP/RSTP convergence. Of course it depends some on just how
--> STP/RSTP
--> > is implemented and how other algorithms are implemented. 
--> Perhaps it
--> > stems from, as was pointed out early in the Rbridge 
--> effort, that the
--> > replacement of bridges with Rbrides typically divides 
--> what would have
--> > been one large spanning tree domain into a number of smaller ones
--> > interconnected by Rbridges. The STP/RSTP protocol within 
--> these small
--> > spanning tree domains will typically converge for them 
--> all in parallel
--> > more rapidly than the pre-existing larger single spanning tree
--> STP/RSTP
--> > convergence.
--> > 
--> >    The combined effect of broadcast/flooding traffic, and 
--> the use of
--> >    spanning trees for loop avoidance, sets practical 
--> limits on bridged
--> >    network size in the network hierarchy and results in 
--> inefficient
--> >    bandwidth use of inter-bridge connections. Inefficient 
--> inter-bridge
--> >    connection usage similarly limits the usefulness of 
--> bridging with
--> >    high-speed (and consequently high cost) interfaces.
--> > 
--> > 
--> > 
--> > 
--> > 
--> > 
--> > 
--> > Gray                      Expires March, 2007             
-->     [Page 3]
--> > 
--> > Internet-Draft        TRILL Routing Requirements       
--> September, 2006
--> > 
--> > 
--> >    IP Routing Issues
--> > 
--> >    For IP routed networks, any link (or subnet) must have 
--> at least one
--> >    unique prefix. This means that a node that moves from 
--> one IP subnet
--> > 
--> > sgai 3> in the case of IP instead of "node" is better to speak of
--> > "interface". It is the interface that has an address, not 
--> the node.
--> > 
--> >    to another must change its IP address. Also, nodes 
--> with multiple IP
--> >    subnet attachments must have multiple IP addresses.  
--> In IP routed
--> >    networks, there are frequent trade-off considerations 
--> between using
--> >    smaller subnets (longer prefix length) to minimize wasted IP
--> address
--> >    space (as a result of unused addresses in the fixed 
--> address range
--> >    defined by the prefix and length) and using larger 
--> subnets (shorter
--> >    prefix length) to minimize the need for (changes in) 
--> configuration.
--> > 
--> >    In any case - with current IP routing technology - 
--> subnets must be
--> >    configured for each routed interface.
--> > 
--> >    Proposed Solution
--> > 
--> >    Using a hybrid of routing and bridging - an RBridge - 
--> we hope to
--> >    gain the benefits of both technologies, in particular, 
--> gaining the
--> >    bandwidth advantages of shortest path routing while 
--> retaning the
--> >    simplified configuration associated with bridging.
--> > 
--> > 1.1. Terminology
--> > 
--> >    The following terms are used in this document in the way that
--> >    they are defined in "TRILL RBridge Architecture" [TARCH]:
--> > 
--> >      ARP (Address Resolution Protocol)
--> >      Bridge Learning
--> >      Broadcast Domain
--> >      Broadcast Traffic
--> >      Cooperating RBridges
--> >      Egress RBridge
--> >      Ethernet
--> >      Flooded Traffic
--> >      Flooding
--> >      Frame
--> >      IGP (Interior Gateway Protocol)
--> >      Ingress RBridge
--> >      Ingress RBridge Tree
--> >      IS-IS (Intermediate System to Intermediate System)
--> >      ND (Neighbor Discovery)
--> >      OSPF (Open Shortest Path First)
--> >      Packet
--> > 
--> > Sgai 4> in the case of layer 2 networks is more 
--> appropriate to use the
--> > term frame, instead of packet.
--> > 
--> > @@@ Frame appears earlier in this list and I believe that both are
--> > properly defined in the architecture document.
--> > 
--> >      RBridge
--> >      SPF (Shortest Path First)
--> >      STP/RSTP (Spanning Tree Protocol/Rapid Spanning Tree 
--> Protocol)
--> >      TRILL (TRansport Interconnect over Lots of Links)
--> >      Unknown Destination
--> >      VLAN (Virtual Local Area Network)
--> > 
--> > 
--> > Gray                      Expires March, 2007             
-->     [Page 4]
--> > 
--> > Internet-Draft        TRILL Routing Requirements       
--> September, 2006
--> > 
--> > 
--> > 
--> > 1.2. Specific TRILL Goals
--> > 
--> >    (Near) Zero Configuration
--> > 
--> >    It is a TRILL requirement that it must be possible to deploy
--> RBridges
--> >    in at least a nominal set of potential deployment 
--> scenarios without
--> a
--> >    need to perform any configuration at each RBridge.  It 
--> is possible
--> to
--> >    meet this goal for a sub-set of all possible 
--> deployment scenarios
--> by
--> >    making realistic restrictions on deployment - such as 
--> restricting
--> the
--> >    deployment scenarios to exclude those involving a "trust model"
--> that
--> >    imposes a need for configuration of some form of 
--> "shared secret" or
--> >    other configuration required to restrict access to "trusted"
--> devices.
--> > 
--> >    It is also conceivable that a minimal configuration 
--> may be required
--> >    for deployment of an initial (set of) device(s) - with 
--> subsequently
--> >    deployed devices deriving that configuration 
--> information during the
--> >    process of - for example - peer discovery.  This would 
--> constitute a
--> >    mechanism for "near zero configuration".
--> > 
--> >    Efficient Unicast Bandwidth Usage
--> > 
--> >    For unicast, non-flooded traffic, RBridges are 
--> intended to merge
--> the
--> >    efficient bandwidth use of IP routing with the simplicity of
--> Ethernet
--> >    (or 802.1) bridging for networks possibly larger - and 
--> with greater
--> >    forwarding capacity - than is the case with these networks
--> presently.
--> > 
--> >    The approach that we will use in accomplishing this is 
--> based on the
--> >    idea of extending (one or more) link state routing 
--> protocol(s) to
--> >    include distribution of Ethernet/802 reachability information
--> between
--> >    RBridge instances.
--> > 
--> > Sgai 5> "RBridge instances" is not defined.
--> > 
--> > @@@ For a document at this level, perhaps it could just say
--> "RBridges".
--> > 
--> >    In addition, there may be specific requirements
--> >    imposed on the interactions between these extensions and the
--> Spanning
--> >    Tree Protocol (STP) and between RBridge instances and 
--> (potentially
--> >    co-located) IP routing instances.
--> > 
--> >    Potentially More Efficient Multicast and Broadcast Usage
--> > 
--> >    There are clear advantages to incorporating mechanisms 
--> for improved
--> >    efficiency in forwarding (layer 2) multicast frames 
--> and - possibly
--> >    in reducing the amount of broadcast traffic as well.  
--> To the extent
--> >    that these efficiency improvements may be considered
--> "optimizations"
--> >    and may be defined orthogonally to the process of 
--> specifying basic
--> >    RBridge functionality, the potential to include these 
--> optimizations
--> >    is (highly) desirable, but not mandatory.
--> > 
--> >    Examples of this type of optimization include use of 
--> any intrinsic
--> >    multicast routing capabilities and optimizations of ARP/ND.
--> > 
--> > 
--> > 
--> > 
--> > 
--> > Gray                      Expires March, 2007             
-->     [Page 5]
--> > 
--> > Internet-Draft        TRILL Routing Requirements       
--> September, 2006
--> > 
--> > 
--> > 
--> >    Backward Compatibility
--> > 
--> >    RBridges must be fully compatible with current 
--> bridges, IPv4 and
--> >    IPv6 routers and endnodes.  They should be invisible 
--> to current IP
--> >    routers (just as bridges are), and like routers, they 
--> terminate a
--> >    bridged spanning tree.
--> > 
--> > Sgai 6> the concept of terminating a bridged spanning tree is to
--> vague,
--> > see also sgai 10.
--> > 
--> > @@@ I think that concept is generally understood to mean 
--> that they do
--> > not pass BPDUs. Perhaps "by not passing BPDUs" could be appended
--> above.
--> > 
--> >    Unlike Routers, RBridges do not terminate
--> >    a broadcast domain.
--> > 
--> > 
--> > 2. General Requirements Potentially Affecting Routing
--> > 
--> >    Candidate IGP Routing protocols - IS-IS or OSPF - must 
--> be evaluated
--> >    for compatibility with the above goals.
--> > 
--> >    For example, since IS-IS requires a unique System ID 
--> for each IS-IS
--> >    instance (at least within a "scoped" deployment), a 
--> requirement for
--> >    "(near) zero configuration" implies a need for mechanisms that
--> allow
--> >    auto-configuration and/or negotiation of these 
--> (scoped) unique IDs.
--> > 
--> >    Similar requirement must apply for OSPF as well, if selected.
--> > 
--> >    In addition, forwarding of protocol messages must be compatible
--> with
--> >    (or reasonably adaptable to) use of forwarding at 
--> layer 2, or there
--> >    must be a means for deriving suitable higher layer 
--> addresses for
--> the
--> >    purpose of protocol exchanges - without imposing the need to
--> manually
--> >    configure higher-layer addresses.
--> > 
--> > 
--> > 3. Link State Protocol Specific Requirements
--> > 
--> >    Assuming that link state routing protocols meet above 
--> requirements,
--> >    running a link state protocol among RBridges is 
--> straightforward.
--> It
--> >    is the same as running a level 1 routing protocol in 
--> an area.  This
--> >    would be theoretically true for either IS-IS or OSPF, 
--> assuming that
--> >    both of these meet the general requiremenst above.
--> > 
--> >    From the perspective of simply extending existing routing
--> protocols,
--> >    IS-IS is a more appropriate choice than OSPF because 
--> it is easy in
--> >    IS-IS to define new TLVs for use in carrying a new information
--> type.
--> > 
--> >    This document, however, does not mandate a specific link-state,
--> IGP,
--> >    routing protocol.  Instead, it sets forth the requirements that
--> will
--> >    apply to any link-state routing protocol that may be used.
--> > 
--> >    For implementations providing co-located 
--> Router/RBridge function,
--> >    it is necessary to have mechanisms for distinguishing 
--> any protocol
--> >    interactions in Routing instances from protocol 
--> interactions in the
--> >    co-located RBridge instance.  Specific mechanisms we 
--> will use are
--> >    very likely to be determined by the Link State Routing Protocol
--> that
--> > 
--> > 
--> > 
--> > Gray                      Expires March, 2007             
-->     [Page 6]
--> > 
--> > Internet-Draft        TRILL Routing Requirements       
--> September, 2006
--> > 
--> > 
--> > 
--> >    we select.  Potential distinguishing mechanisms 
--> include use of a
--> new
--> >    well-known Ethernet/802 multicast address, 
--> higher-layer protocol ID
--> >    or other - routing protocol specific - approaches.
--> > 
--> >    The mechanism chosen should be consistent with the TRILL goals.
--> If,
--> >    for example, a routing protocol specific approach 
--> required use of a
--> >    unique "area" identifier, the RBridge area identifier 
--> should be a
--> >    constant, well-known, value for all RBridges, and 
--> would not be one
--> >    that would ever appear as a real routing area 
--> identifer - in order
--> >    to allow for a potential for configuration-free operation.
--> > 
--> >    Information that RBridge link state information will carry
--> includes:
--> > 
--> >    o  layer 2 addresses of nodes within the domain which have
--> >       transmitted frames but have not transmitted ARP or 
--> ND replies
--> > 
--> >    o  layer 3, layer 2 addresses of IP nodes within the 
--> domain.  For
--> >       data compression, perhaps only the portion of the address
--> >       following the domain-wide prefix need be carried.  
--> This will be
--> >       more of an issue for IPv6 than for IPv4.
--> > 
--> >    o  VLANs directly connected to this RBridge
--> > 
--> > 
--> > Sgai 7> The discussion about VLAN needs to be much more 
--> extensive. It
--> is
--> > clear from the mailing list discussion that VLANs can be 
--> used inside
--> the
--> > packet or in the Ethernet encapsulation of TRILL. These are two
--> > different kinds of VLANs and their requirement need to be stated
--> > separately. Q in Q needs also to be discussed. I propose to define
--> inner
--> > and outer VLANs (with reference to the position of the tag in the
--> frame.
--> > 
--> > @@@ Based on the discussions that have been going on, I feel a bit
--> > clearer about VLANs than I used to. It seems hard to make 
--> a simple,
--> > brief, definiteive statement about Rbridges and VLANs, 
--> except that all
--> > the VLAN stuff needs to be configured, because there are so many
--> > different scenarios. I agree that a fairly extensive discussion of
--> VLANs
--> > should appear somewhere but I don't think this is the 
--> right document
--> for
--> > that. The requirement on the Rbridge routing expressed 
--> here is that it
--> > needs, one way or the other, to be able to handle station
--> identification
--> > not just as a MAC address but as a VLAN tag and MAC address.
--> > 
--> >    Endnode information need only be delivered to RBridges 
--> supporting
--> >    the VLAN in which the endnode resides.
--> > 
--> > Sgai 8> endnode -> station
--> > 
--> >    So, for instance, if endnode
--> >    E is discovered through a VLAN A frame, then E's 
--> location need only
--> >    be delivered to other RBridges that are attached to 
--> VLAN A links.
--> > 
--> >    Given that RBridges must support delivery only to 
--> links within a
--> VLAN
--> > 
--> >    (for multicast or unknown frames marked with the 
--> VLAN's tag), this
--> >    mechanism can be used to advertise endnode information 
--> solely to
--> the
--> >    RBridges "within" a VLAN (i.e. - having connectivity or
--> configuration
--> >    that assoicates them with a VLAN).
--> > 
--> >    Although a separate instance of
--> >    the link state protocol could be run for this purpose, 
--> the topology
--> >    is so restricted (just a single broadcast domain), 
--> that it may be
--> >    preferable to define special case mechanisms whereby each DR
--> > 
--> > sgai 9> DR? Designated RBridge???
--> > 
--> > @@@ Yes, I think it should be spelled out.
--> > 
--> >    advertises attached endnodes, and receives explicit 
--> acknolegments
--> >    from other RBridges.
--> > 
--> > 
--> > 4. Potential Issues
--> > 
--> > 4.1. Interactions with Spanning Tree Forwarding and 
--> Bridge Learning
--> > 
--> >    Spanning tree forwarding applies within parts of the RBridge
--> domain,
--> >    where two or more RBridges are connected by a link 
--> that includes
--> >    multiple 802.1 bridges.
--> > 
--> > 
--> > 
--> > 
--> > Gray                      Expires March, 2007             
-->     [Page 7]
--> > 
--> > Internet-Draft        TRILL Routing Requirements       
--> September, 2006
--> > 
--> > 
--> > 
--> >    In order to simplify the interactions between RBridges 
--> and bridges
--> -
--> >    in particular, relative to spanning tree forwarding - 
--> RBridges do
--> not
--> >    actively participate in spanning tree protocol with 
--> 802.1 bridges.
--> > 
--> > Sgai 10> "do not participate actively" can mean two 
--> different things:
--> > 1) they drop the BPDU
--> > 2) they propagate the BPDUs as regular multicast frames
--> > 
--> > can you clarify?
--> > 
--> > @@@ They block BPDUs but might do something based on 
--> their receipt.
--> > Another way to look at it is that an Rbridge with N 
--> interfaces, each
--> > connected to bridged links, looks like N different leaf 
--> nodes to the
--> > STP/RSTP running on those bridged links. (Could be N different
--> spanning
--> > trees or less than that if some of these links are connected or
--> bridged
--> > to each other.)
--> > 
--> >    Hence, from the Link State Routing protocol perspective, the
--> protocol
--> >    will be able to treat spanning tree links as 
--> indistinguishable from
--> >    any other Ethernet/802.1 link, in the same way that routing
--> protocols
--> >    do today.
--> > 
--> >    However, support for multi-pathing is potentially 
--> problematic and
--> is
--> >    assumed - in this document - to be a non-goal.  Multi-path
--> forwarding
--> >    has the potential to confound the bridge learning process.
--> > 
--> > Sgai 11> multi-pathing a non-goal? This seems to be in 
--> contradiction
--> > with what said before. Is it because of the designated RBridge?
--> > 
--> > Sgai 12> the requirement for a designated RBridge is not really
--> > discussed here. In particular there is no discussion of 
--> the property
--> of
--> > the election algorithm, which must avoid broadcast storms.
--> > 
--> > @@@ Seems like the ideal thing would be to state the 
--> requirements that
--> > having a Designated Rbridge meets rather then the 
--> mechanism of having
--> a
--> > Designated Rbridge.
--> > 
--> > @@@ Some general statement about convergence and an acceptably low
--> level
--> > of overhead traffic for all of the mechanisms associated with the
--> > routing protocol might be reasonable.
--> > 
--> > 
--> > 4.2. Computing Routes
--> > 
--> >    RBridges must calculate an L2 "route table" consisting 
--> of Next Hop
--> >    information for each known L2 unicast destination 
--> address within a
--> >    (possibly VLAN scoped) broadcast domain. This is 
--> computed using a
--> >    routing protocol's SPF algorithm and based on 
--> destination layer 2
--> >    address reachability advertisements.
--> > 
--> > Sgai 13> from the previous sentence it seems that we are 
--> computing the
--> > topology among all the MAC addresses. What we really do 
--> is compute the
--> > topology among RBridges and then tag it with reachable 
--> MAC addresses.
--> > >From the SPF perspective, it is a much easier problem.
--> > 
--> > ... snip ...
--> > 
--> > 
--> > @@@ Thanks,
--> > @@@ Donald
--> > 
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Joe Touch <[email-masked]>, Eastlake III Donald-LDE008 <[email-masked]>
Date: Mon, 6 Nov 2006 13:45:39 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 1373

Joe,

	I tend to agree with Donald's comments (which are not included here,
because of the difficulty I have in responding to your mail generally).

	To your point, it might be possible for RBridges to use some factor
(such as +2 hops, or *2 hops) over the actual expected tunnel length, but
it is unreasonable to use any number much larger than that for the purpose
preserving frames that are taking some tortuous, but not looping, path in
a changing network.

--
Eric

Earlier, you said:
--> The whole point of a TTL is that things could change en-route, which
--> means that a rbridge might want to scope the TTL down, but this could
--> end up dropping a packet that would have had a legitimate, nonlooping
--> path that's unexpectedly longer later.
--> 
--> IMO, let the TTL be what it is - loop prevention for unicast, and
--> diameter scope for broad/multicast. Don't try to overthink it beyond
that.
--> 
--> Joe

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Joe Touch
--> Sent: Monday, November 06, 2006 1:32 AM
--> To: Eastlake III Donald-LDE008
--> Cc: [email-masked]
--> Subject: Re: [rbridge] A thought about TTLs
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Mon, 06 Nov 2006 10:41:58 -0800
From: Radia Perlman <[email-masked]>
To: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 1767

I hesitate to bring this up because I don't want to reintroduce 
confusion about
"participating" in bridge spanning tree algorithm. So, please---what I'm
about to propose does NOT merge links. Bridged links still terminate at 
an RBridge.

The issue is that it can be unpleasant for two RBridges to 
simultaneously think they
are both Designated on the same link, which can happen if a bridge came up
and connected two links. Or for that matter, a repeater.

One way of making sure that a situation like that resolves very quickly,
and absolutely, is to have RBridges act like bridges on each of their ports,
with numerically lowest (i.e., highest) priority for become Root.

Now---I DO NOT MEAN that an RBridge merges the spanning trees on each of 
its ports.
The spanning tree is terminated at an RBridge. If an RBridge has 4 
ports, it will
participate in 4 independent bridge spanning tree instances.

The advantage of doing this is that we could make the Root bridge be the 
Designated
RBridge. Then if two RBridge links merged, the RBridges would notice 
immediately.
If you get usurped as bridge Root, you are also usurped as RBridge 
Designated RBridge.

Since the bridge spanning tree messages are never delayed by 
pre-forwarding delays,
this seems like it might be a nice thing to do.

It would be nice if the same RBridge that would get elected Desiganted 
RBridge in
the IS-IS link election would be elected bridge Root on that link. The 
easiest thing
would be not to bother with IS-IS priority, and have them all have the 
same priority,
with election being solely on ID. Then they can all use the lowest 
bridge root priority,
and the same RBridge would get elected bridge root on the link as would get
elected Designated RBridge on the link.

Radia

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Eastlake III Donald-LDE008 <[email-masked]>, [email-masked]
Date: Mon, 6 Nov 2006 13:38:26 -0500 
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 7321

Silvano,

	The assertion that only fortune 500 companies are interested in
TRILL is baseless and untrue.  One reason why you may believe this is
the case, is that you are making certain assumptions about complexity
and scale of the desired solution that are equally unfounded or false.

	There is nothing that particularly prohibits definition of some
form of RBridge functionality that might be simple enough to deploy in
relatively small networks - where higher speed link are becoming more
common and wasting high speed links is also a problem.

	The types of networks you're talking about cannot realistically
operate with plug & play devices, and greater scalability is paramount.
The work we're doing in this WG is aimed at simplistic, plug & play
deployment where increased scalability is a secondary consideration.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> Sent: Monday, November 06, 2006 1:51 AM
--> To: Eastlake III Donald-LDE008; [email-masked]
--> Subject: Re: [rbridge] Should we optimize the common case?
--> 
--> 
--> Donald,
--> 
--> The high end and the low end are extremely different.
--> 
--> The customers interested in TRILL are the Fortune 500 
--> companies. Large
--> Enterprise networks and large data centers used to run Financial,
--> Insurance, Health, Chemical, Oil, Information and manufacturing
--> companies.
--> 
--> They have huge demand for high bandwidth and low latency.
--> 
--> Each of these companies spends millions each year in 
--> network operation
--> (OPEX) and millions in new equipment (CAPEX). In all of them OPEX is
--> much larger than CAPEX. They only buy major vendor 
--> equipments and they
--> install them according to the recommended vendor design guideline.
--> Typically they have an internal certification lab in which 
--> they test the
--> network configuration and the software releases before 
--> putting them in
--> production networks.
--> 
--> They have a very well defined concept of backbone ports and access
--> ports. All the backbone ports are in fiber at the highest 
--> possible speed
--> (today 10 GE). For the access port they use a mix of fiber 
--> and copper.
--> The backbone has a regular structure that matches the vendor design
--> guideline and the result of the certification experiment 
--> they have done
--> independently.
--> 
--> A network outage can cost millions/hour. 
--> 
--> There is no way you will see in one of these backbones a hub or any
--> other uncontrolled device. NEVER. 
--> 
--> That is the reason why I think this is the most important case for
--> TRILL.
--> 
--> More inline.
--> 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]]
--> On
--> > Behalf Of Eastlake III Donald-LDE008
--> > Sent: Sunday, November 05, 2006 10:20 PM
--> > To: [email-masked]
--> > Subject: Re: [rbridge] Should we optimize the common case?
--> > 
--> > Silvano,
--> > 
--> > Why do you think that 90% of Rbridge deployment will be for this
--> unusual
--> > case? I mean, I have no problem with the belief that 
--> Rbridges would be
--> > better than bridges in this case but why shouldn't that be true of
--> less
--> > high end uses?
--> > 
--> > A while ago on this list I posted a rhetorical question as to why
--> > Rbriges shouldn't eventually replace all bridges. No one posted an
--> > answer.
--> 
--> This technology will start in the high end and move down to 
--> the lower
--> end. How low will it goes is a good question. 
--> 
--> The low end is extremely cost sensitive. When we buys a switch or a
--> router on the Internet for 50-100$, the COGS cannot be more 
--> that 15-30$,
--> even with low margins. This implies that few dollar more to 
--> increase the
--> memory size or the processor speed are a big deal. Add software
--> development cost. Couple this with the fact that today we 
--> have low cost
--> 1GE switches used by low-end users that have problems 
--> pushing or pulling
--> more than few Mb/s. There is no bandwidth demand in the low end.
--> Spanning tree is just fine. Cost is the big issue. Moreover 
--> there is the
--> huge issue of training home/small office installers in this new
--> technology.
--> 
--> My 0.2 cents
--> 
--> -- Silvano
--> 
--> > 
--> > Why not specify Rbridges more or less as we have been for 
--> the common
--> > bridge case and, in the backbone case you are talking 
--> about, just drop
--> > the MAC addresses on the point-to-point links within the backbone?
--> > Doesn't that produce less overhead than your proposal 
--> below in both
--> the
--> > point-to-point and shared media cases?
--> > 
--> > Donald
--> > 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]]
--> On
--> > Behalf Of Silvano Gai
--> > Sent: Wednesday, November 01, 2006 9:07 PM
--> > To: [email-masked]
--> > Subject: [rbridge] Should we optimize the common case?
--> > 
--> > 
--> > With 16 bit addresses the current TRILL overhead over 
--> Ethernet is 20
--> > bytes. If we want to expand the RBridge addresses, it we 
--> will go to
--> > 22-24 bytes.
--> > 
--> > What customers are telling us is that they will deploy RBridges by
--> > creating an RBridge backbone in which all the links will be 10GE.
--> > 
--> > They will connect regular bridges and host to the 
--> periphery of this
--> > backbone.
--> > 
--> > They will not mix backbone ports with access ports, because this
--> screws
--> > up management, traffic engineering, debugging, and 
--> troubleshooting.
--> > Regular network design, easy to understand, is very 
--> important. Ports
--> are
--> > cheap, labor is expensive.
--> > 
--> > I am totally convinced that this will account for 90+ % of TRILL
--> > deployment.
--> > 
--> > I am wondering if it makes sense to have a solution 
--> highly optimized
--> for
--> > such an environment.
--> > 
--> > For example we can put the egress/ingress RBridge addresses in the
--> outer
--> > MAC addresses and define a TRILL shim header that 
--> contains 1 byte of
--> hop
--> > limit and 1 byte reserved. For this common case we will get:
--> > 1) overhead of 16 bytes (4 to 8 bytes lower)
--> > 2) nickname = MAC address, i.e no hash collision
--> > 3) zero-conf achieved
--> > 
--> > In the case we need to go over a shared media we will need to add
--> > another Ethernet encapsulation to carry the next hop 
--> address, i.e. 14
--> > bytes
--> > - total overhead will be 30 bytes
--> > 
--> > Summarizing:
--> > - current proposal 20-24 bytes overhead
--> > - new proposal on point to point: 16 bytes
--> > - new proposal on shared media: 30 bytes
--> > 
--> > Comments?
--> > 
--> > -- Silvano
--> > 
--> > 
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> > 
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Mon, 06 Nov 2006 10:13:48 -0800
From: Radia Perlman <[email-masked]>
To: Eastlake III Donald-LDE008 <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 3111

Yes, if there are two RBridges that can figure out they have a point to 
point link between them, it seems
like it would be good to drop the outer header, since there's really no 
information there.

Is there a way to automatically know this is definitely a pt-to-pt 
Ethernet link and not a shared link?

Radia

Eastlake III Donald-LDE008 wrote:

>Silvano,
>
>Why do you think that 90% of Rbridge deployment will be for this unusual
>case? I mean, I have no problem with the belief that Rbridges would be
>better than bridges in this case but why shouldn't that be true of less
>high end uses?
>
>A while ago on this list I posted a rhetorical question as to why
>Rbriges shouldn't eventually replace all bridges. No one posted an
>answer.
>
>Why not specify Rbridges more or less as we have been for the common
>bridge case and, in the backbone case you are talking about, just drop
>the MAC addresses on the point-to-point links within the backbone?
>Doesn't that produce less overhead than your proposal below in both the
>point-to-point and shared media cases?
>
>Donald
>
>-----Original Message-----
>From: [email-masked] [mailto:[email-masked]] On
>Behalf Of Silvano Gai
>Sent: Wednesday, November 01, 2006 9:07 PM
>To: [email-masked]
>Subject: [rbridge] Should we optimize the common case?
>
>
>With 16 bit addresses the current TRILL overhead over Ethernet is 20
>bytes. If we want to expand the RBridge addresses, it we will go to
>22-24 bytes.
>
>What customers are telling us is that they will deploy RBridges by
>creating an RBridge backbone in which all the links will be 10GE.
>
>They will connect regular bridges and host to the periphery of this
>backbone. 
>
>They will not mix backbone ports with access ports, because this screws
>up management, traffic engineering, debugging, and troubleshooting.
>Regular network design, easy to understand, is very important. Ports are
>cheap, labor is expensive.
>
>I am totally convinced that this will account for 90+ % of TRILL
>deployment. 
>
>I am wondering if it makes sense to have a solution highly optimized for
>such an environment.
>
>For example we can put the egress/ingress RBridge addresses in the outer
>MAC addresses and define a TRILL shim header that contains 1 byte of hop
>limit and 1 byte reserved. For this common case we will get:
>1) overhead of 16 bytes (4 to 8 bytes lower)
>2) nickname = MAC address, i.e no hash collision
>3) zero-conf achieved
>
>In the case we need to go over a shared media we will need to add
>another Ethernet encapsulation to carry the next hop address, i.e. 14
>bytes
>- total overhead will be 30 bytes
>
>Summarizing:
>- current proposal 20-24 bytes overhead
>- new proposal on point to point: 16 bytes
>- new proposal on shared media: 30 bytes
>
>Comments?
>
>-- Silvano
>
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Date: Mon, 06 Nov 2006 09:37:46 -0800
From: Dinesh G Dutt <[email-masked]>
To: [email-masked]
Subject: [rbridge] Comments on draft-ietf-trill-prob-01.txt
Status: RO
Content-Length: 3567

Hi,

Here are some comments based on the last call for 
draft-ietf-trill-prob-01.txt. Some general comments first.

- From my understanding of spanning tree, I think the document has 
multiple inaccuracies about the spanning tree protocol used in current 
802.1D bridges:
    - First, there is an assumption that there can be transient loops 
with spanning tree (Section 3.3). This is quite untrue. There is no 
chance of loops with spanning tree. There can be poor implementations or 
bugs that can cause loops, but spanning tree protocol itself cannot 
create loops.
    - Second, the convergence time of spanning tree is quite impressive 
these days, thanks to Rapid Spanning Tree (802.1w). It is in the order 
of sub-second.
    - Backup paths (section 2.3) have been deployed quite widely in 
Cisco switches using "uplinkfast" enhancement to STP.

- There is an incorrect use of terminology or concepts from IEEE 
standards. There has been extensive discussion on the mailing list about 
this. Some examples in this document:
    - Use of "cache", say in section 2.5. The correct terminology is 
"filtering database"
    - You talk about "autolearning" in section 3.1. I don't think the 
802.1D standard talks about "autolearning" What do you mean ?

More specific comments:

- You mention 802.1D as "Other Ethernet Extensions" (section 2.4) after 
having talked about spanning tree this far. 802.1D is the basic bridging 
standard and so is incorrect to refer to it under the section titled 
"Other Ethernet extensions".

- Section 2.4: There is no mention of other Ethernet protocols such as 
802.1au (Congestion Notification), 802.3ad (Link Aggregation), 802.3x 
(PAUSE). What is the relation of TRILL to these protocols ?

- Section 2.5:I don't know were these number come from, but with 256/512 
ports Ethernet switches available, it does not take 10,000 bridges to 
reach 100,000 nodes. I also don't understand if the mention of 1,000 
VLANs is intended as a limit. Many customers don't have enough of 4,000 
VLANs and deploy private VLANs.

- Section 2.5: You state: "Similar challenges exist in the ARP protocol, 
where link layer forwarding is not updated appropriately when nodes move 
to ports on other bridges. Again, the compartmentalization available in 
network routing, like that of network layer ASes, can help hide the 
effect of migration"

    I don't understand this para.

- Section 3.1: Please include that there must be support for non-IP 
protocols that are currently supported by Ethernet bridges.

- Section 3.2: Use of VLANs in TRILL needs to be clarified. For example, 
there can be a VLAN tag in the outer MAC header as well as the inner 
MAC. Again, this has been the subject of extensive discussion on the 
mailing list.

- Section 3.2: What about VLAN pruning ? Should that be supported as 
well by TRILL ?

- Section 3.3: Use of TTL alone isn't sufficient to fix problems caused 
by transient loops during topology changes. Again, this has been the 
subject of intense discussion on the mailing list. A form of interlock 
protocol must ensure that there are no transient broadcast or multicast 
loops during topology changes.

- Section 3.4: Interaction with spanning tree protocol as discussed 
under the subject "Traffic Storms" should be included here.

- Section 3.4: Please include RSTP in the list of protocols that cannot 
be modified. Current list is only STP & MSTP.

Dinesh

-- 
We make our world significant by the courage of our questions and by 
the depth of our answers.                               - Carl Sagan

Content-class: urn:content-classes:message
Date: Sun, 5 Nov 2006 22:50:52 -0800
From: "Silvano Gai" <[email-masked]>
To: "Eastlake III Donald-LDE008" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 5275

Donald,

The high end and the low end are extremely different.

The customers interested in TRILL are the Fortune 500 companies. Large
Enterprise networks and large data centers used to run Financial,
Insurance, Health, Chemical, Oil, Information and manufacturing
companies.

They have huge demand for high bandwidth and low latency.

Each of these companies spends millions each year in network operation
(OPEX) and millions in new equipment (CAPEX). In all of them OPEX is
much larger than CAPEX. They only buy major vendor equipments and they
install them according to the recommended vendor design guideline.
Typically they have an internal certification lab in which they test the
network configuration and the software releases before putting them in
production networks.

They have a very well defined concept of backbone ports and access
ports. All the backbone ports are in fiber at the highest possible speed
(today 10 GE). For the access port they use a mix of fiber and copper.
The backbone has a regular structure that matches the vendor design
guideline and the result of the certification experiment they have done
independently.

A network outage can cost millions/hour. 

There is no way you will see in one of these backbones a hub or any
other uncontrolled device. NEVER. 

That is the reason why I think this is the most important case for
TRILL.

More inline.

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Eastlake III Donald-LDE008
> Sent: Sunday, November 05, 2006 10:20 PM
> To: [email-masked]
> Subject: Re: [rbridge] Should we optimize the common case?
> 
> Silvano,
> 
> Why do you think that 90% of Rbridge deployment will be for this
unusual
> case? I mean, I have no problem with the belief that Rbridges would be
> better than bridges in this case but why shouldn't that be true of
less
> high end uses?
> 
> A while ago on this list I posted a rhetorical question as to why
> Rbriges shouldn't eventually replace all bridges. No one posted an
> answer.

This technology will start in the high end and move down to the lower
end. How low will it goes is a good question. 

The low end is extremely cost sensitive. When we buys a switch or a
router on the Internet for 50-100$, the COGS cannot be more that 15-30$,
even with low margins. This implies that few dollar more to increase the
memory size or the processor speed are a big deal. Add software
development cost. Couple this with the fact that today we have low cost
1GE switches used by low-end users that have problems pushing or pulling
more than few Mb/s. There is no bandwidth demand in the low end.
Spanning tree is just fine. Cost is the big issue. Moreover there is the
huge issue of training home/small office installers in this new
technology.

My 0.2 cents

-- Silvano

> 
> Why not specify Rbridges more or less as we have been for the common
> bridge case and, in the backbone case you are talking about, just drop
> the MAC addresses on the point-to-point links within the backbone?
> Doesn't that produce less overhead than your proposal below in both
the
> point-to-point and shared media cases?
> 
> Donald
> 
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Silvano Gai
> Sent: Wednesday, November 01, 2006 9:07 PM
> To: [email-masked]
> Subject: [rbridge] Should we optimize the common case?
> 
> 
> With 16 bit addresses the current TRILL overhead over Ethernet is 20
> bytes. If we want to expand the RBridge addresses, it we will go to
> 22-24 bytes.
> 
> What customers are telling us is that they will deploy RBridges by
> creating an RBridge backbone in which all the links will be 10GE.
> 
> They will connect regular bridges and host to the periphery of this
> backbone.
> 
> They will not mix backbone ports with access ports, because this
screws
> up management, traffic engineering, debugging, and troubleshooting.
> Regular network design, easy to understand, is very important. Ports
are
> cheap, labor is expensive.
> 
> I am totally convinced that this will account for 90+ % of TRILL
> deployment.
> 
> I am wondering if it makes sense to have a solution highly optimized
for
> such an environment.
> 
> For example we can put the egress/ingress RBridge addresses in the
outer
> MAC addresses and define a TRILL shim header that contains 1 byte of
hop
> limit and 1 byte reserved. For this common case we will get:
> 1) overhead of 16 bytes (4 to 8 bytes lower)
> 2) nickname = MAC address, i.e no hash collision
> 3) zero-conf achieved
> 
> In the case we need to go over a shared media we will need to add
> another Ethernet encapsulation to carry the next hop address, i.e. 14
> bytes
> - total overhead will be 30 bytes
> 
> Summarizing:
> - current proposal 20-24 bytes overhead
> - new proposal on point to point: 16 bytes
> - new proposal on shared media: 30 bytes
> 
> Comments?
> 
> -- Silvano
> 
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Date: Sun, 05 Nov 2006 22:31:40 -0800
From: Joe Touch <[email-masked]>
To: Eastlake III Donald-LDE008 <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] A thought about TTLs
Status: RO
Content-Length: 2295

This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig17CDDF7AE0F80163787BDBED
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

The whole point of a TTL is that things could change en-route, which
means that a rbridge might want to scope the TTL down, but this could
end up dropping a packet that would have had a legitimate, nonlooping
path that's unexpectedly longer later.

IMO, let the TTL be what it is - loop prevention for unicast, and
diameter scope for broad/multicast. Don't try to overthink it beyond that=
=2E

Joe

Eastlake III Donald-LDE008 wrote:
> Rbridges are in a fundamentally different position in deciding shim TTL=
s
> than IP hosts are in deciding IP TTLs. In particular, a host knows
> almost nothing about the routing situation while an Rbridge has explici=
t
> link state information.
>=20
> Thus it would be reasonable to recommend a TTL based on the expected
> number of hops for unicast or maximum expected number of hops for
> multicast/broadcast/flooded or on the diameter of the network (maximum
> number of Rbridge-Rbridge hops for the two most distant Rbridges) or th=
e
> like ... It would even be possible to have Rbridges trim back the TTL
> for the copy forwarding to a particularly short branch of a tree or eve=
n
> when forwarding along a unicast path if that path has gotten shorter.
> Such adjustment is probably too much work to mandate but it seems to me=

> that it should be allowable behavior.
>=20
> Thanks,
> Donald
>=20
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

--=20
----------------------------------------
Joe Touch
Sr. Network Engineer, USAF TSAT Space Segment

--------------enig17CDDF7AE0F80163787BDBED
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--------------enig17CDDF7AE0F80163787BDBED--

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 01:19:46 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 2538

Silvano,

Why do you think that 90% of Rbridge deployment will be for this unusual
case? I mean, I have no problem with the belief that Rbridges would be
better than bridges in this case but why shouldn't that be true of less
high end uses?

A while ago on this list I posted a rhetorical question as to why
Rbriges shouldn't eventually replace all bridges. No one posted an
answer.

Why not specify Rbridges more or less as we have been for the common
bridge case and, in the backbone case you are talking about, just drop
the MAC addresses on the point-to-point links within the backbone?
Doesn't that produce less overhead than your proposal below in both the
point-to-point and shared media cases?

Donald

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Silvano Gai
Sent: Wednesday, November 01, 2006 9:07 PM
To: [email-masked]
Subject: [rbridge] Should we optimize the common case?

With 16 bit addresses the current TRILL overhead over Ethernet is 20
bytes. If we want to expand the RBridge addresses, it we will go to
22-24 bytes.

What customers are telling us is that they will deploy RBridges by
creating an RBridge backbone in which all the links will be 10GE.

They will connect regular bridges and host to the periphery of this
backbone. 

They will not mix backbone ports with access ports, because this screws
up management, traffic engineering, debugging, and troubleshooting.
Regular network design, easy to understand, is very important. Ports are
cheap, labor is expensive.

I am totally convinced that this will account for 90+ % of TRILL
deployment. 

I am wondering if it makes sense to have a solution highly optimized for
such an environment.

For example we can put the egress/ingress RBridge addresses in the outer
MAC addresses and define a TRILL shim header that contains 1 byte of hop
limit and 1 byte reserved. For this common case we will get:
1) overhead of 16 bytes (4 to 8 bytes lower)
2) nickname = MAC address, i.e no hash collision
3) zero-conf achieved

In the case we need to go over a shared media we will need to add
another Ethernet encapsulation to carry the next hop address, i.e. 14
bytes
- total overhead will be 30 bytes

Summarizing:
- current proposal 20-24 bytes overhead
- new proposal on point to point: 16 bytes
- new proposal on shared media: 30 bytes

Comments?

-- Silvano

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Sun, 5 Nov 2006 22:16:10 -0800
From: "Silvano Gai" <[email-masked]>
To: "Eastlake III Donald-LDE008" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] WG last call commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-reqs-00.txt
Status: RO
Content-Length: 19991

Donald,

I think I agree with most of your comments, with one big exception.

I am not able to see the difference between "dropping a BPDU" or
"ignoring a BPDU".

IMO there are two possibilities:
1) we drop BPDUs
2) we process BPDUs

If we do 2), we can:
2.1) process BPDU using STP/RSTP
2.2) do other processing on the BPDU, not STP/RSTP related

If we don't want to do 2.1), let's just say it.
If we need to do 2.2), it is better we spell it out clearly, and not
hide it behind the word "ignore BPDUs".

This is such a crucial point to achieve:
a) Interoperability
b) A robust implementation

that we don't want to be vaguely defined.

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Eastlake III Donald-LDE008
> Sent: Sunday, November 05, 2006 3:22 PM
> To: [email-masked]
> Subject: Re: [rbridge] WG last call
>
commentsto:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-
> reqs-00.txt
> 
> Hi Silvano,
> 
> I think I agree with most of your comments but see a few notes at @@@
> 
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Silvano Gai
> Sent: Sunday, October 29, 2006 12:23 PM
> To: [email-masked]
> Subject: [rbridge] WG last call comments
>
to:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-reqs-00.
> txt
> 
> Comments inline marked "sgai n>"
> 
> -- Silvano
> 
> --------------------------------------------------------
> 
> ... snip ...
> 
> 1. Introduction
> 
>    The current dominant approach to segregating network traffic relies
>    on a hierarchical arrangement of bridges and routers.  Hierarchy is
>    further extended - both within routing protocols (such as IS-IS and
>    OSPF) and between routing protocols (for example, between IGPs and
>    BGP).  At least part of the current network structure is based on a
>    determined trade-off between limitations of IP routing and similar
>    disadvantages of 802 bridging.
> 
>    Bridging Limitations
> 
>    For example, bridged networks consist of single broadcast/flooding
>    domains.  Ethernet/802 encapsulation (on which bridging is based)
>    does not provide mechanisms for reducing the impact of looping data
>    traffic that may result from a transient change in network topology
>    and the existence of multiple paths.
> 
>    The impact of looping traffic is far worse with flooded or
broadcast
>    traffic as this results in exponentially increasing traffic load.
>    Consideration of the impacts of looping data lead to the use of
>    STP/RSTP to establish a connected - loop free - tree by disabling
>    forwarding on a subset of links that might create a loop.  This has
>    also the effect of eliminating redundant paths.
> 
> @@@ Also generally lowers aggregate throughput and increases latency
> through the net due to frames following suboptimal paths.
> 
>    Because of the potential for severe impact from looping traffic,
>    many (if not most) current bridge implementations stop forwarding
of
>    traffic frames following a topology change event and restart only
>    after STP/RSTP is complete.
> 
> Sgai 1> In STP there is no way of knowing when the convergence has
been
> achieved; a bridge does not know or care about the timers of other
> bridges. The state machines on the ports are run independently. If you
> refer to the Topology Change Notification Flag, its purpose is to
reduce
> the filtering database ageing time, not to signal if STP/RSTP is
> complete.
> 
>    As a result, the process of eliminating potential loops in existing
>    bridging deployments:
> 
>      1) Results in inefficient use of inter-bridge connections
>         and
>      2) Causes delays in forwarding traffic as a result of
>         changes in the network topology.
> 
> Sgai 2> 2) is not true in the RSTP case; as a matter of fact RSTP is
the
> fastest converging protocol available today.
> 
> @@@ I'm not sure why this and other documents put the emphasis they do
> on STP/RSTP convergence. Of course it depends some on just how
STP/RSTP
> is implemented and how other algorithms are implemented. Perhaps it
> stems from, as was pointed out early in the Rbridge effort, that the
> replacement of bridges with Rbrides typically divides what would have
> been one large spanning tree domain into a number of smaller ones
> interconnected by Rbridges. The STP/RSTP protocol within these small
> spanning tree domains will typically converge for them all in parallel
> more rapidly than the pre-existing larger single spanning tree
STP/RSTP
> convergence.
> 
>    The combined effect of broadcast/flooding traffic, and the use of
>    spanning trees for loop avoidance, sets practical limits on bridged
>    network size in the network hierarchy and results in inefficient
>    bandwidth use of inter-bridge connections. Inefficient inter-bridge
>    connection usage similarly limits the usefulness of bridging with
>    high-speed (and consequently high cost) interfaces.
> 
> 
> 
> 
> 
> 
> 
> Gray                      Expires March, 2007                 [Page 3]
> 
> Internet-Draft        TRILL Routing Requirements       September, 2006
> 
> 
>    IP Routing Issues
> 
>    For IP routed networks, any link (or subnet) must have at least one
>    unique prefix. This means that a node that moves from one IP subnet
> 
> sgai 3> in the case of IP instead of "node" is better to speak of
> "interface". It is the interface that has an address, not the node.
> 
>    to another must change its IP address. Also, nodes with multiple IP
>    subnet attachments must have multiple IP addresses.  In IP routed
>    networks, there are frequent trade-off considerations between using
>    smaller subnets (longer prefix length) to minimize wasted IP
address
>    space (as a result of unused addresses in the fixed address range
>    defined by the prefix and length) and using larger subnets (shorter
>    prefix length) to minimize the need for (changes in) configuration.
> 
>    In any case - with current IP routing technology - subnets must be
>    configured for each routed interface.
> 
>    Proposed Solution
> 
>    Using a hybrid of routing and bridging - an RBridge - we hope to
>    gain the benefits of both technologies, in particular, gaining the
>    bandwidth advantages of shortest path routing while retaning the
>    simplified configuration associated with bridging.
> 
> 1.1. Terminology
> 
>    The following terms are used in this document in the way that
>    they are defined in "TRILL RBridge Architecture" [TARCH]:
> 
>      ARP (Address Resolution Protocol)
>      Bridge Learning
>      Broadcast Domain
>      Broadcast Traffic
>      Cooperating RBridges
>      Egress RBridge
>      Ethernet
>      Flooded Traffic
>      Flooding
>      Frame
>      IGP (Interior Gateway Protocol)
>      Ingress RBridge
>      Ingress RBridge Tree
>      IS-IS (Intermediate System to Intermediate System)
>      ND (Neighbor Discovery)
>      OSPF (Open Shortest Path First)
>      Packet
> 
> Sgai 4> in the case of layer 2 networks is more appropriate to use the
> term frame, instead of packet.
> 
> @@@ Frame appears earlier in this list and I believe that both are
> properly defined in the architecture document.
> 
>      RBridge
>      SPF (Shortest Path First)
>      STP/RSTP (Spanning Tree Protocol/Rapid Spanning Tree Protocol)
>      TRILL (TRansport Interconnect over Lots of Links)
>      Unknown Destination
>      VLAN (Virtual Local Area Network)
> 
> 
> Gray                      Expires March, 2007                 [Page 4]
> 
> Internet-Draft        TRILL Routing Requirements       September, 2006
> 
> 
> 
> 1.2. Specific TRILL Goals
> 
>    (Near) Zero Configuration
> 
>    It is a TRILL requirement that it must be possible to deploy
RBridges
>    in at least a nominal set of potential deployment scenarios without
a
>    need to perform any configuration at each RBridge.  It is possible
to
>    meet this goal for a sub-set of all possible deployment scenarios
by
>    making realistic restrictions on deployment - such as restricting
the
>    deployment scenarios to exclude those involving a "trust model"
that
>    imposes a need for configuration of some form of "shared secret" or
>    other configuration required to restrict access to "trusted"
devices.
> 
>    It is also conceivable that a minimal configuration may be required
>    for deployment of an initial (set of) device(s) - with subsequently
>    deployed devices deriving that configuration information during the
>    process of - for example - peer discovery.  This would constitute a
>    mechanism for "near zero configuration".
> 
>    Efficient Unicast Bandwidth Usage
> 
>    For unicast, non-flooded traffic, RBridges are intended to merge
the
>    efficient bandwidth use of IP routing with the simplicity of
Ethernet
>    (or 802.1) bridging for networks possibly larger - and with greater
>    forwarding capacity - than is the case with these networks
presently.
> 
>    The approach that we will use in accomplishing this is based on the
>    idea of extending (one or more) link state routing protocol(s) to
>    include distribution of Ethernet/802 reachability information
between
>    RBridge instances.
> 
> Sgai 5> "RBridge instances" is not defined.
> 
> @@@ For a document at this level, perhaps it could just say
"RBridges".
> 
>    In addition, there may be specific requirements
>    imposed on the interactions between these extensions and the
Spanning
>    Tree Protocol (STP) and between RBridge instances and (potentially
>    co-located) IP routing instances.
> 
>    Potentially More Efficient Multicast and Broadcast Usage
> 
>    There are clear advantages to incorporating mechanisms for improved
>    efficiency in forwarding (layer 2) multicast frames and - possibly
>    in reducing the amount of broadcast traffic as well.  To the extent
>    that these efficiency improvements may be considered
"optimizations"
>    and may be defined orthogonally to the process of specifying basic
>    RBridge functionality, the potential to include these optimizations
>    is (highly) desirable, but not mandatory.
> 
>    Examples of this type of optimization include use of any intrinsic
>    multicast routing capabilities and optimizations of ARP/ND.
> 
> 
> 
> 
> 
> Gray                      Expires March, 2007                 [Page 5]
> 
> Internet-Draft        TRILL Routing Requirements       September, 2006
> 
> 
> 
>    Backward Compatibility
> 
>    RBridges must be fully compatible with current bridges, IPv4 and
>    IPv6 routers and endnodes.  They should be invisible to current IP
>    routers (just as bridges are), and like routers, they terminate a
>    bridged spanning tree.
> 
> Sgai 6> the concept of terminating a bridged spanning tree is to
vague,
> see also sgai 10.
> 
> @@@ I think that concept is generally understood to mean that they do
> not pass BPDUs. Perhaps "by not passing BPDUs" could be appended
above.
> 
>    Unlike Routers, RBridges do not terminate
>    a broadcast domain.
> 
> 
> 2. General Requirements Potentially Affecting Routing
> 
>    Candidate IGP Routing protocols - IS-IS or OSPF - must be evaluated
>    for compatibility with the above goals.
> 
>    For example, since IS-IS requires a unique System ID for each IS-IS
>    instance (at least within a "scoped" deployment), a requirement for
>    "(near) zero configuration" implies a need for mechanisms that
allow
>    auto-configuration and/or negotiation of these (scoped) unique IDs.
> 
>    Similar requirement must apply for OSPF as well, if selected.
> 
>    In addition, forwarding of protocol messages must be compatible
with
>    (or reasonably adaptable to) use of forwarding at layer 2, or there
>    must be a means for deriving suitable higher layer addresses for
the
>    purpose of protocol exchanges - without imposing the need to
manually
>    configure higher-layer addresses.
> 
> 
> 3. Link State Protocol Specific Requirements
> 
>    Assuming that link state routing protocols meet above requirements,
>    running a link state protocol among RBridges is straightforward.
It
>    is the same as running a level 1 routing protocol in an area.  This
>    would be theoretically true for either IS-IS or OSPF, assuming that
>    both of these meet the general requiremenst above.
> 
>    From the perspective of simply extending existing routing
protocols,
>    IS-IS is a more appropriate choice than OSPF because it is easy in
>    IS-IS to define new TLVs for use in carrying a new information
type.
> 
>    This document, however, does not mandate a specific link-state,
IGP,
>    routing protocol.  Instead, it sets forth the requirements that
will
>    apply to any link-state routing protocol that may be used.
> 
>    For implementations providing co-located Router/RBridge function,
>    it is necessary to have mechanisms for distinguishing any protocol
>    interactions in Routing instances from protocol interactions in the
>    co-located RBridge instance.  Specific mechanisms we will use are
>    very likely to be determined by the Link State Routing Protocol
that
> 
> 
> 
> Gray                      Expires March, 2007                 [Page 6]
> 
> Internet-Draft        TRILL Routing Requirements       September, 2006
> 
> 
> 
>    we select.  Potential distinguishing mechanisms include use of a
new
>    well-known Ethernet/802 multicast address, higher-layer protocol ID
>    or other - routing protocol specific - approaches.
> 
>    The mechanism chosen should be consistent with the TRILL goals.
If,
>    for example, a routing protocol specific approach required use of a
>    unique "area" identifier, the RBridge area identifier should be a
>    constant, well-known, value for all RBridges, and would not be one
>    that would ever appear as a real routing area identifer - in order
>    to allow for a potential for configuration-free operation.
> 
>    Information that RBridge link state information will carry
includes:
> 
>    o  layer 2 addresses of nodes within the domain which have
>       transmitted frames but have not transmitted ARP or ND replies
> 
>    o  layer 3, layer 2 addresses of IP nodes within the domain.  For
>       data compression, perhaps only the portion of the address
>       following the domain-wide prefix need be carried.  This will be
>       more of an issue for IPv6 than for IPv4.
> 
>    o  VLANs directly connected to this RBridge
> 
> 
> Sgai 7> The discussion about VLAN needs to be much more extensive. It
is
> clear from the mailing list discussion that VLANs can be used inside
the
> packet or in the Ethernet encapsulation of TRILL. These are two
> different kinds of VLANs and their requirement need to be stated
> separately. Q in Q needs also to be discussed. I propose to define
inner
> and outer VLANs (with reference to the position of the tag in the
frame.
> 
> @@@ Based on the discussions that have been going on, I feel a bit
> clearer about VLANs than I used to. It seems hard to make a simple,
> brief, definiteive statement about Rbridges and VLANs, except that all
> the VLAN stuff needs to be configured, because there are so many
> different scenarios. I agree that a fairly extensive discussion of
VLANs
> should appear somewhere but I don't think this is the right document
for
> that. The requirement on the Rbridge routing expressed here is that it
> needs, one way or the other, to be able to handle station
identification
> not just as a MAC address but as a VLAN tag and MAC address.
> 
>    Endnode information need only be delivered to RBridges supporting
>    the VLAN in which the endnode resides.
> 
> Sgai 8> endnode -> station
> 
>    So, for instance, if endnode
>    E is discovered through a VLAN A frame, then E's location need only
>    be delivered to other RBridges that are attached to VLAN A links.
> 
>    Given that RBridges must support delivery only to links within a
VLAN
> 
>    (for multicast or unknown frames marked with the VLAN's tag), this
>    mechanism can be used to advertise endnode information solely to
the
>    RBridges "within" a VLAN (i.e. - having connectivity or
configuration
>    that assoicates them with a VLAN).
> 
>    Although a separate instance of
>    the link state protocol could be run for this purpose, the topology
>    is so restricted (just a single broadcast domain), that it may be
>    preferable to define special case mechanisms whereby each DR
> 
> sgai 9> DR? Designated RBridge???
> 
> @@@ Yes, I think it should be spelled out.
> 
>    advertises attached endnodes, and receives explicit acknolegments
>    from other RBridges.
> 
> 
> 4. Potential Issues
> 
> 4.1. Interactions with Spanning Tree Forwarding and Bridge Learning
> 
>    Spanning tree forwarding applies within parts of the RBridge
domain,
>    where two or more RBridges are connected by a link that includes
>    multiple 802.1 bridges.
> 
> 
> 
> 
> Gray                      Expires March, 2007                 [Page 7]
> 
> Internet-Draft        TRILL Routing Requirements       September, 2006
> 
> 
> 
>    In order to simplify the interactions between RBridges and bridges
-
>    in particular, relative to spanning tree forwarding - RBridges do
not
>    actively participate in spanning tree protocol with 802.1 bridges.
> 
> Sgai 10> "do not participate actively" can mean two different things:
> 1) they drop the BPDU
> 2) they propagate the BPDUs as regular multicast frames
> 
> can you clarify?
> 
> @@@ They block BPDUs but might do something based on their receipt.
> Another way to look at it is that an Rbridge with N interfaces, each
> connected to bridged links, looks like N different leaf nodes to the
> STP/RSTP running on those bridged links. (Could be N different
spanning
> trees or less than that if some of these links are connected or
bridged
> to each other.)
> 
>    Hence, from the Link State Routing protocol perspective, the
protocol
>    will be able to treat spanning tree links as indistinguishable from
>    any other Ethernet/802.1 link, in the same way that routing
protocols
>    do today.
> 
>    However, support for multi-pathing is potentially problematic and
is
>    assumed - in this document - to be a non-goal.  Multi-path
forwarding
>    has the potential to confound the bridge learning process.
> 
> Sgai 11> multi-pathing a non-goal? This seems to be in contradiction
> with what said before. Is it because of the designated RBridge?
> 
> Sgai 12> the requirement for a designated RBridge is not really
> discussed here. In particular there is no discussion of the property
of
> the election algorithm, which must avoid broadcast storms.
> 
> @@@ Seems like the ideal thing would be to state the requirements that
> having a Designated Rbridge meets rather then the mechanism of having
a
> Designated Rbridge.
> 
> @@@ Some general statement about convergence and an acceptably low
level
> of overhead traffic for all of the mechanisms associated with the
> routing protocol might be reasonable.
> 
> 
> 4.2. Computing Routes
> 
>    RBridges must calculate an L2 "route table" consisting of Next Hop
>    information for each known L2 unicast destination address within a
>    (possibly VLAN scoped) broadcast domain. This is computed using a
>    routing protocol's SPF algorithm and based on destination layer 2
>    address reachability advertisements.
> 
> Sgai 13> from the previous sentence it seems that we are computing the
> topology among all the MAC addresses. What we really do is compute the
> topology among RBridges and then tag it with reachable MAC addresses.
> >From the SPF perspective, it is a much easier problem.
> 
> ... snip ...
> 
> 
> @@@ Thanks,
> @@@ Donald
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Mon, 6 Nov 2006 01:13:49 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: [rbridge] A thought about TTLs
Status: RO
Content-Length: 857

Rbridges are in a fundamentally different position in deciding shim TTLs
than IP hosts are in deciding IP TTLs. In particular, a host knows
almost nothing about the routing situation while an Rbridge has explicit
link state information.

Thus it would be reasonable to recommend a TTL based on the expected
number of hops for unicast or maximum expected number of hops for
multicast/broadcast/flooded or on the diameter of the network (maximum
number of Rbridge-Rbridge hops for the two most distant Rbridges) or the
like ... It would even be possible to have Rbridges trim back the TTL
for the copy forwarding to a particularly short branch of a tree or even
when forwarding along a unicast path if that path has gotten shorter.
Such adjustment is probably too much work to mandate but it seems to me
that it should be allowable behavior.

Thanks,
Donald

Content-class: urn:content-classes:message
Date: Sun, 5 Nov 2006 15:33:56 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Silvano Gai" <[email-masked]>, "Larry Kreeger (kreeger)" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st Issue
Status: RO
Content-Length: 292

I don't agree with your characterization of BCN having 'hard real time'
limits. It would be more accurate to state that the quicker the response
the more effective it is in squelching congestion.

Pat Thaler will be explaining 802.1au for IETF folks at the tsvarea
session Monday evening.

Content-class: urn:content-classes:message
Date: Sun, 5 Nov 2006 18:21:56 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] WG last call comments to:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-reqs-00.txt
Status: RO
Content-Length: 18035

Hi Silvano,

I think I agree with most of your comments but see a few notes at @@@

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Silvano Gai
Sent: Sunday, October 29, 2006 12:23 PM
To: [email-masked]
Subject: [rbridge] WG last call comments
to:http://www.ietf.org/internet-drafts/draft-ietf-trill-routing-reqs-00.
txt

Comments inline marked "sgai n>"

-- Silvano

--------------------------------------------------------

... snip ...

1. Introduction 

   The current dominant approach to segregating network traffic relies
   on a hierarchical arrangement of bridges and routers.  Hierarchy is
   further extended - both within routing protocols (such as IS-IS and
   OSPF) and between routing protocols (for example, between IGPs and
   BGP).  At least part of the current network structure is based on a 
   determined trade-off between limitations of IP routing and similar 
   disadvantages of 802 bridging.

   Bridging Limitations

   For example, bridged networks consist of single broadcast/flooding
   domains.  Ethernet/802 encapsulation (on which bridging is based) 
   does not provide mechanisms for reducing the impact of looping data 
   traffic that may result from a transient change in network topology
   and the existence of multiple paths.

   The impact of looping traffic is far worse with flooded or broadcast 
   traffic as this results in exponentially increasing traffic load.  
   Consideration of the impacts of looping data lead to the use of 
   STP/RSTP to establish a connected - loop free - tree by disabling 
   forwarding on a subset of links that might create a loop.  This has
   also the effect of eliminating redundant paths.

@@@ Also generally lowers aggregate throughput and increases latency
through the net due to frames following suboptimal paths.

   Because of the potential for severe impact from looping traffic, 
   many (if not most) current bridge implementations stop forwarding of 
   traffic frames following a topology change event and restart only 
   after STP/RSTP is complete.

Sgai 1> In STP there is no way of knowing when the convergence has been
achieved; a bridge does not know or care about the timers of other
bridges. The state machines on the ports are run independently. If you
refer to the Topology Change Notification Flag, its purpose is to reduce
the filtering database ageing time, not to signal if STP/RSTP is
complete.

   As a result, the process of eliminating potential loops in existing 
   bridging deployments:

     1) Results in inefficient use of inter-bridge connections 
        and
     2) Causes delays in forwarding traffic as a result of 
        changes in the network topology.

Sgai 2> 2) is not true in the RSTP case; as a matter of fact RSTP is the
fastest converging protocol available today. 

@@@ I'm not sure why this and other documents put the emphasis they do
on STP/RSTP convergence. Of course it depends some on just how STP/RSTP
is implemented and how other algorithms are implemented. Perhaps it
stems from, as was pointed out early in the Rbridge effort, that the
replacement of bridges with Rbrides typically divides what would have
been one large spanning tree domain into a number of smaller ones
interconnected by Rbridges. The STP/RSTP protocol within these small
spanning tree domains will typically converge for them all in parallel
more rapidly than the pre-existing larger single spanning tree STP/RSTP
convergence.

   The combined effect of broadcast/flooding traffic, and the use of 
   spanning trees for loop avoidance, sets practical limits on bridged 
   network size in the network hierarchy and results in inefficient 
   bandwidth use of inter-bridge connections. Inefficient inter-bridge 
   connection usage similarly limits the usefulness of bridging with 
   high-speed (and consequently high cost) interfaces.

Gray                      Expires March, 2007                 [Page 3]

Internet-Draft        TRILL Routing Requirements       September, 2006

   IP Routing Issues

   For IP routed networks, any link (or subnet) must have at least one 
   unique prefix. This means that a node that moves from one IP subnet

sgai 3> in the case of IP instead of "node" is better to speak of
"interface". It is the interface that has an address, not the node.
 
   to another must change its IP address. Also, nodes with multiple IP
   subnet attachments must have multiple IP addresses.  In IP routed
   networks, there are frequent trade-off considerations between using 
   smaller subnets (longer prefix length) to minimize wasted IP address 
   space (as a result of unused addresses in the fixed address range 
   defined by the prefix and length) and using larger subnets (shorter
   prefix length) to minimize the need for (changes in) configuration.

   In any case - with current IP routing technology - subnets must be 
   configured for each routed interface.

   Proposed Solution

   Using a hybrid of routing and bridging - an RBridge - we hope to
   gain the benefits of both technologies, in particular, gaining the
   bandwidth advantages of shortest path routing while retaning the
   simplified configuration associated with bridging.

1.1. Terminology

   The following terms are used in this document in the way that
   they are defined in "TRILL RBridge Architecture" [TARCH]:

     ARP (Address Resolution Protocol)
     Bridge Learning
     Broadcast Domain 
     Broadcast Traffic
     Cooperating RBridges
     Egress RBridge
     Ethernet
     Flooded Traffic
     Flooding
     Frame 
     IGP (Interior Gateway Protocol)
     Ingress RBridge
     Ingress RBridge Tree
     IS-IS (Intermediate System to Intermediate System)
     ND (Neighbor Discovery)
     OSPF (Open Shortest Path First)
     Packet 

Sgai 4> in the case of layer 2 networks is more appropriate to use the
term frame, instead of packet.

@@@ Frame appears earlier in this list and I believe that both are
properly defined in the architecture document.

     RBridge
     SPF (Shortest Path First)
     STP/RSTP (Spanning Tree Protocol/Rapid Spanning Tree Protocol)
     TRILL (TRansport Interconnect over Lots of Links)
     Unknown Destination
     VLAN (Virtual Local Area Network)

Gray                      Expires March, 2007                 [Page 4]

Internet-Draft        TRILL Routing Requirements       September, 2006

1.2. Specific TRILL Goals

   (Near) Zero Configuration

   It is a TRILL requirement that it must be possible to deploy RBridges
   in at least a nominal set of potential deployment scenarios without a
   need to perform any configuration at each RBridge.  It is possible to
   meet this goal for a sub-set of all possible deployment scenarios by
   making realistic restrictions on deployment - such as restricting the
   deployment scenarios to exclude those involving a "trust model" that
   imposes a need for configuration of some form of "shared secret" or 
   other configuration required to restrict access to "trusted" devices.

   It is also conceivable that a minimal configuration may be required
   for deployment of an initial (set of) device(s) - with subsequently
   deployed devices deriving that configuration information during the
   process of - for example - peer discovery.  This would constitute a
   mechanism for "near zero configuration".

   Efficient Unicast Bandwidth Usage

   For unicast, non-flooded traffic, RBridges are intended to merge the
   efficient bandwidth use of IP routing with the simplicity of Ethernet
   (or 802.1) bridging for networks possibly larger - and with greater 
   forwarding capacity - than is the case with these networks presently.
 
   The approach that we will use in accomplishing this is based on the
   idea of extending (one or more) link state routing protocol(s) to
   include distribution of Ethernet/802 reachability information between
   RBridge instances.  

Sgai 5> "RBridge instances" is not defined.

@@@ For a document at this level, perhaps it could just say "RBridges".

   In addition, there may be specific requirements
   imposed on the interactions between these extensions and the Spanning
   Tree Protocol (STP) and between RBridge instances and (potentially
   co-located) IP routing instances.

   Potentially More Efficient Multicast and Broadcast Usage

   There are clear advantages to incorporating mechanisms for improved
   efficiency in forwarding (layer 2) multicast frames and - possibly
   in reducing the amount of broadcast traffic as well.  To the extent
   that these efficiency improvements may be considered "optimizations"
   and may be defined orthogonally to the process of specifying basic
   RBridge functionality, the potential to include these optimizations
   is (highly) desirable, but not mandatory.

   Examples of this type of optimization include use of any intrinsic 
   multicast routing capabilities and optimizations of ARP/ND.

Gray                      Expires March, 2007                 [Page 5]

Internet-Draft        TRILL Routing Requirements       September, 2006

   Backward Compatibility

   RBridges must be fully compatible with current bridges, IPv4 and
   IPv6 routers and endnodes.  They should be invisible to current IP
   routers (just as bridges are), and like routers, they terminate a
   bridged spanning tree.  

Sgai 6> the concept of terminating a bridged spanning tree is to vague,
see also sgai 10.

@@@ I think that concept is generally understood to mean that they do
not pass BPDUs. Perhaps "by not passing BPDUs" could be appended above.

   Unlike Routers, RBridges do not terminate
   a broadcast domain.

2. General Requirements Potentially Affecting Routing

   Candidate IGP Routing protocols - IS-IS or OSPF - must be evaluated
   for compatibility with the above goals.

   For example, since IS-IS requires a unique System ID for each IS-IS
   instance (at least within a "scoped" deployment), a requirement for 
   "(near) zero configuration" implies a need for mechanisms that allow
   auto-configuration and/or negotiation of these (scoped) unique IDs.

   Similar requirement must apply for OSPF as well, if selected.

   In addition, forwarding of protocol messages must be compatible with
   (or reasonably adaptable to) use of forwarding at layer 2, or there
   must be a means for deriving suitable higher layer addresses for the
   purpose of protocol exchanges - without imposing the need to manually
   configure higher-layer addresses.

3. Link State Protocol Specific Requirements

   Assuming that link state routing protocols meet above requirements,
   running a link state protocol among RBridges is straightforward.  It 
   is the same as running a level 1 routing protocol in an area.  This 
   would be theoretically true for either IS-IS or OSPF, assuming that
   both of these meet the general requiremenst above. 

   From the perspective of simply extending existing routing protocols,
   IS-IS is a more appropriate choice than OSPF because it is easy in 
   IS-IS to define new TLVs for use in carrying a new information type.

   This document, however, does not mandate a specific link-state, IGP,
   routing protocol.  Instead, it sets forth the requirements that will
   apply to any link-state routing protocol that may be used.

   For implementations providing co-located Router/RBridge function,
   it is necessary to have mechanisms for distinguishing any protocol 
   interactions in Routing instances from protocol interactions in the
   co-located RBridge instance.  Specific mechanisms we will use are
   very likely to be determined by the Link State Routing Protocol that

Gray                      Expires March, 2007                 [Page 6]

Internet-Draft        TRILL Routing Requirements       September, 2006

   we select.  Potential distinguishing mechanisms include use of a new
   well-known Ethernet/802 multicast address, higher-layer protocol ID
   or other - routing protocol specific - approaches.

   The mechanism chosen should be consistent with the TRILL goals.  If, 
   for example, a routing protocol specific approach required use of a
   unique "area" identifier, the RBridge area identifier should be a 
   constant, well-known, value for all RBridges, and would not be one 
   that would ever appear as a real routing area identifer - in order 
   to allow for a potential for configuration-free operation. 

   Information that RBridge link state information will carry includes: 

   o  layer 2 addresses of nodes within the domain which have 
      transmitted frames but have not transmitted ARP or ND replies  

   o  layer 3, layer 2 addresses of IP nodes within the domain.  For 
      data compression, perhaps only the portion of the address 
      following the domain-wide prefix need be carried.  This will be 
      more of an issue for IPv6 than for IPv4. 

   o  VLANs directly connected to this RBridge 

Sgai 7> The discussion about VLAN needs to be much more extensive. It is
clear from the mailing list discussion that VLANs can be used inside the
packet or in the Ethernet encapsulation of TRILL. These are two
different kinds of VLANs and their requirement need to be stated
separately. Q in Q needs also to be discussed. I propose to define inner
and outer VLANs (with reference to the position of the tag in the frame.

@@@ Based on the discussions that have been going on, I feel a bit
clearer about VLANs than I used to. It seems hard to make a simple,
brief, definiteive statement about Rbridges and VLANs, except that all
the VLAN stuff needs to be configured, because there are so many
different scenarios. I agree that a fairly extensive discussion of VLANs
should appear somewhere but I don't think this is the right document for
that. The requirement on the Rbridge routing expressed here is that it
needs, one way or the other, to be able to handle station identification
not just as a MAC address but as a VLAN tag and MAC address.

   Endnode information need only be delivered to RBridges supporting
   the VLAN in which the endnode resides. 

Sgai 8> endnode -> station

   So, for instance, if endnode
   E is discovered through a VLAN A frame, then E's location need only
   be delivered to other RBridges that are attached to VLAN A links. 

   Given that RBridges must support delivery only to links within a VLAN

   (for multicast or unknown frames marked with the VLAN's tag), this 
   mechanism can be used to advertise endnode information solely to the
   RBridges "within" a VLAN (i.e. - having connectivity or configuration
   that assoicates them with a VLAN). 

   Although a separate instance of 
   the link state protocol could be run for this purpose, the topology 
   is so restricted (just a single broadcast domain), that it may be 
   preferable to define special case mechanisms whereby each DR 

sgai 9> DR? Designated RBridge???

@@@ Yes, I think it should be spelled out.

   advertises attached endnodes, and receives explicit acknolegments
   from other RBridges. 

4. Potential Issues 

4.1. Interactions with Spanning Tree Forwarding and Bridge Learning 

   Spanning tree forwarding applies within parts of the RBridge domain,
   where two or more RBridges are connected by a link that includes
   multiple 802.1 bridges.

Gray                      Expires March, 2007                 [Page 7]

Internet-Draft        TRILL Routing Requirements       September, 2006

   In order to simplify the interactions between RBridges and bridges -
   in particular, relative to spanning tree forwarding - RBridges do not
   actively participate in spanning tree protocol with 802.1 bridges.

Sgai 10> "do not participate actively" can mean two different things:
1) they drop the BPDU
2) they propagate the BPDUs as regular multicast frames

can you clarify?

@@@ They block BPDUs but might do something based on their receipt.
Another way to look at it is that an Rbridge with N interfaces, each
connected to bridged links, looks like N different leaf nodes to the
STP/RSTP running on those bridged links. (Could be N different spanning
trees or less than that if some of these links are connected or bridged
to each other.)

   Hence, from the Link State Routing protocol perspective, the protocol
   will be able to treat spanning tree links as indistinguishable from
   any other Ethernet/802.1 link, in the same way that routing protocols
   do today.

   However, support for multi-pathing is potentially problematic and is 
   assumed - in this document - to be a non-goal.  Multi-path forwarding
   has the potential to confound the bridge learning process.

Sgai 11> multi-pathing a non-goal? This seems to be in contradiction
with what said before. Is it because of the designated RBridge?

Sgai 12> the requirement for a designated RBridge is not really
discussed here. In particular there is no discussion of the property of
the election algorithm, which must avoid broadcast storms.

@@@ Seems like the ideal thing would be to state the requirements that
having a Designated Rbridge meets rather then the mechanism of having a
Designated Rbridge.

@@@ Some general statement about convergence and an acceptably low level
of overhead traffic for all of the mechanisms associated with the
routing protocol might be reasonable.

4.2. Computing Routes

   RBridges must calculate an L2 "route table" consisting of Next Hop 
   information for each known L2 unicast destination address within a 
   (possibly VLAN scoped) broadcast domain. This is computed using a
   routing protocol's SPF algorithm and based on destination layer 2
   address reachability advertisements.

Sgai 13> from the previous sentence it seems that we are computing the
topology among all the MAC addresses. What we really do is compute the
topology among RBridges and then tag it with reachable MAC addresses.
>From the SPF perspective, it is a much easier problem.

... snip ...

@@@ Thanks,
@@@ Donald

Date: Sun, 05 Nov 2006 12:51:06 -0800
From: [email-masked]
To: "Gray, Eric" <[email-masked]>
Priority: normal
Cc: [email-masked]
Subject: Re: [rbridge] How many trees, and per what
Status: RO
Content-Length: 3546

Hopefully by "very similar" understanding of what we are talking about, you mean "identical". If there is some disconnect
over what we understand the technical proposal to be, we should clear that up before trying to argue the merits
of the technical proposal.

Radia

----- Original Message -----
From: "Gray, Eric" <[email-masked]>
Date: Sunday, November 5, 2006 12:38 pm
Subject: Re: [rbridge] How many trees, and per what

> Radia,
> 
> 	I think we have a very similar understanding of what "tree"
> means.  
> 
> 	The step from a uni-directional "tree" rooted at the local
> ingress to a bi-directional "tree" - potentially rooted elsewhere
> - is, IMO, a very big step.
> 
> 	Therefore, again IMO, this is something we need to decide -
> soon - hence it is something we should talk about this week.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked] [[email-masked]] 
> --> Sent: Sunday, November 05, 2006 2:25 PM
> --> To: Gray, Eric
> --> Cc: Sanjay Sane (sanjays); Russ White; [email-masked]
> --> Subject: Re: RE: [rbridge] How many trees, and per what
> --> 
> --> What I think an ingress RBridge tree is, is the following:
> --> 
> --> Suppose you have an RBridge R. Everyone calculates an SPF 
> --> tree with R as the root, with some deterministic
> --> tie-breaker in the case of two equal cost paths from R to 
> --> some node N, such as the ID of the parent. For instance,
> --> if you can attach N to the tree with either parent P1 or 
> --> P2, and get the same minimal cost from R to N, you
> --> choose the parent with lowest ID to attach N to.
> --> 
> --> So that's the ingress RBridge tree rooted at R. If it's 
> --> really an ingress tree it could be thought of as unidirectional,
> --> since traffic would only originate at R.
> --> 
> --> If instead you go with the proposal that allows the ingress 
> --> RBridge R to select a different tree for a multicast than
> --> the one rooted at R, so it selects, say, the tree rooted at 
> --> R2, then what we mean by a tree is a *bidirectional* tree
> --> rooted at R2.
> --> 
> --> If the trees are bidirectional, the calculation of the tree 
> --> is the same (do SPF with R2 as root). To figure out
> --> which of your own links are in the R2 tree, you look at 
> --> yourself in that tree, and use the port (neighbor) that connects
> --> you to your parent in the tree, and all the ports 
> --> (neighbors) that connect children in the tree to you. Those are
> --> your links in the bidirectional tree.
> --> 
> --> For forwarding on a bidirectional tree, if you receive a 
> --> packet marked as "use tree R2" from a neighbor that is
> --> not one of the R2-tree links, then you discard the packet. 
> --> Otherwise, you forward the packet onto all the other
> --> links in the R2-tree other than the one you got it from.
> --> 
> --> I am really mystified as to what other definition there 
> --> might be of trees. So please explain if you mean something else.
> --> 
> --> Thanks,
> --> 
> --> Radia
> --> 
> --> 
> --> 
> --> ----- Original Message -----
> --> From: "Gray, Eric" <[email-masked]>
> --> Date: Sunday, November 5, 2006 10:04 am
> --> Subject: RE: [rbridge] How many trees, and per what
> --> 
> --> > Clearly one of the things we need to talk about this week is 
> what 
> --> > exactlydo we mean by ingress rbridge tree. 
> --> > 
> --> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 

From: "Gray, Eric" <[email-masked]>
To: [email-masked], "Gray, Eric" <[email-masked]>
Date: Sun, 5 Nov 2006 15:38:50 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] How many trees, and per what
Status: RO
Content-Length: 2817

Radia,

	I think we have a very similar understanding of what "tree"
means.  

	The step from a uni-directional "tree" rooted at the local
ingress to a bi-directional "tree" - potentially rooted elsewhere
- is, IMO, a very big step.

	Therefore, again IMO, this is something we need to decide -
soon - hence it is something we should talk about this week.

--
Eric

--> -----Original Message-----
--> From: [email-masked] [mailto:[email-masked]] 
--> Sent: Sunday, November 05, 2006 2:25 PM
--> To: Gray, Eric
--> Cc: Sanjay Sane (sanjays); Russ White; [email-masked]
--> Subject: Re: RE: [rbridge] How many trees, and per what
--> 
--> What I think an ingress RBridge tree is, is the following:
--> 
--> Suppose you have an RBridge R. Everyone calculates an SPF 
--> tree with R as the root, with some deterministic
--> tie-breaker in the case of two equal cost paths from R to 
--> some node N, such as the ID of the parent. For instance,
--> if you can attach N to the tree with either parent P1 or 
--> P2, and get the same minimal cost from R to N, you
--> choose the parent with lowest ID to attach N to.
--> 
--> So that's the ingress RBridge tree rooted at R. If it's 
--> really an ingress tree it could be thought of as unidirectional,
--> since traffic would only originate at R.
--> 
--> If instead you go with the proposal that allows the ingress 
--> RBridge R to select a different tree for a multicast than
--> the one rooted at R, so it selects, say, the tree rooted at 
--> R2, then what we mean by a tree is a *bidirectional* tree
--> rooted at R2.
--> 
--> If the trees are bidirectional, the calculation of the tree 
--> is the same (do SPF with R2 as root). To figure out
--> which of your own links are in the R2 tree, you look at 
--> yourself in that tree, and use the port (neighbor) that connects
--> you to your parent in the tree, and all the ports 
--> (neighbors) that connect children in the tree to you. Those are
--> your links in the bidirectional tree.
--> 
--> For forwarding on a bidirectional tree, if you receive a 
--> packet marked as "use tree R2" from a neighbor that is
--> not one of the R2-tree links, then you discard the packet. 
--> Otherwise, you forward the packet onto all the other
--> links in the R2-tree other than the one you got it from.
--> 
--> I am really mystified as to what other definition there 
--> might be of trees. So please explain if you mean something else.
--> 
--> Thanks,
--> 
--> Radia
--> 
--> 
--> 
--> ----- Original Message -----
--> From: "Gray, Eric" <[email-masked]>
--> Date: Sunday, November 5, 2006 10:04 am
--> Subject: RE: [rbridge] How many trees, and per what
--> 
--> > Clearly one of the things we need to talk about this week is what 
--> > exactlydo we mean by ingress rbridge tree. 
--> > 
--> 

Date: Sun, 05 Nov 2006 21:24:40 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "Larry Kreeger (kreeger)" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] LIDs
Status: RO
Content-Length: 2720

I agree that LIDs can help to improve large switches scalability.
Guillermo

Larry Kreeger (kreeger) escribi?:
> Caitlin Bestler wrote on Friday, November 03, 2006 9:07 AM:
>
>   
>> Larry Kreeger (kreeger) wrote:
>>     
>>> Hi,
>>>
>>> I was catching up on old RBridge threads and saw this one about LIDs.
>>>
>>> LIDs can be useful in reducing costs in large switches where the
>>> entire (potentially large) local MAC table would not need to be
>>> present in every module of the system.  In fact it could probably
>>> eliminate the need to keep locally learned MACs in hardware at all.
>>> Assuming a switch with 16 slots and
>>> 48 ports per linecard, and servers running 16 virtual machines each
>>> connected to the ports, the number of local MACs would be 16*48*16=
>>> 12,288.  With 48 bits per address, that is ~59kbits.
>>>
>>> With LIDs, an entry is need only per port, not per local MAC.
>>>  So given a 16 bit LID, only 16 cards * 48 ports * 16 bits =
>>> ~12kbits, a savings of ~47kbits. 
>>>
>>> The more locally attached MACs, the bigger the savings.
>>>
>>>       
>> Instead of keeping the MAC to Port mapping in the egress RBridge you
>> instead keep it in each ingress rbridge that has learned of this
>> rbridge. I'm not seeing a net savings in memory costs anywhere. There
>> is certainly a potential latency benefit, but is there really one
>> that is valid over the desired lifespan of the protocol?    
>>     
>
> The ingress RBridge must already have a mapping from MAC to egress
> RBridge nickname.  So, the table must only be widened to include the LID
> - which is much smaller (depending on the size of the LID) than the MAC
> to port mapping needed at the egress RBridge.
>
> Also, the size of the table at the ingress RBridge depends on how many
> end stations are being actively communicated with from that RBridge.  If
> the ingress RBridge is a distributed system, then each module (e.g.
> ASIC) only needs to populate the table with mappings for the active
> flows through that part of the system.  If we assume that every end
> station is not directly communicating with every other end station, then
> different entries would exist in each MAC -> Egress RBridge/LID table.
> This allows a large distributed system to scale up without requiring
> each ASIC to increase its table size - because the mapping to LID is
> spread out versus being concentrated at the inter-RBridge port ASICs of
> a large RBridge.
>
> It all depends on ratio of RBridge size (locally MAC addresses) versus
> the number of flow active.
>
>  - Larry
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   

From: "Gray, Eric" <[email-masked]>
To: Dinesh G Dutt <[email-masked]>, Radia Perlman <[email-masked]>
Date: Sun, 5 Nov 2006 15:23:29 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 3751

I think this also needs to be something we discuss this week. 

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Dinesh G Dutt
--> Sent: Tuesday, October 31, 2006 10:25 AM
--> To: Radia Perlman
--> Cc: [email-masked]
--> Subject: Re: [rbridge] New shim header proposal---without 
--> F-tag field
--> 
--> I hit "send" too soon. We talked about an additional bit in 
--> the header 
--> to identify a multicast frame. Did you see no need for that ?
--> 
--> Dinesh
--> Radia Perlman wrote:
--> > After talking to Silvano and Dinesh to get them to 
--> explain to me why
--> > the use of F-tag didn't multiply the number of trees that RBridges
--> > needed to compute by the number of F-tag values, they were able to
--> > explain to me why they wanted the F-tag. Here is a proposal to
--> > get the functionality they want without the use of F-tag.
--> >
--> > ***********************
--> >
--> > Motivation for F-tag
--> >
--> > They want to be able to do multipathing on multicast. We 
--> can already
--> > do multipathing on unicast by having an RBridge keep 
--> multiple equal
--> > cost (or near equal cost) paths to destination D, and 
--> split traffic
--> > however it wants. But if we have a single tree for all multicast
--> > with ingress RBridge R1, then all multicast traffic has to use
--> > the same links. The original proposal was to use F-tag as 
--> a selector
--> > for a tree. But the modified proposal is to use the 
--> "egress RBridge"
--> > field, which wasn't all that useful for multicast, as a 
--> "tree selector".
--> >
--> > ******************************
--> >
--> > So the proposal is:
--> >
--> > In the shim header will only be:
--> > 1) 16-bit ingress RBridge
--> > 2) 16-bit egress RBridge
--> > 3) TTL
--> >
--> >
--> > How these fields will be used in order to do multipathing:
--> >
--> > a) RBridges calculate a single tree for each ingress RBridge
--> >
--> > b) For unicast, an RBridge can calculate multiple equal-cost
--> > paths to the destination (or near-equal cost), and split 
--> traffic. That 
--> > is how
--> > we'd get multipathing for unicast. If S7 has two ways to get to 
--> > destination D,
--> > it can send some of its traffic one way, some of it the 
--> other. This is 
--> > solely
--> > S7's choice and doesn't need to be coordinated with any 
--> other switches.
--> >
--> > c) For multicast, we can provide multipathing by letting 
--> the ingress RBridge
--> > choose the distribution tree.
--> > The tree used will be indicated by the "egress RBridge"
--> > field. So, if S3 receives a multicast packet from an 
--> endnode, it puts
--> > "S3" as "ingress RBridge", but selects a tree by whatever means it
--> > wants, and puts, say, "S1" into "egress RBridge". That 
--> way the packet
--> > will be forwarded based on the tree calculated using S1 
--> as the root.
--> >
--> > With this proposal, we get multipathing for multicast 
--> without configuration.
--> > The same space used for RBridge nicknames can be used for 
--> choosing the
--> > tree for multicast packets. The number of trees to be 
--> calculated does
--> > not change---it is still per ingress RBridge.
--> >
--> > Radia
--> >
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> >
--> >   
--> 
--> -- 
--> We make our world significant by the courage of our 
--> questions and by 
--> the depth of our answers.                               - Carl Sagan
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Sun, 05 Nov 2006 11:24:42 -0800
From: [email-masked]
To: "Gray, Eric" <[email-masked]>
Priority: normal
Cc: [email-masked]
Subject: Re: [rbridge] How many trees, and per what
Status: RO
Content-Length: 1946

What I think an ingress RBridge tree is, is the following:

Suppose you have an RBridge R. Everyone calculates an SPF tree with R as the root, with some deterministic
tie-breaker in the case of two equal cost paths from R to some node N, such as the ID of the parent. For instance,
if you can attach N to the tree with either parent P1 or P2, and get the same minimal cost from R to N, you
choose the parent with lowest ID to attach N to.

So that's the ingress RBridge tree rooted at R. If it's really an ingress tree it could be thought of as unidirectional,
since traffic would only originate at R.

If instead you go with the proposal that allows the ingress RBridge R to select a different tree for a multicast than
the one rooted at R, so it selects, say, the tree rooted at R2, then what we mean by a tree is a *bidirectional* tree
rooted at R2.

If the trees are bidirectional, the calculation of the tree is the same (do SPF with R2 as root). To figure out
which of your own links are in the R2 tree, you look at yourself in that tree, and use the port (neighbor) that connects
you to your parent in the tree, and all the ports (neighbors) that connect children in the tree to you. Those are
your links in the bidirectional tree.

For forwarding on a bidirectional tree, if you receive a packet marked as "use tree R2" from a neighbor that is
not one of the R2-tree links, then you discard the packet. Otherwise, you forward the packet onto all the other
links in the R2-tree other than the one you got it from.

I am really mystified as to what other definition there might be of trees. So please explain if you mean something else.

Thanks,

Radia

----- Original Message -----
From: "Gray, Eric" <[email-masked]>
Date: Sunday, November 5, 2006 10:04 am
Subject: RE: [rbridge] How many trees, and per what

> Clearly one of the things we need to talk about this week is what 
> exactlydo we mean by ingress rbridge tree. 
> 

Content-class: urn:content-classes:message
Date: Sun, 5 Nov 2006 10:32:32 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Larry Kreeger \(kreeger\)" <[email-masked]>, <[email-masked]>, "Davide Bergamasco \(davide\)" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st Issue
Status: RO
Content-Length: 10440

Eric,

I am OK to have this discussion, I understand BCN at the system level,
but I am not a control theory guy or a congestion management geek.

Two engineers that know BCN very well and that can contribute to the
discussion are:
Manoj K Wadekar <[email-masked]> and
Davide Bergamasco <[email-masked]>
I'll recommend we include them in the discussion.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Sunday, November 05, 2006 10:25 AM
> To: Silvano Gai; Larry Kreeger (kreeger)
> Cc: [email-masked]
> Subject: RE: [rbridge] Ingress Rbridge address and BCN - 1st Issue
> 
> Silvano,
> 
> 	We should probably have some discussion - perhaps off line -
> about how BCN actually works.
> 
> 	For one thing, from what I've heard so far, I have some doubts
> about it working in real networks at all.  That might be addressed by
> taking the time to read the actual BCN specifications in detail and -
> if I were in  a position of having a lot of free time, or under some
> direct pressure from customers to support BCN - I would do that.  So
> far, I have heard that some people have some customers that want BCN
> support (whatever that actually means) and it is hard for me to drop
> something else on so thin a basis.
> 
> 	And it seems likely - based on what people are saying - that our
> taking the time to figure out how BCN "works" might be a waste of
time.
> 
> 	For one thing, your observation about the need for fast feedback
> mechanisms (that appear to be supported by protocol analysis that has
> been performed by someone at least) tends to argue that this technique
> was not designed with real networks in mind.
> 
> 	Delay is a big part of the nature of networks.  Hence realistic
> feedback mechanisms need not only to take into account the fact that
> delay is absolutely unavoidable, but they need to have "knobs" that
> can be adjusted to allow for the mechanism to adapt to different
delays
> in different networks.
> 
> 	The way I am hearing BCN described, it seems as if it has "hard"
> delay bounds and that is a problem - IMO - with the design of BCN.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Saturday, October 28, 2006 11:16 AM
> --> To: Gray, Eric; Larry Kreeger (kreeger)
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Ingress Rbridge address and BCN - 1st Issue
> -->
> --> Eric,
> -->
> --> > -----Original Message-----
> --> > From: [email-masked]
> --> [mailto:[email-masked]]
> --> On
> --> > Behalf Of Gray, Eric
> --> > Sent: Friday, October 27, 2006 3:20 PM
> --> > To: Larry Kreeger (kreeger)
> --> > Cc: [email-masked]
> --> > Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st
Issue
> --> >
> --> > Larry,
> --> >
> --> > 	A slower look up may be okay for exception processing.
> -->
> -->
> --> The BCN closed loop control algorithm requires timely
> --> replies done in
> --> HW. We can ask BCN experts which is the amount of delay that can
be
> --> tolerate, but if I remember correctly the stability
> --> analysis, it was not
> --> much.
> -->
> --> -- Silvano
> -->
> -->
> --> >
> --> > 	BCNs should be required far less often than frames are
being
> --> > forwarded.
> --> >
> --> > 	Having a transit RBridge "look inside [at?] the inner
MAC"
> --> > is not what is effectively happening - as I understand it - when
> --> > a "core RBridge" is generating a BCN.  BCN-capable core RBridges
> --> > would presumably copy the header information from some subset of
> --> > the frames on a minimally-congested link, strip the tunneling
> --> > encapsulation and originate a new frame containing a
Notification
> --> > (BCN) message.
> --> >
> --> > 	This must be a new frame, as opposed to a reflection of
the
> --> > original frame, so it is interesting that people assume this is
a
> --> > trivial operation in hardware in the first place.
> --> >
> --> > 	Since the BCN-capable RBridge has to "flip" the MAC SA
into
> --> > a MAC DA in a BCN anyway, it MUST look at that part of the frame
> --> > in every case before it can generate a BCN.
> --> >
> --> > 	In effect, the frame is (partially) copied, the copied
> --> > information is locally terminated and used to originate a new
> --> > message.  This message would then be sent - presumably using
> --> > the usual means for message origination - by encapsulating it
> --> > in RBridge tunnel encapsulation and forwarding it to (at least)
> --> > the ingress RBridge from which it was introduced.
> --> >
> --> > 	That is not nearly as much of a confusion of layers as
it
> --> > is to 1) assume that the frame is munged in hardware and turned
> --> > around and 2) normal processing of originated local messages is
> --> > bypassed in an attempt to optimize BCN sending at the cost of
> --> > including additional information in _every_ frame.
> --> >
> --> > 	Oh, and, apparently I can blame you for trying... :-)
> --> >
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: Larry Kreeger (kreeger) [mailto:[email-masked]]
> --> > --> Sent: Friday, October 27, 2006 5:26 PM
> --> > --> To: Gray, Eric
> --> > --> Cc: [email-masked]
> --> > --> Subject: RE: [rbridge] Ingress Rbridge address and
> --> BCN - 1st Issue
> --> > -->
> --> > --> Gray, Eric wrote on Friday, October 27, 2006 11:33 AM:
> --> > -->
> --> > --> > Larry,
> --> > --> >
> --> > --> > 	Separating these issues...
> --> > --> >
> --> > --> > -- [SNIP] --
> --> > --> > -->
> --> > --> > --> Please correct me if I incorrectly summarize the
above.
> --> > --> > -->
> --> > --> > --> 1) Scaling the number of fowarding entries in the
> --> > --> core is not a
> --> > --> > --> problem that TRILL needs to solve.
> --> > --> >
> --> > --> > While this is a possible intrepretation, it is not
> --> an accurate
> --> > --> > characterization of what I said.
> --> > --> >
> --> > --> > I'll try again, starting with what you have said.
> --> > --> >
> --> > --> > Scaling of the number of forwarding entries in the
> --> core is not a
> --> > --> > problem that the TRILL working group has decided to solve.
> --> > --> >
> --> > --> > Hence, you might conclude that the TRILL working group
> --> > --> has passively
> --> > --> > decided that this is not a problem that TRILL needs
> --> to solve.
> --> > --> >
> --> > --> > One reason why this might be the case is that people
> --> > --> could not decide
> --> > --> > the "by how much" question.
> --> > --> >
> --> > --> > Never-the-less, an implicit requirement that the solution
> --> > --> should not
> --> > --> > prevent more scalable implementations, enables people who
> --> > --> might not
> --> > --> > be able to agree in public (as to what factor of increased
> --> > --> > scalability should apply) to produce and deploy solutions
> --> > --> that are in
> --> > --> > fact more scalable, by at least some amount.
> --> > --> >
> --> > --> > --> 2) Link utilization is a problem and TRILL needs to
> --> > --> be concerned
> --> > --> > --> with it.
> --> > --> >
> --> > --> > Certainly.
> --> > --> >
> --> > --> > -->
> --> > --> > --> If this is correct, it leads me to believe that you
> --> > --> would advocate
> --> > --> > --> for
> --> > --> > --> 1) Remove the destination RBridge from the shim, and
> --> > --> just lookup
> --> > --> > the
> --> > --> > --> destination MAC directly
> --> > --> >
> --> > --> > How do you arrive at this conclusion?  There are
> --> > --> scenarios where this
> --> > --> > might be done, but clearly the use of a smaller field for
> --> > --> a look-up
> --> > --> > is traditionally viewed as likely to be quicker.
> --> > -->
> --> > --> I appologize for trying to put words in you mouth, but I am
> --> > --> trying to
> --> > --> understand what you are arguing for...and after
> --> reading the above,
> --> I
> --> > --> still don't know.  Maybe it is because I am confusing
> --> what you are
> --> > --> personally saying versus what you are echoing from others
> --> > --> in the group.
> --> > --> Do you believe we need the RBridge Id in the shim or not?
> --> > --> If you do,
> --> > --> then why?  For a quicker lookup?  If so, then why would a
> --> > --> slower lookup
> --> > --> to generate the source RBridge for BCN be acceptable?
> --> > -->
> --> > --> >
> --> > --> > --> 2) Eliminate the need for the outer MAC header
> --> between two
> --> > --> > RBridges
> --> > --> > --> if the link is point to point (quite likely in
> --> my opinion).
> --> > --> >
> --> > --> > Ultimately, point-to-point is very likely, but we have to
> --> > --> deal with
> --> > --> > the step-by-step deployment scenarios.
> --> > --> >
> --> > --> > In any case, I do not advocate special-casing
> --> > --> encapsulation based on
> --> > --> > link types in general - beyond that already required by
> --> > --> the specific
> --> > --> > link.  As I thought would be obvious by now, I advocate
> --> functional
> --> > --> > separation - which works better if you don't build in a
> --> > --> lot of layer
> --> > --> > dependencies.
> --> > -->
> --> > --> I agree with you about building in a lot of layer
> --> > --> dependencies.  Having
> --> > --> transit RBridges look inside the inner MAC seems like a
> --> > --> layer dependency
> --> > --> to me.  Not encapsulating with an extra 14 to 18 bytes on
> --> > --> point to point
> --> > --> link seems like it would be well worth it if you are
> --> > --> concerned with link
> --> > --> overhead.  I would gladly trade 14/18 bytes of overhead for
> --> > --> another 2
> --> > --> bytes of source RBridge which will help with BCN as well as
> --> > --> help with
> --> > --> network troubleshooting.
> --> > -->
> --> > --> >
> --> > --> > -->
> --> > --> > --> Again, I apologize for not keeping up with the latest
> --> > --> discussions,
> --> > --> > --> but have these ideas been discussed already?
> --> If so, could
> --> you
> --> > --> > --> summarize the outcome?
> --> > --> >
> --> > --> > This is not a reasonable request.
> --> > -->
> --> > --> Oh well, cant' blame me for trying can you? ;-)
> --> > -->
> --> > --> >
> --> > --> > -- [SNIP] --
> --> > -->
> --> > _______________________________________________
> --> > rbridge mailing list
> --> > [email-masked]
> --> > http://mailman.postel.org/mailman/listinfo/rbridge
> -->

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, "Larry Kreeger (kreeger)" <[email-masked]>
Date: Sun, 5 Nov 2006 13:24:54 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st Issue
Status: RO
Content-Length: 9340

Silvano,

	We should probably have some discussion - perhaps off line -
about how BCN actually works.

	For one thing, from what I've heard so far, I have some doubts 
about it working in real networks at all.  That might be addressed by
taking the time to read the actual BCN specifications in detail and - 
if I were in  a position of having a lot of free time, or under some
direct pressure from customers to support BCN - I would do that.  So
far, I have heard that some people have some customers that want BCN
support (whatever that actually means) and it is hard for me to drop 
something else on so thin a basis.

	And it seems likely - based on what people are saying - that our
taking the time to figure out how BCN "works" might be a waste of time.

	For one thing, your observation about the need for fast feedback
mechanisms (that appear to be supported by protocol analysis that has
been performed by someone at least) tends to argue that this technique
was not designed with real networks in mind.  

	Delay is a big part of the nature of networks.  Hence realistic
feedback mechanisms need not only to take into account the fact that 
delay is absolutely unavoidable, but they need to have "knobs" that
can be adjusted to allow for the mechanism to adapt to different delays
in different networks.

	The way I am hearing BCN described, it seems as if it has "hard"
delay bounds and that is a problem - IMO - with the design of BCN.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Saturday, October 28, 2006 11:16 AM
--> To: Gray, Eric; Larry Kreeger (kreeger)
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Ingress Rbridge address and BCN - 1st Issue
--> 
--> Eric,
--> 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]]
--> On
--> > Behalf Of Gray, Eric
--> > Sent: Friday, October 27, 2006 3:20 PM
--> > To: Larry Kreeger (kreeger)
--> > Cc: [email-masked]
--> > Subject: Re: [rbridge] Ingress Rbridge address and BCN - 1st Issue
--> > 
--> > Larry,
--> > 
--> > 	A slower look up may be okay for exception processing.
--> 
--> 
--> The BCN closed loop control algorithm requires timely 
--> replies done in
--> HW. We can ask BCN experts which is the amount of delay that can be
--> tolerate, but if I remember correctly the stability 
--> analysis, it was not
--> much.
--> 
--> -- Silvano
--> 
--> 
--> > 
--> > 	BCNs should be required far less often than frames are being
--> > forwarded.
--> > 
--> > 	Having a transit RBridge "look inside [at?] the inner MAC"
--> > is not what is effectively happening - as I understand it - when
--> > a "core RBridge" is generating a BCN.  BCN-capable core RBridges
--> > would presumably copy the header information from some subset of
--> > the frames on a minimally-congested link, strip the tunneling
--> > encapsulation and originate a new frame containing a Notification
--> > (BCN) message.
--> > 
--> > 	This must be a new frame, as opposed to a reflection of the
--> > original frame, so it is interesting that people assume this is a
--> > trivial operation in hardware in the first place.
--> > 
--> > 	Since the BCN-capable RBridge has to "flip" the MAC SA into
--> > a MAC DA in a BCN anyway, it MUST look at that part of the frame
--> > in every case before it can generate a BCN.
--> > 
--> > 	In effect, the frame is (partially) copied, the copied
--> > information is locally terminated and used to originate a new
--> > message.  This message would then be sent - presumably using
--> > the usual means for message origination - by encapsulating it
--> > in RBridge tunnel encapsulation and forwarding it to (at least)
--> > the ingress RBridge from which it was introduced.
--> > 
--> > 	That is not nearly as much of a confusion of layers as it
--> > is to 1) assume that the frame is munged in hardware and turned
--> > around and 2) normal processing of originated local messages is
--> > bypassed in an attempt to optimize BCN sending at the cost of
--> > including additional information in _every_ frame.
--> > 
--> > 	Oh, and, apparently I can blame you for trying... :-)
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Larry Kreeger (kreeger) [mailto:[email-masked]]
--> > --> Sent: Friday, October 27, 2006 5:26 PM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Ingress Rbridge address and 
--> BCN - 1st Issue
--> > -->
--> > --> Gray, Eric wrote on Friday, October 27, 2006 11:33 AM:
--> > -->
--> > --> > Larry,
--> > --> >
--> > --> > 	Separating these issues...
--> > --> >
--> > --> > -- [SNIP] --
--> > --> > -->
--> > --> > --> Please correct me if I incorrectly summarize the above.
--> > --> > -->
--> > --> > --> 1) Scaling the number of fowarding entries in the
--> > --> core is not a
--> > --> > --> problem that TRILL needs to solve.
--> > --> >
--> > --> > While this is a possible intrepretation, it is not 
--> an accurate
--> > --> > characterization of what I said.
--> > --> >
--> > --> > I'll try again, starting with what you have said.
--> > --> >
--> > --> > Scaling of the number of forwarding entries in the 
--> core is not a
--> > --> > problem that the TRILL working group has decided to solve.
--> > --> >
--> > --> > Hence, you might conclude that the TRILL working group
--> > --> has passively
--> > --> > decided that this is not a problem that TRILL needs 
--> to solve.
--> > --> >
--> > --> > One reason why this might be the case is that people
--> > --> could not decide
--> > --> > the "by how much" question.
--> > --> >
--> > --> > Never-the-less, an implicit requirement that the solution
--> > --> should not
--> > --> > prevent more scalable implementations, enables people who
--> > --> might not
--> > --> > be able to agree in public (as to what factor of increased
--> > --> > scalability should apply) to produce and deploy solutions
--> > --> that are in
--> > --> > fact more scalable, by at least some amount.
--> > --> >
--> > --> > --> 2) Link utilization is a problem and TRILL needs to
--> > --> be concerned
--> > --> > --> with it.
--> > --> >
--> > --> > Certainly.
--> > --> >
--> > --> > -->
--> > --> > --> If this is correct, it leads me to believe that you
--> > --> would advocate
--> > --> > --> for
--> > --> > --> 1) Remove the destination RBridge from the shim, and
--> > --> just lookup
--> > --> > the
--> > --> > --> destination MAC directly
--> > --> >
--> > --> > How do you arrive at this conclusion?  There are
--> > --> scenarios where this
--> > --> > might be done, but clearly the use of a smaller field for
--> > --> a look-up
--> > --> > is traditionally viewed as likely to be quicker.
--> > -->
--> > --> I appologize for trying to put words in you mouth, but I am
--> > --> trying to
--> > --> understand what you are arguing for...and after 
--> reading the above,
--> I
--> > --> still don't know.  Maybe it is because I am confusing 
--> what you are
--> > --> personally saying versus what you are echoing from others
--> > --> in the group.
--> > --> Do you believe we need the RBridge Id in the shim or not?
--> > --> If you do,
--> > --> then why?  For a quicker lookup?  If so, then why would a
--> > --> slower lookup
--> > --> to generate the source RBridge for BCN be acceptable?
--> > -->
--> > --> >
--> > --> > --> 2) Eliminate the need for the outer MAC header 
--> between two
--> > --> > RBridges
--> > --> > --> if the link is point to point (quite likely in 
--> my opinion).
--> > --> >
--> > --> > Ultimately, point-to-point is very likely, but we have to
--> > --> deal with
--> > --> > the step-by-step deployment scenarios.
--> > --> >
--> > --> > In any case, I do not advocate special-casing
--> > --> encapsulation based on
--> > --> > link types in general - beyond that already required by
--> > --> the specific
--> > --> > link.  As I thought would be obvious by now, I advocate
--> functional
--> > --> > separation - which works better if you don't build in a
--> > --> lot of layer
--> > --> > dependencies.
--> > -->
--> > --> I agree with you about building in a lot of layer
--> > --> dependencies.  Having
--> > --> transit RBridges look inside the inner MAC seems like a
--> > --> layer dependency
--> > --> to me.  Not encapsulating with an extra 14 to 18 bytes on
--> > --> point to point
--> > --> link seems like it would be well worth it if you are
--> > --> concerned with link
--> > --> overhead.  I would gladly trade 14/18 bytes of overhead for
--> > --> another 2
--> > --> bytes of source RBridge which will help with BCN as well as
--> > --> help with
--> > --> network troubleshooting.
--> > -->
--> > --> >
--> > --> > -->
--> > --> > --> Again, I apologize for not keeping up with the latest
--> > --> discussions,
--> > --> > --> but have these ideas been discussed already?  
--> If so, could
--> you
--> > --> > --> summarize the outcome?
--> > --> >
--> > --> > This is not a reasonable request.
--> > -->
--> > --> Oh well, cant' blame me for trying can you? ;-)
--> > -->
--> > --> >
--> > --> > -- [SNIP] --
--> > -->
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>, Russ White <[email-masked]>, [email-masked]
Date: Sun, 5 Nov 2006 13:04:39 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] How many trees, and per what
Status: RO
Content-Length: 3408

Clearly one of the things we need to talk about this week is what exactly
do we mean by ingress rbridge tree. 

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Sanjay 
--> Sane (sanjays)
--> Sent: Friday, October 27, 2006 8:41 PM
--> To: Russ White; [email-masked]
--> Cc: [email-masked]
--> Subject: Re: [rbridge] How many trees, and per what
--> 
--> 
--> Russ, Radia, et. al.
--> 
--> Having a per-ingress rbridge tree, and using it for 
--> multicast delivery
--> has many issues
--> -- no scope for multicast multi-pathing/load-balancing
--> -- for an IP multicast that is only going to links with registered
--> receivers, we now need to build a state with 
--> # of ingress rbridges * # of groups. This is heavy on computation &
--> memory. 
--> 
--> Using shared multicast trees for multicast delivery avoids 
--> both above,
--> and the forwarding state is # of shared trees * # of groups. 
--> 
--> Also, instead of adding F-tag "values" to the context of 
--> the Rbridge-id,
--> why not treat "F-tag" as the Forwarding topology 
--> identifier. (quote from
--> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-
--> encap-00.txt
--> --> "The Forwarding Tag (FTag) identifies the forwarding topology
--> assigned to a given frame"). 
--> 
--> In the tree usage case (unknowns/multicast/broadcast), it's the tree
--> identifier. If flood/unknown packets are best sent using 
--> ingress-rbridge
--> tree, use the F-tag of the tree rooted at that ingress rbridge. If
--> multicast packets are best sent using shared-multicast 
--> trees, use the
--> F-tag of the (load-balanced) shared tree. 
--> 
--> Again, which tree/topology the packet is to be put onto, is 
--> the decision
--> made at the source/ingress rbridge. But once the tree is 
--> chosen, and the
--> F-tag is put on the packet, other rbridges honor the F-tag 
--> and forward
--> accordingly.  
--> 
--> -Sanjay
--> 
--> 
--> -----Original Message-----
--> From: Russ White [mailto:[email-masked]] 
--> Sent: Friday, October 27, 2006 3:02 PM
--> To: [email-masked]
--> Cc: Sanjay Sane (sanjays); [email-masked]
--> Subject: Re: [rbridge] How many trees, and per what
--> 
--> -----BEGIN PGP SIGNED MESSAGE-----
--> Hash: SHA1
--> 
--> 
--> > So the question is whether we should multiply the number 
--> of trees by 
--> > the number of F-tag values. And if so, how many F-tag values are
--> really needed.
--> 
--> I seem to be lost in the F-tag discussion, someplace.... Time warp,
--> anyone? :-)
--> 
--> My original impression was one tree per device per vlan 
--> throughout the
--> entire cloud, with some consideration for multicast still 
--> be taken in. I
--> don't really understand why we'd want one pre f-tag, maybe someone
--> should explain what we'd hope to gain through this?
--> 
--> :-)
--> 
--> Russ
--> 
--> - --
--> [email-masked] CCIE <>< Grace Alone
--> 
--> -----BEGIN PGP SIGNATURE-----
--> Version: GnuPG v1.4.2.2 (MingW32)
--> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> 
--> iD8DBQFFQoHbER27sUhU9OQRAipMAJ4whaXVLKMKVOfXBujtgRfd3vgK5wCgvGGQ
--> r2IwhU5kgDBVfpL9FGJ16Yc=
--> =g8Wb
--> -----END PGP SIGNATURE-----
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Sat, 04 Nov 2006 14:23:07 -0800
From: Radia Perlman <[email-masked]>
To: Eastlake III Donald-LDE008 <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery
Status: RO
Content-Length: 2881

Actually, I think it would work to have all RBridges calculate
just a single bidirectional multicast tree (pruned according to VLANs 
and IP multicast downstream of
each port in the tree). Even if it was a fairly large
campus, if a negligible percentage of traffic was multicast/unknown 
destinations, this
wouldn't even be that suboptimal. Unicast would still go via optimal 
paths. But multicast would just
go according to the one tree.

Not that I'm advocating a single tree---it's just that I don't think it 
would be incorrect.

Radia

Eastlake III Donald-LDE008 wrote:

>I really can't see why the minimum should be one. In an network where
>Rbridge trees make any difference you have at least two Rbridges so I
>can't see why you wouldn't, at a minimum, have two trees. I think we
>should just prohibit Rbridges that claim to be able to support only one
>tree.
>
>Donald
>
>-----Original Message-----
>From: [email-masked] [mailto:[email-masked]] On
>Behalf Of Radia Perlman
>Sent: Thursday, November 02, 2006 2:20 PM
>To: Sanjay Sane (sanjays)
>Cc: [email-masked]
>Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between
>com putation and optimality of delivery
>
>Warning---half-baked idea at the end of this message (my own---see
>"***")
>
>
>Sanjay Sane (sanjays) wrote:
>
>  
>
>>So, the TLV inside rbridge LSP could contain 2 things
>>1 -- "my priority for being a tree root is x". 
>>2 -- "I can support n trees"
>>
>>If both of these are absent, we could choose 1 tree, and the rbridge 
>>with lowest MAC address is the root of that single tree.
>>
>>-Sanjay
>>
>>    
>>
>Right. I'm a bit nervous about some random RBridge that can only support
>one tree, or that just leaves the TLV out, from going up and down. We
>have to make sure it's not unstable.
>
>Suppose the nickname of the RBridge with highest priority for being root
>is 24.
>Suppose ingress RBridge R1 doesn't notice that wimpy RBridge R5 (that
>can only support one tree) has joined the net, and R1 selects "79" as
>the tree .
>
>I guess we should say that if you see a specified tree that shouldn't be
>legal, you drop the packet, right?
>
>***An alternative is to continue forwarding it along the 79-tree and
>hey, if R5 is on the path, it will drop the packet and only nodes
>downstream from R5 will suffer. We could even do complicated things like
>say that you can calculate trees beyond R5's capabilities by considering
>links out of R5 to be infinity. That way a wimpy RBridge can be a leaf,
>and going up and down won't affect existing trees.
>
>Radia
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Content-class: urn:content-classes:message
Date: Sat, 4 Nov 2006 17:09:47 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery
Status: RO
Content-Length: 2082

I really can't see why the minimum should be one. In an network where
Rbridge trees make any difference you have at least two Rbridges so I
can't see why you wouldn't, at a minimum, have two trees. I think we
should just prohibit Rbridges that claim to be able to support only one
tree.

Donald

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Thursday, November 02, 2006 2:20 PM
To: Sanjay Sane (sanjays)
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between
com putation and optimality of delivery

Warning---half-baked idea at the end of this message (my own---see
"***")

Sanjay Sane (sanjays) wrote:

>
>So, the TLV inside rbridge LSP could contain 2 things
>1 -- "my priority for being a tree root is x". 
>2 -- "I can support n trees"
>
>If both of these are absent, we could choose 1 tree, and the rbridge 
>with lowest MAC address is the root of that single tree.
>
>-Sanjay
>
Right. I'm a bit nervous about some random RBridge that can only support
one tree, or that just leaves the TLV out, from going up and down. We
have to make sure it's not unstable.

Suppose the nickname of the RBridge with highest priority for being root
is 24.
Suppose ingress RBridge R1 doesn't notice that wimpy RBridge R5 (that
can only support one tree) has joined the net, and R1 selects "79" as
the tree .

I guess we should say that if you see a specified tree that shouldn't be
legal, you drop the packet, right?

***An alternative is to continue forwarding it along the 79-tree and
hey, if R5 is on the path, it will drop the packet and only nodes
downstream from R5 will suffer. We could even do complicated things like
say that you can calculate trees beyond R5's capabilities by considering
links out of R5 to be infinity. That way a wimpy RBridge can be a leaf,
and going up and down won't affect existing trees.

Radia

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Sat, 4 Nov 2006 07:38:33 -0800
From: "Silvano Gai" <[email-masked]>
To: <[email-masked]>, "Pierre Francois" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 10932

Radia,

I think this is an excellent idea

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> Sent: Friday, November 03, 2006 5:23 PM
> To: Pierre Francois
> Cc: Silvano Gai; Gray, Eric; Gideon Kaempfer; [email-masked]
> Subject: Re: [rbridge] Traffic storms
> 
> And since we don't have to be backwards compatible with existing IS-IS
> implementations, we could make
> the IS-IS loop avoidance enhancement mandatory in RBridge IS-IS.
> 
> Radia
> 
> 
> 
> ----- Original Message -----
> From: Pierre Francois <[email-masked]>
> Date: Friday, November 3, 2006 5:10 pm
> Subject: Re: [rbridge] Traffic storms
> 
> >
> > Silvano,
> >
> > See http://www.ietf.org/internet-drafts/draft-francois-ordered-fib-
> > 02.txt,for a loop avoidance mechanism for IS-IS/OSPF.
> >
> > See you in SD,
> >
> > Pierre.
> >
> >
> >
> > On Fri, 3 Nov 2006, Silvano Gai wrote:
> >
> > > Eric,
> > >
> > > Also I suggest that people that have solved the problem of having
> > a loop
> > > free topology using ISIS, submit proposasl so that we can compare
> > them.> Unfortunately I don't have one.
> > >
> > >
> > >
> > > -- Silvano
> > >
> > >
> > >
> > > ________________________________
> > >
> > > From: [email-masked] [[email-masked]] On
> > > Behalf Of Gray, Eric
> > > Sent: Friday, November 03, 2006 11:54 AM
> > > To: Gideon Kaempfer; Radia Perlman
> > > Cc: [email-masked]
> > > Subject: Re: [rbridge] Traffic storms
> > >
> > >
> > >
> > > Gideon,
> > >
> > >
> > >
> > >     "Drop BPDUs" is not (exactly) the same as ignore them.  We
> > use the
> > > term
> > >
> > > as short-hand for the one of three options we considered for
> > handling> BPDUs:
> > >
> > >
> > >
> > >     Drop (do not participate actively in STP, and do not pass
BPDUs
> > > through),
> > >
> > >     Transparent (pass BPDUs through - potentially altering them
> > in some
> > > way),
> > >
> > >     Participate (have each RBridge participate in STP as if it
> > were a
> > > bridge).
> > >
> > >
> > >
> > > Hence, when we say "Drop BPDUs" we are not saying that we cannot
> > look>
> > > at them, we are just saying that we're not doing one of the other
> > two> choices.
> > >
> > >
> > >
> > > --
> > >
> > > Eric
> > >
> > >
> > >
> > >
> > > ________________________________
> > >
> > >
> > > 	From: [email-masked]
> > > [[email-masked]] On Behalf Of Gideon Kaempfer
> > > 	Sent: Friday, November 03, 2006 1:40 AM
> > > 	To: Radia Perlman
> > > 	Cc: [email-masked]
> > > 	Subject: Re: [rbridge] Traffic storms
> > >
> > > 	Radia,
> > >
> > > 	Wouldn't this create a link between TRILL and STP we are trying
> > > to avoid?
> > >
> > > 	Relying on the fact that a LAN segment has some kind of unique
> > > identifier (such as the root bridge ID) seems like a very
practical
> > > solution to me, but strongly reliant on the fact that the Rbridges
> > > actually process BPDUs. I thought they were just meant to discard
> > them.> Is this acceptable?
> > >
> > > 	Regrads,
> > >
> > >          Gidi
> > >
> > >
> > >
> > > 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
> > >
> > > 	The simplest way to put it, I think, is that in certain
> > > transitory
> > > 	situations there might be two
> > > 	RBridges that both think they are Designated RBridge, and that
> > > is bad,
> > > 	but should stop
> > > 	as soon as a single Hello is received by the RBridge who should
> > > not be
> > > 	Designated.
> > >
> > > 	I think PIM has similar transitory situations that can occur,
> > > and
> > > 	bridges can also have (hopefully
> > > 	temporary) problems if a repeater came up and merged two LANs. I
> > > think
> > > 	such things are
> > > 	annoying but not fatal. But I think it's possible we can with
> > > little
> > > 	effort avoid this problem.
> > >
> > > 	However, with RBridges, because the bridge spanning tree
> > > algorithm
> > > 	elects a Root, there's
> > > 	really a way of uniquely identifying a LAN (where "LAN" is a
> > > bunch of
> > > 	links connected with
> > > 	bridges). The unique identifier is the root bridge.
> > >
> > > 	When the B1-B2 link is down, RB1 and RB2 will see the topology
> > > as two
> > > 	separate links, and each
> > > 	one will have a distinct spanning tree Root bridge (RB1 will see
> > > B1, and
> > > 	RB2 will see B2 as the root).
> > >
> > > 	When the B1-B2 link comes up, the bridges will first merge the
> > > two
> > > 	links, and either RB1 or RB2 will
> > > 	see that the bridge spanning tree root has changed. This will be
> > > 	discovered before B1 and B2 forward
> > > 	traffic across the link because of the bridge forwarding delay.
> > > 	If B1 has better priority as bridge spanning tree root than B2,
> > > then RB1
> > > 	will not notice anything
> > > 	different when the B1-B2 link comes up. But RB2 will notice
> > > 	something different; the spanning tree root has changed
> > > identities from
> > > 	"B2" to "B1".
> > >
> > > 	Given this, RB2 could temporarily stop forwarding to or from the
> > > link
> > > 	when the Root bridge
> > > 	changes identities, though it should definitely immediately send
> > > IS-IS
> > > 	Hellos (either RB1 or RB2 will
> > > 	be elected Designated Router in the IS-IS election for that
> > > link). If
> > > 	RB2 has better prioirty for
> > > 	root, the RB1 will immediately stop forwarding to or from the
> > > link when
> > > 	it sees the Hello from RB2.
> > > 	If RB2 has better priority in the IS-IS election, then RB1
> > > should
> > > 	immediately send an IS-IS Hello
> > > 	when it sees a Hello from a new RBridge on the link.
> > >
> > > 	So I think this is not a big deal, and that if we are worried,
> > > we can
> > > 	specify that an RBridge should
> > > 	stop acting like the Designated RBridge for a few seconds after
> > > the
> > > 	identity of the Root in the spanning
> > > 	tree algorithm changes.
> > >
> > > 	Or we could be even fancier and have each RBridge announce in
> > > its IS-IS
> > > 	Hellos which LAN IDs it
> > > 	is Designated for, where a LAN ID is the MAC address of the Root
> > > bridge.
> > > 	So RB1 continue
> > > 	forwarding if the identity changes from B1 to B2 provided no
> > > other
> > > 	RBridge has claimed to be connected
> > > 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
> > > must stop
> > > 	forwarding for enough time
> > > 	for the IS-IS election to sort itself out and choose a
> > > Designated RBridge.
> > >
> > > 	Radia
> > >
> > >
> > >
> > >
> > >
> > >
> > > 	Gideon Kaempfer wrote:
> > >
> > > 	>Following mention by Silvano of broadcast and multicast storms
> > > (and the need
> > > 	>to protect against them), I played around with different
> > > scenarios and came
> > > 	>upon one I would appreciate your comments on (in the hope I am
> > > pointing out
> > > 	>a non-existent issue with TRILL). I believe a broadcast and
> > > even a unicast
> > > 	>storm could be created as the result of a loop that isn't
> > > protected by TTL
> > > 	>nor by STP in the case of a link connecting two separate LAN
> > > segments coming
> > > 	>to life.
> > > 	>
> > > 	>- RB1 ---- RB2 -
> > > 	>   |        |
> > > 	>-  B1 --x-- B2 -
> > > 	>   |        |
> > > 	>   H1       H2
> > > 	>
> > > 	>1. The network (segment) involved consists of two Rbridges
> > > (RB1, RB2), two
> > > 	>bridges (B1, B2) and two hosts (H1, H2). They are physically
> > > connected as
> > > 	>depicted.
> > > 	>2. State A: the direct link between B1 and B2 is down. B1 and
> > > B2 find
> > > 	>themselves on different LAN segments and hence different
> > > spanning trees. RB1
> > > 	>and RB2 are both designated Rbridges (each for the segment of
> > > the
> > > 	>corresponding bridge).
> > > 	>3. State B: the direct link between B1 and B2 goes up (someone
> > > connects a
> > > 	>cable). B1 and B2 discover each other and establish a common
> > > spanning tree.
> > > 	>RB1 and RB2 both find themselves attached to the same LAN
> > > segment and hence
> > > 	>RB1 (without loss of generality) will eventually become the
> > > designated
> > > 	>Rbridge for it.
> > > 	>4. Just before RB1 and RB2 identify that they are both on the
> > > same segment
> > > 	>and RB2 stops functioning as a designated Rbridge the following
> > > scenario
> > > 	>seems possible:
> > > 	>  a. H1 sends a broadcast frame.
> > > 	>  b. B1 receives it and forwards to RB1 and B2.
> > > 	>  c. RB1 (encapsulates and) forwards to RB2.
> > > 	>  d. B2 forwards to RB2 and H2.
> > > 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
> > > to RB1).
> > > 	>  f. (RB1 forwards to B1.)
> > > 	>  g. B2 forwards (again) to H2 and to B1.
> > > 	>  h. B1 forwards to H1 (see remark below regarding filtering
> > > table
> > > 	>contamination) and to RB1.
> > > 	>  i. Etcetera etcetera.
> > > 	>5. A broadcast storm is born, created by a loop that is not
> > > protected by TTL
> > > 	>(due to the fact that forwarding between the Rbridges is only
> > > across a
> > > 	>single hop) nor by STP (due to the fact that Rbridges do not
> > > participate in
> > > 	>STP).
> > > 	>6. If forwarding commences at the hardware level and no
> > > broadcast rate
> > > 	>limiting is in place, the storm may cause severe damage in a
> > > very short time
> > > 	>(note that replicated frames are sent to H1 and H2 (or any
> > > network they
> > > 	>could represent).
> > > 	>7. Another unfortunate effect of this storm is that B1 and B2
> > > no longer know
> > > 	>where H1 is located (due to the contamination of their
> > > filtering tables by a
> > > 	>frame from H1 that arrives from the wrong direction (and in
> > > fact from
> > > 	>multiple directions). As a result, a possible unicast frame
> > > from H2 to H1
> > > 	>will just join the storm over the loop at least in one
> > > direction (RB2 will
> > > 	>forward it to RB1) but will not arrive at H1...
> > > 	>
> > > 	>One possible solution could be for RB2 to identify the fact
> > > that it is
> > > 	>receiving a frame from a host with a MAC address that is
> > > associated with a
> > > 	>segment it thought it isn't connected to. Hence, it may trigger
> > > an immediate
> > > 	>neighbor discovery / designated Rbridge election. However,
> > > because Rbridges
> > > 	>should allow host mobility, this frame may need to be forwarded
> > > (and hence
> > > 	>the storm commences).
> > > 	>
> > > 	>As mentioned above, any comments are welcome.
> > > 	>  Gideon Kaempfer
> > > 	>
> > > 	>_______________________________________________
> > > 	>rbridge mailing list
> > > 	>[email-masked]
> > > 	> http://mailman.postel.org/mailman/listinfo/rbridge
> > > <http://mailman.postel.org/mailman/listinfo/rbridge>
> > > 	>
> > > 	>
> > >
> > > 	_______________________________________________
> > > 	rbridge mailing list
> > > 	[email-masked]
> > > 	http://mailman.postel.org/mailman/listinfo/rbridge
> > >
> > >
> > >
> > >
> >

Date: Fri, 03 Nov 2006 17:23:05 -0800
From: [email-masked]
To: Pierre Francois <[email-masked]>
Priority: normal
Cc: [email-masked], Gideon Kaempfer <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 9962

And since we don't have to be backwards compatible with existing IS-IS implementations, we could make
the IS-IS loop avoidance enhancement mandatory in RBridge IS-IS.

Radia

----- Original Message -----
From: Pierre Francois <[email-masked]>
Date: Friday, November 3, 2006 5:10 pm
Subject: Re: [rbridge] Traffic storms

> 
> Silvano,
> 
> See http://www.ietf.org/internet-drafts/draft-francois-ordered-fib-
> 02.txt,for a loop avoidance mechanism for IS-IS/OSPF.
> 
> See you in SD,
> 
> Pierre.
> 
> 
> 
> On Fri, 3 Nov 2006, Silvano Gai wrote:
> 
> > Eric,
> >
> > Also I suggest that people that have solved the problem of having 
> a loop
> > free topology using ISIS, submit proposasl so that we can compare 
> them.> Unfortunately I don't have one.
> >
> >
> >
> > -- Silvano
> >
> >
> >
> > ________________________________
> >
> > From: [email-masked] [[email-masked]] On
> > Behalf Of Gray, Eric
> > Sent: Friday, November 03, 2006 11:54 AM
> > To: Gideon Kaempfer; Radia Perlman
> > Cc: [email-masked]
> > Subject: Re: [rbridge] Traffic storms
> >
> >
> >
> > Gideon,
> >
> >
> >
> >     "Drop BPDUs" is not (exactly) the same as ignore them.  We 
> use the
> > term
> >
> > as short-hand for the one of three options we considered for 
> handling> BPDUs:
> >
> >
> >
> >     Drop (do not participate actively in STP, and do not pass BPDUs
> > through),
> >
> >     Transparent (pass BPDUs through - potentially altering them 
> in some
> > way),
> >
> >     Participate (have each RBridge participate in STP as if it 
> were a
> > bridge).
> >
> >
> >
> > Hence, when we say "Drop BPDUs" we are not saying that we cannot 
> look>
> > at them, we are just saying that we're not doing one of the other 
> two> choices.
> >
> >
> >
> > --
> >
> > Eric
> >
> >
> >
> >
> > ________________________________
> >
> >
> > 	From: [email-masked]
> > [[email-masked]] On Behalf Of Gideon Kaempfer
> > 	Sent: Friday, November 03, 2006 1:40 AM
> > 	To: Radia Perlman
> > 	Cc: [email-masked]
> > 	Subject: Re: [rbridge] Traffic storms
> >
> > 	Radia,
> >
> > 	Wouldn't this create a link between TRILL and STP we are trying
> > to avoid?
> >
> > 	Relying on the fact that a LAN segment has some kind of unique
> > identifier (such as the root bridge ID) seems like a very practical
> > solution to me, but strongly reliant on the fact that the Rbridges
> > actually process BPDUs. I thought they were just meant to discard 
> them.> Is this acceptable?
> >
> > 	Regrads,
> >
> >          Gidi
> >
> >
> >
> > 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
> >
> > 	The simplest way to put it, I think, is that in certain
> > transitory
> > 	situations there might be two
> > 	RBridges that both think they are Designated RBridge, and that
> > is bad,
> > 	but should stop
> > 	as soon as a single Hello is received by the RBridge who should
> > not be
> > 	Designated.
> >
> > 	I think PIM has similar transitory situations that can occur,
> > and
> > 	bridges can also have (hopefully
> > 	temporary) problems if a repeater came up and merged two LANs. I
> > think
> > 	such things are
> > 	annoying but not fatal. But I think it's possible we can with
> > little
> > 	effort avoid this problem.
> >
> > 	However, with RBridges, because the bridge spanning tree
> > algorithm
> > 	elects a Root, there's
> > 	really a way of uniquely identifying a LAN (where "LAN" is a
> > bunch of
> > 	links connected with
> > 	bridges). The unique identifier is the root bridge.
> >
> > 	When the B1-B2 link is down, RB1 and RB2 will see the topology
> > as two
> > 	separate links, and each
> > 	one will have a distinct spanning tree Root bridge (RB1 will see
> > B1, and
> > 	RB2 will see B2 as the root).
> >
> > 	When the B1-B2 link comes up, the bridges will first merge the
> > two
> > 	links, and either RB1 or RB2 will
> > 	see that the bridge spanning tree root has changed. This will be
> > 	discovered before B1 and B2 forward
> > 	traffic across the link because of the bridge forwarding delay.
> > 	If B1 has better priority as bridge spanning tree root than B2,
> > then RB1
> > 	will not notice anything
> > 	different when the B1-B2 link comes up. But RB2 will notice
> > 	something different; the spanning tree root has changed
> > identities from
> > 	"B2" to "B1".
> >
> > 	Given this, RB2 could temporarily stop forwarding to or from the
> > link
> > 	when the Root bridge
> > 	changes identities, though it should definitely immediately send
> > IS-IS
> > 	Hellos (either RB1 or RB2 will
> > 	be elected Designated Router in the IS-IS election for that
> > link). If
> > 	RB2 has better prioirty for
> > 	root, the RB1 will immediately stop forwarding to or from the
> > link when
> > 	it sees the Hello from RB2.
> > 	If RB2 has better priority in the IS-IS election, then RB1
> > should
> > 	immediately send an IS-IS Hello
> > 	when it sees a Hello from a new RBridge on the link.
> >
> > 	So I think this is not a big deal, and that if we are worried,
> > we can
> > 	specify that an RBridge should
> > 	stop acting like the Designated RBridge for a few seconds after
> > the
> > 	identity of the Root in the spanning
> > 	tree algorithm changes.
> >
> > 	Or we could be even fancier and have each RBridge announce in
> > its IS-IS
> > 	Hellos which LAN IDs it
> > 	is Designated for, where a LAN ID is the MAC address of the Root
> > bridge.
> > 	So RB1 continue
> > 	forwarding if the identity changes from B1 to B2 provided no
> > other
> > 	RBridge has claimed to be connected
> > 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
> > must stop
> > 	forwarding for enough time
> > 	for the IS-IS election to sort itself out and choose a
> > Designated RBridge.
> >
> > 	Radia
> >
> >
> >
> >
> >
> >
> > 	Gideon Kaempfer wrote:
> >
> > 	>Following mention by Silvano of broadcast and multicast storms
> > (and the need
> > 	>to protect against them), I played around with different
> > scenarios and came
> > 	>upon one I would appreciate your comments on (in the hope I am
> > pointing out
> > 	>a non-existent issue with TRILL). I believe a broadcast and
> > even a unicast
> > 	>storm could be created as the result of a loop that isn't
> > protected by TTL
> > 	>nor by STP in the case of a link connecting two separate LAN
> > segments coming
> > 	>to life.
> > 	>
> > 	>- RB1 ---- RB2 -
> > 	>   |        |
> > 	>-  B1 --x-- B2 -
> > 	>   |        |
> > 	>   H1       H2
> > 	>
> > 	>1. The network (segment) involved consists of two Rbridges
> > (RB1, RB2), two
> > 	>bridges (B1, B2) and two hosts (H1, H2). They are physically
> > connected as
> > 	>depicted.
> > 	>2. State A: the direct link between B1 and B2 is down. B1 and
> > B2 find
> > 	>themselves on different LAN segments and hence different
> > spanning trees. RB1
> > 	>and RB2 are both designated Rbridges (each for the segment of
> > the
> > 	>corresponding bridge).
> > 	>3. State B: the direct link between B1 and B2 goes up (someone
> > connects a
> > 	>cable). B1 and B2 discover each other and establish a common
> > spanning tree.
> > 	>RB1 and RB2 both find themselves attached to the same LAN
> > segment and hence
> > 	>RB1 (without loss of generality) will eventually become the
> > designated
> > 	>Rbridge for it.
> > 	>4. Just before RB1 and RB2 identify that they are both on the
> > same segment
> > 	>and RB2 stops functioning as a designated Rbridge the following
> > scenario
> > 	>seems possible:
> > 	>  a. H1 sends a broadcast frame.
> > 	>  b. B1 receives it and forwards to RB1 and B2.
> > 	>  c. RB1 (encapsulates and) forwards to RB2.
> > 	>  d. B2 forwards to RB2 and H2.
> > 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
> > to RB1).
> > 	>  f. (RB1 forwards to B1.)
> > 	>  g. B2 forwards (again) to H2 and to B1.
> > 	>  h. B1 forwards to H1 (see remark below regarding filtering
> > table
> > 	>contamination) and to RB1.
> > 	>  i. Etcetera etcetera.
> > 	>5. A broadcast storm is born, created by a loop that is not
> > protected by TTL
> > 	>(due to the fact that forwarding between the Rbridges is only
> > across a
> > 	>single hop) nor by STP (due to the fact that Rbridges do not
> > participate in
> > 	>STP).
> > 	>6. If forwarding commences at the hardware level and no
> > broadcast rate
> > 	>limiting is in place, the storm may cause severe damage in a
> > very short time
> > 	>(note that replicated frames are sent to H1 and H2 (or any
> > network they
> > 	>could represent).
> > 	>7. Another unfortunate effect of this storm is that B1 and B2
> > no longer know
> > 	>where H1 is located (due to the contamination of their
> > filtering tables by a
> > 	>frame from H1 that arrives from the wrong direction (and in
> > fact from
> > 	>multiple directions). As a result, a possible unicast frame
> > from H2 to H1
> > 	>will just join the storm over the loop at least in one
> > direction (RB2 will
> > 	>forward it to RB1) but will not arrive at H1...
> > 	>
> > 	>One possible solution could be for RB2 to identify the fact
> > that it is
> > 	>receiving a frame from a host with a MAC address that is
> > associated with a
> > 	>segment it thought it isn't connected to. Hence, it may trigger
> > an immediate
> > 	>neighbor discovery / designated Rbridge election. However,
> > because Rbridges
> > 	>should allow host mobility, this frame may need to be forwarded
> > (and hence
> > 	>the storm commences).
> > 	>
> > 	>As mentioned above, any comments are welcome.
> > 	>  Gideon Kaempfer
> > 	>
> > 	>_______________________________________________
> > 	>rbridge mailing list
> > 	>[email-masked]
> > 	> http://mailman.postel.org/mailman/listinfo/rbridge
> > <http://mailman.postel.org/mailman/listinfo/rbridge>
> > 	>
> > 	>
> >
> > 	_______________________________________________
> > 	rbridge mailing list
> > 	[email-masked]
> > 	http://mailman.postel.org/mailman/listinfo/rbridge
> >
> >
> >
> >
> 

Date: Sat, 4 Nov 2006 02:10:11 +0100 (CET)
From: Pierre Francois <[email-masked]>
To: Silvano Gai <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 8994

Silvano,

See http://www.ietf.org/internet-drafts/draft-francois-ordered-fib-02.txt,
for a loop avoidance mechanism for IS-IS/OSPF.

See you in SD,

Pierre.

On Fri, 3 Nov 2006, Silvano Gai wrote:

> Eric,
>
> Also I suggest that people that have solved the problem of having a loop
> free topology using ISIS, submit proposasl so that we can compare them.
> Unfortunately I don't have one.
>
>
>
> -- Silvano
>
>
>
> ________________________________
>
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Gray, Eric
> Sent: Friday, November 03, 2006 11:54 AM
> To: Gideon Kaempfer; Radia Perlman
> Cc: [email-masked]
> Subject: Re: [rbridge] Traffic storms
>
>
>
> Gideon,
>
>
>
>     "Drop BPDUs" is not (exactly) the same as ignore them.  We use the
> term
>
> as short-hand for the one of three options we considered for handling
> BPDUs:
>
>
>
>     Drop (do not participate actively in STP, and do not pass BPDUs
> through),
>
>     Transparent (pass BPDUs through - potentially altering them in some
> way),
>
>     Participate (have each RBridge participate in STP as if it were a
> bridge).
>
>
>
> Hence, when we say "Drop BPDUs" we are not saying that we cannot look
>
> at them, we are just saying that we're not doing one of the other two
> choices.
>
>
>
> --
>
> Eric
>
>
>
>
> ________________________________
>
>
> 	From: [email-masked]
> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
> 	Sent: Friday, November 03, 2006 1:40 AM
> 	To: Radia Perlman
> 	Cc: [email-masked]
> 	Subject: Re: [rbridge] Traffic storms
>
> 	Radia,
>
> 	Wouldn't this create a link between TRILL and STP we are trying
> to avoid?
>
> 	Relying on the fact that a LAN segment has some kind of unique
> identifier (such as the root bridge ID) seems like a very practical
> solution to me, but strongly reliant on the fact that the Rbridges
> actually process BPDUs. I thought they were just meant to discard them.
> Is this acceptable?
>
> 	Regrads,
>
> 	 Gidi
>
>
>
> 	On 11/3/06, Radia Perlman <[email-masked]> wrote:
>
> 	The simplest way to put it, I think, is that in certain
> transitory
> 	situations there might be two
> 	RBridges that both think they are Designated RBridge, and that
> is bad,
> 	but should stop
> 	as soon as a single Hello is received by the RBridge who should
> not be
> 	Designated.
>
> 	I think PIM has similar transitory situations that can occur,
> and
> 	bridges can also have (hopefully
> 	temporary) problems if a repeater came up and merged two LANs. I
> think
> 	such things are
> 	annoying but not fatal. But I think it's possible we can with
> little
> 	effort avoid this problem.
>
> 	However, with RBridges, because the bridge spanning tree
> algorithm
> 	elects a Root, there's
> 	really a way of uniquely identifying a LAN (where "LAN" is a
> bunch of
> 	links connected with
> 	bridges). The unique identifier is the root bridge.
>
> 	When the B1-B2 link is down, RB1 and RB2 will see the topology
> as two
> 	separate links, and each
> 	one will have a distinct spanning tree Root bridge (RB1 will see
> B1, and
> 	RB2 will see B2 as the root).
>
> 	When the B1-B2 link comes up, the bridges will first merge the
> two
> 	links, and either RB1 or RB2 will
> 	see that the bridge spanning tree root has changed. This will be
> 	discovered before B1 and B2 forward
> 	traffic across the link because of the bridge forwarding delay.
> 	If B1 has better priority as bridge spanning tree root than B2,
> then RB1
> 	will not notice anything
> 	different when the B1-B2 link comes up. But RB2 will notice
> 	something different; the spanning tree root has changed
> identities from
> 	"B2" to "B1".
>
> 	Given this, RB2 could temporarily stop forwarding to or from the
> link
> 	when the Root bridge
> 	changes identities, though it should definitely immediately send
> IS-IS
> 	Hellos (either RB1 or RB2 will
> 	be elected Designated Router in the IS-IS election for that
> link). If
> 	RB2 has better prioirty for
> 	root, the RB1 will immediately stop forwarding to or from the
> link when
> 	it sees the Hello from RB2.
> 	If RB2 has better priority in the IS-IS election, then RB1
> should
> 	immediately send an IS-IS Hello
> 	when it sees a Hello from a new RBridge on the link.
>
> 	So I think this is not a big deal, and that if we are worried,
> we can
> 	specify that an RBridge should
> 	stop acting like the Designated RBridge for a few seconds after
> the
> 	identity of the Root in the spanning
> 	tree algorithm changes.
>
> 	Or we could be even fancier and have each RBridge announce in
> its IS-IS
> 	Hellos which LAN IDs it
> 	is Designated for, where a LAN ID is the MAC address of the Root
> bridge.
> 	So RB1 continue
> 	forwarding if the identity changes from B1 to B2 provided no
> other
> 	RBridge has claimed to be connected
> 	to B2. But if RB2's LSP claims it is attached to B2, then RB1
> must stop
> 	forwarding for enough time
> 	for the IS-IS election to sort itself out and choose a
> Designated RBridge.
>
> 	Radia
>
>
>
>
>
>
> 	Gideon Kaempfer wrote:
>
> 	>Following mention by Silvano of broadcast and multicast storms
> (and the need
> 	>to protect against them), I played around with different
> scenarios and came
> 	>upon one I would appreciate your comments on (in the hope I am
> pointing out
> 	>a non-existent issue with TRILL). I believe a broadcast and
> even a unicast
> 	>storm could be created as the result of a loop that isn't
> protected by TTL
> 	>nor by STP in the case of a link connecting two separate LAN
> segments coming
> 	>to life.
> 	>
> 	>- RB1 ---- RB2 -
> 	>   |        |
> 	>-  B1 --x-- B2 -
> 	>   |        |
> 	>   H1       H2
> 	>
> 	>1. The network (segment) involved consists of two Rbridges
> (RB1, RB2), two
> 	>bridges (B1, B2) and two hosts (H1, H2). They are physically
> connected as
> 	>depicted.
> 	>2. State A: the direct link between B1 and B2 is down. B1 and
> B2 find
> 	>themselves on different LAN segments and hence different
> spanning trees. RB1
> 	>and RB2 are both designated Rbridges (each for the segment of
> the
> 	>corresponding bridge).
> 	>3. State B: the direct link between B1 and B2 goes up (someone
> connects a
> 	>cable). B1 and B2 discover each other and establish a common
> spanning tree.
> 	>RB1 and RB2 both find themselves attached to the same LAN
> segment and hence
> 	>RB1 (without loss of generality) will eventually become the
> designated
> 	>Rbridge for it.
> 	>4. Just before RB1 and RB2 identify that they are both on the
> same segment
> 	>and RB2 stops functioning as a designated Rbridge the following
> scenario
> 	>seems possible:
> 	>  a. H1 sends a broadcast frame.
> 	>  b. B1 receives it and forwards to RB1 and B2.
> 	>  c. RB1 (encapsulates and) forwards to RB2.
> 	>  d. B2 forwards to RB2 and H2.
> 	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
> to RB1).
> 	>  f. (RB1 forwards to B1.)
> 	>  g. B2 forwards (again) to H2 and to B1.
> 	>  h. B1 forwards to H1 (see remark below regarding filtering
> table
> 	>contamination) and to RB1.
> 	>  i. Etcetera etcetera.
> 	>5. A broadcast storm is born, created by a loop that is not
> protected by TTL
> 	>(due to the fact that forwarding between the Rbridges is only
> across a
> 	>single hop) nor by STP (due to the fact that Rbridges do not
> participate in
> 	>STP).
> 	>6. If forwarding commences at the hardware level and no
> broadcast rate
> 	>limiting is in place, the storm may cause severe damage in a
> very short time
> 	>(note that replicated frames are sent to H1 and H2 (or any
> network they
> 	>could represent).
> 	>7. Another unfortunate effect of this storm is that B1 and B2
> no longer know
> 	>where H1 is located (due to the contamination of their
> filtering tables by a
> 	>frame from H1 that arrives from the wrong direction (and in
> fact from
> 	>multiple directions). As a result, a possible unicast frame
> from H2 to H1
> 	>will just join the storm over the loop at least in one
> direction (RB2 will
> 	>forward it to RB1) but will not arrive at H1...
> 	>
> 	>One possible solution could be for RB2 to identify the fact
> that it is
> 	>receiving a frame from a host with a MAC address that is
> associated with a
> 	>segment it thought it isn't connected to. Hence, it may trigger
> an immediate
> 	>neighbor discovery / designated Rbridge election. However,
> because Rbridges
> 	>should allow host mobility, this frame may need to be forwarded
> (and hence
> 	>the storm commences).
> 	>
> 	>As mentioned above, any comments are welcome.
> 	>  Gideon Kaempfer
> 	>
> 	>_______________________________________________
> 	>rbridge mailing list
> 	>[email-masked]
> 	> http://mailman.postel.org/mailman/listinfo/rbridge
> <http://mailman.postel.org/mailman/listinfo/rbridge>
> 	>
> 	>
>
> 	_______________________________________________
> 	rbridge mailing list
> 	[email-masked]
> 	http://mailman.postel.org/mailman/listinfo/rbridge
>
>
>
>

Content-class: urn:content-classes:message
Date: Fri, 3 Nov 2006 15:14:06 -0800
From: "Larry Kreeger \(kreeger\)" <[email-masked]>
To: "Caitlin Bestler" <[email-masked]>, "Erik Nordmark" <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] LIDs
Status: RO
Content-Length: 2364

Caitlin Bestler wrote on Friday, November 03, 2006 9:07 AM:

> Larry Kreeger (kreeger) wrote:
>> Hi,
>> 
>> I was catching up on old RBridge threads and saw this one about LIDs.
>> 
>> LIDs can be useful in reducing costs in large switches where the
>> entire (potentially large) local MAC table would not need to be
>> present in every module of the system.  In fact it could probably
>> eliminate the need to keep locally learned MACs in hardware at all.
>> Assuming a switch with 16 slots and
>> 48 ports per linecard, and servers running 16 virtual machines each
>> connected to the ports, the number of local MACs would be 16*48*16=
>> 12,288.  With 48 bits per address, that is ~59kbits.
>> 
>> With LIDs, an entry is need only per port, not per local MAC.
>>  So given a 16 bit LID, only 16 cards * 48 ports * 16 bits =
>> ~12kbits, a savings of ~47kbits. 
>> 
>> The more locally attached MACs, the bigger the savings.
>> 
> 
> Instead of keeping the MAC to Port mapping in the egress RBridge you
> instead keep it in each ingress rbridge that has learned of this
> rbridge. I'm not seeing a net savings in memory costs anywhere. There
> is certainly a potential latency benefit, but is there really one
> that is valid over the desired lifespan of the protocol?    

The ingress RBridge must already have a mapping from MAC to egress
RBridge nickname.  So, the table must only be widened to include the LID
- which is much smaller (depending on the size of the LID) than the MAC
to port mapping needed at the egress RBridge.

Also, the size of the table at the ingress RBridge depends on how many
end stations are being actively communicated with from that RBridge.  If
the ingress RBridge is a distributed system, then each module (e.g.
ASIC) only needs to populate the table with mappings for the active
flows through that part of the system.  If we assume that every end
station is not directly communicating with every other end station, then
different entries would exist in each MAC -> Egress RBridge/LID table.
This allows a large distributed system to scale up without requiring
each ASIC to increase its table size - because the mapping to LID is
spread out versus being concentrated at the inter-RBridge port ASICs of
a large RBridge.

It all depends on ratio of RBridge size (locally MAC addresses) versus
the number of flow active.

 - Larry

Date: Fri, 03 Nov 2006 23:27:25 +0100
From: =?windows-1252?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 13857

I had no time to read the above discussion. However I have got the 
impression that it is much simpler to depend on RSTP/STP protocol for 
root bridge election to perform DR election. I understand that 
dependency on other protocol is not desirable, however we must be aware 
that RBridges operate in the same domain that spanning tree protocols, 
so it seems perhaps too optimistic to expect full independence between 
them.
I am aware that it is an old and past discussion, but I think any 
alternatives for DR election ignoring RSTP/STP protocol will be 
difficult to synchronize in reconfiguration. It seems natural that, if 
links get organized by STP/RSTP, the root bridge resulting should be 
related with DR RBridge. Root bridge is the "natural" gateway for a 
bridged LAN to/from the RBridges network.
Regards
Guilllermo

Gray, Eric escribi?:
> Silvano,
> Does the specification currently say that you MUST /*ignore*/ BPDUs?
> I looked at the 3 drafts currently under discussion, and none of them
> say that you should (let alone MUST) ignore BPDUs. The Architecture
> draft - which is strictly informative - says that it (the draft) 
> assumes that
> RBridges "block STP." And this occurs immediately after listing the
> options considered (and listed in my reply to Gideon).
> The base protocol specification says "RBridges MUST recognize and
> drop BPDUs." This is - IMO - significantly different from ignoring them,
> but we could potentailly ask for clarification. IMO, recognizing BPDUs
> is sufficient to accomplish what has been suggested.
> The P&AS is ambivalent on the topic. So where have we said that you
> MUST ignore BPDUs.
> Even if a "standards track" specification did say that you MUST ignore
> BPDUs, what do you suppose is going to happen to you if you don't
> ignore them?
> I am pretty sure that nobody initially meant for routers to "snoop" IGMP
> messages, for bridges to "snoop" routing advertisements and ARPs, or
> for hubs to "snoop" BPDUs, or perform MAC learning. yet all of these
> things happen - and are even sometimes assumed to happen - in real
> world implementations.
> Implementations live in the real world.
> But I agree that it is probably necessary to say that RBridges MUST
> employ some means for detecting brdiging topology changes, citing
> some of the methods we've discussed as examples. That might - all
> by itself - clarify the meaning of the expression "recognize and drop."
> --
> Eric
>
>     ------------------------------------------------------------------------
>     *From:* Silvano Gai [mailto:[email-masked]]
>     *Sent:* Friday, November 03, 2006 3:19 PM
>     *To:* Gray, Eric; Gideon Kaempfer; Radia Perlman
>     *Cc:* [email-masked]
>     *Subject:* RE: [rbridge] Traffic storms
>
>     Eric,
>
>     TRILL needs to be a well defined spec that guarantees products
>     that are interoperable.
>
>     If you write in the spec that BPDUs must be ignored, I will drop them.
>
>     If I need to do something different with BPDUs, then let?s spell
>     it out in the spec.
>
>     I don?t like the attitude, ?oh, the spec is broken, but there is
>     some magic that will fix it?.
>
>     Let?s write in the spec what is this magic.
>
>     Also I suggest that people that have solved the problem of having
>     a loop free topology using ISIS, submit proposasl so that we can
>     compare them. Unfortunately I don?t have one.
>
>     -- Silvano
>
>     ------------------------------------------------------------------------
>
>     *From:* [email-masked]
>     [mailto:[email-masked]] *On Behalf Of *Gray, Eric
>     *Sent:* Friday, November 03, 2006 11:54 AM
>     *To:* Gideon Kaempfer; Radia Perlman
>     *Cc:* [email-masked]
>     *Subject:* Re: [rbridge] Traffic storms
>
>     Gideon,
>
>     "Drop BPDUs" is not (exactly) the same as ignore them. We use the
>     term
>
>     as short-hand for the one of three options we considered for
>     handling BPDUs:
>
>     Drop (do not participate actively in STP, and do not pass BPDUs
>     through),
>
>     Transparent (pass BPDUs through - potentially altering them in
>     some way),
>
>     Participate (have each RBridge participate in STP as if it were a
>     bridge).
>
>     Hence, when we say "Drop BPDUs" we are not saying that we cannot look
>
>     at them, we are just saying that we're not doing one of the other
>     two choices.
>
>     --
>
>     Eric
>
>         ------------------------------------------------------------------------
>
>         *From:* [email-masked]
>         [mailto:[email-masked]] *On Behalf Of *Gideon Kaempfer
>         *Sent:* Friday, November 03, 2006 1:40 AM
>         *To:* Radia Perlman
>         *Cc:* [email-masked]
>         *Subject:* Re: [rbridge] Traffic storms
>
>         Radia,
>
>         Wouldn't this create a link between TRILL and STP we are
>         trying to avoid?
>
>         Relying on the fact that a LAN segment has some kind of unique
>         identifier (such as the root bridge ID) seems like a very
>         practical solution to me, but strongly reliant on the fact
>         that the Rbridges actually process BPDUs. I thought they were
>         just meant to discard them. Is this acceptable?
>
>         Regrads,
>
>         Gidi
>
>         On 11/3/06, *Radia Perlman* <[email-masked]
>         <mailto:[email-masked]>> wrote:
>
>         The simplest way to put it, I think, is that in certain transitory
>         situations there might be two
>         RBridges that both think they are Designated RBridge, and that
>         is bad,
>         but should stop
>         as soon as a single Hello is received by the RBridge who
>         should not be
>         Designated.
>
>         I think PIM has similar transitory situations that can occur, and
>         bridges can also have (hopefully
>         temporary) problems if a repeater came up and merged two LANs.
>         I think
>         such things are
>         annoying but not fatal. But I think it's possible we can with
>         little
>         effort avoid this problem.
>
>         However, with RBridges, because the bridge spanning tree
>         algorithm
>         elects a Root, there's
>         really a way of uniquely identifying a LAN (where "LAN" is a
>         bunch of
>         links connected with
>         bridges). The unique identifier is the root bridge.
>
>         When the B1-B2 link is down, RB1 and RB2 will see the topology
>         as two
>         separate links, and each
>         one will have a distinct spanning tree Root bridge (RB1 will
>         see B1, and
>         RB2 will see B2 as the root).
>
>         When the B1-B2 link comes up, the bridges will first merge the two
>         links, and either RB1 or RB2 will
>         see that the bridge spanning tree root has changed. This will be
>         discovered before B1 and B2 forward
>         traffic across the link because of the bridge forwarding delay.
>         If B1 has better priority as bridge spanning tree root than
>         B2, then RB1
>         will not notice anything
>         different when the B1-B2 link comes up. But RB2 will notice
>         something different; the spanning tree root has changed
>         identities from
>         "B2" to "B1".
>
>         Given this, RB2 could temporarily stop forwarding to or from
>         the link
>         when the Root bridge
>         changes identities, though it should definitely immediately
>         send IS-IS
>         Hellos (either RB1 or RB2 will
>         be elected Designated Router in the IS-IS election for that
>         link). If
>         RB2 has better prioirty for
>         root, the RB1 will immediately stop forwarding to or from the
>         link when
>         it sees the Hello from RB2.
>         If RB2 has better priority in the IS-IS election, then RB1 should
>         immediately send an IS-IS Hello
>         when it sees a Hello from a new RBridge on the link.
>
>         So I think this is not a big deal, and that if we are worried,
>         we can
>         specify that an RBridge should
>         stop acting like the Designated RBridge for a few seconds
>         after the
>         identity of the Root in the spanning
>         tree algorithm changes.
>
>         Or we could be even fancier and have each RBridge announce in
>         its IS-IS
>         Hellos which LAN IDs it
>         is Designated for, where a LAN ID is the MAC address of the
>         Root bridge.
>         So RB1 continue
>         forwarding if the identity changes from B1 to B2 provided no other
>         RBridge has claimed to be connected
>         to B2. But if RB2's LSP claims it is attached to B2, then RB1
>         must stop
>         forwarding for enough time
>         for the IS-IS election to sort itself out and choose a
>         Designated RBridge.
>
>         Radia
>
>
>
>
>
>
>         Gideon Kaempfer wrote:
>
>         >Following mention by Silvano of broadcast and multicast storms
>         (and the need
>         >to protect against them), I played around with different
>         scenarios and came
>         >upon one I would appreciate your comments on (in the hope I am
>         pointing out
>         >a non-existent issue with TRILL). I believe a broadcast and
>         even a unicast
>         >storm could be created as the result of a loop that isn't
>         protected by TTL
>         >nor by STP in the case of a link connecting two separate LAN
>         segments coming
>         >to life.
>         >
>         >- RB1 ---- RB2 -
>         > | |
>         >- B1 --x-- B2 -
>         > | |
>         > H1 H2
>         >
>         >1. The network (segment) involved consists of two Rbridges
>         (RB1, RB2), two
>         >bridges (B1, B2) and two hosts (H1, H2). They are physically
>         connected as
>         >depicted.
>         >2. State A: the direct link between B1 and B2 is down. B1 and
>         B2 find
>         >themselves on different LAN segments and hence different
>         spanning trees. RB1
>         >and RB2 are both designated Rbridges (each for the segment of the
>         >corresponding bridge).
>         >3. State B: the direct link between B1 and B2 goes up (someone
>         connects a
>         >cable). B1 and B2 discover each other and establish a common
>         spanning tree.
>         >RB1 and RB2 both find themselves attached to the same LAN
>         segment and hence
>         >RB1 (without loss of generality) will eventually become the
>         designated
>         >Rbridge for it.
>         >4. Just before RB1 and RB2 identify that they are both on the
>         same segment
>         >and RB2 stops functioning as a designated Rbridge the
>         following scenario
>         >seems possible:
>         > a. H1 sends a broadcast frame.
>         > b. B1 receives it and forwards to RB1 and B2.
>         > c. RB1 (encapsulates and) forwards to RB2.
>         > d. B2 forwards to RB2 and H2.
>         > e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
>         to RB1).
>         > f. (RB1 forwards to B1.)
>         > g. B2 forwards (again) to H2 and to B1.
>         > h. B1 forwards to H1 (see remark below regarding filtering table
>         >contamination) and to RB1.
>         > i. Etcetera etcetera.
>         >5. A broadcast storm is born, created by a loop that is not
>         protected by TTL
>         >(due to the fact that forwarding between the Rbridges is only
>         across a
>         >single hop) nor by STP (due to the fact that Rbridges do not
>         participate in
>         >STP).
>         >6. If forwarding commences at the hardware level and no
>         broadcast rate
>         >limiting is in place, the storm may cause severe damage in a
>         very short time
>         >(note that replicated frames are sent to H1 and H2 (or any
>         network they
>         >could represent).
>         >7. Another unfortunate effect of this storm is that B1 and B2
>         no longer know
>         >where H1 is located (due to the contamination of their
>         filtering tables by a
>         >frame from H1 that arrives from the wrong direction (and in
>         fact from
>         >multiple directions). As a result, a possible unicast frame
>         from H2 to H1
>         >will just join the storm over the loop at least in one
>         direction (RB2 will
>         >forward it to RB1) but will not arrive at H1...
>         >
>         >One possible solution could be for RB2 to identify the fact
>         that it is
>         >receiving a frame from a host with a MAC address that is
>         associated with a
>         >segment it thought it isn't connected to. Hence, it may
>         trigger an immediate
>         >neighbor discovery / designated Rbridge election. However,
>         because Rbridges
>         >should allow host mobility, this frame may need to be
>         forwarded (and hence
>         >the storm commences).
>         >
>         >As mentioned above, any comments are welcome.
>         > Gideon Kaempfer
>         >
>         >_______________________________________________
>         >rbridge mailing list
>         >[email-masked] <mailto:[email-masked]>
>         > http://mailman.postel.org/mailman/listinfo/rbridge
>         >
>         >
>
>         _______________________________________________
>         rbridge mailing list
>         [email-masked] <mailto:[email-masked]>
>         http://mailman.postel.org/mailman/listinfo/rbridge
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Fri, 3 Nov 2006 16:28:18 -0500 
Cc: [email-masked], Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 36436

This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C6FF8E.FA51687C
Content-Type: text/plain

Silvano,
 
Does the specification currently say that you MUST ignore BPDUs?
 
I looked at the 3 drafts currently under discussion, and none of them
say that you should (let alone MUST) ignore BPDUs.  The Architecture
draft - which is strictly informative - says that it (the draft) assumes
that
RBridges "block STP."  And this occurs immediately after listing the
options considered (and listed in my reply to Gideon).
 
The base protocol specification says "RBridges MUST recognize and 
drop BPDUs." This is - IMO - significantly different from ignoring them,
but we could potentailly ask for clarification.  IMO, recognizing BPDUs
is sufficient to accomplish what has been suggested.
 
The P&AS is ambivalent on the topic.  So where have we said that you
MUST ignore BPDUs.
 
Even if a "standards track" specification did say that you MUST ignore
BPDUs, what do you suppose is going to happen to you if you don't 
ignore them?
 
I am pretty sure that nobody initially meant for routers to "snoop" IGMP
messages, for bridges to "snoop" routing advertisements and ARPs, or 
for hubs to "snoop" BPDUs, or perform MAC learning.  yet all of these 
things happen - and are even sometimes assumed to happen - in real 
world implementations.
 
Implementations live in the real world.  
 
But I agree that it is probably necessary to say that RBridges MUST
employ some means for detecting brdiging topology changes, citing
some of the methods we've discussed as examples.  That might - all
by itself - clarify the meaning of the expression "recognize and drop."
 
--
Eric

  _____  

From: Silvano Gai [mailto:[email-masked]] 
Sent: Friday, November 03, 2006 3:19 PM
To: Gray, Eric; Gideon Kaempfer; Radia Perlman
Cc: [email-masked]
Subject: RE: [rbridge] Traffic storms

Eric,

TRILL needs to be a well defined spec that guarantees products that are
interoperable.

If you write in the spec that BPDUs must be ignored, I will drop them.

If I need to do something different with BPDUs, then let's spell it out in
the spec.

I don't like the attitude, "oh, the spec is broken, but there is some magic
that will fix it".

Let's write in the spec what is this magic.

Also I suggest that people that have solved the problem of having a loop
free topology using ISIS, submit proposasl so that we can compare them.
Unfortunately I don't have one.

-- Silvano

  _____  

From: [email-masked] [mailto:[email-masked]] On
Behalf Of Gray, Eric
Sent: Friday, November 03, 2006 11:54 AM
To: Gideon Kaempfer; Radia Perlman
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms

Gideon,

    "Drop BPDUs" is not (exactly) the same as ignore them.  We use the term 

as short-hand for the one of three options we considered for handling BPDUs:

    Drop (do not participate actively in STP, and do not pass BPDUs
through), 

    Transparent (pass BPDUs through - potentially altering them in some
way),

    Participate (have each RBridge participate in STP as if it were a
bridge).

Hence, when we say "Drop BPDUs" we are not saying that we cannot look 

at them, we are just saying that we're not doing one of the other two
choices.

--

Eric

  _____  

From: [email-masked] [mailto:[email-masked]] On
Behalf Of Gideon Kaempfer
Sent: Friday, November 03, 2006 1:40 AM
To: Radia Perlman
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms

Radia,

Wouldn't this create a link between TRILL and STP we are trying to avoid?

Relying on the fact that a LAN segment has some kind of unique identifier
(such as the root bridge ID) seems like a very practical solution to me, but
strongly reliant on the fact that the Rbridges actually process BPDUs. I
thought they were just meant to discard them. Is this acceptable? 

Regrads,

 Gidi

On 11/3/06, Radia Perlman <[email-masked]
<mailto:[email-masked]> > wrote: 

The simplest way to put it, I think, is that in certain transitory
situations there might be two
RBridges that both think they are Designated RBridge, and that is bad, 
but should stop
as soon as a single Hello is received by the RBridge who should not be
Designated.

I think PIM has similar transitory situations that can occur, and
bridges can also have (hopefully
temporary) problems if a repeater came up and merged two LANs. I think
such things are
annoying but not fatal. But I think it's possible we can with little
effort avoid this problem.

However, with RBridges, because the bridge spanning tree algorithm 
elects a Root, there's
really a way of uniquely identifying a LAN (where "LAN" is a bunch of
links connected with
bridges). The unique identifier is the root bridge.

When the B1-B2 link is down, RB1 and RB2 will see the topology as two 
separate links, and each
one will have a distinct spanning tree Root bridge (RB1 will see B1, and
RB2 will see B2 as the root).

When the B1-B2 link comes up, the bridges will first merge the two
links, and either RB1 or RB2 will 
see that the bridge spanning tree root has changed. This will be
discovered before B1 and B2 forward
traffic across the link because of the bridge forwarding delay.
If B1 has better priority as bridge spanning tree root than B2, then RB1 
will not notice anything
different when the B1-B2 link comes up. But RB2 will notice
something different; the spanning tree root has changed identities from
"B2" to "B1".

Given this, RB2 could temporarily stop forwarding to or from the link 
when the Root bridge
changes identities, though it should definitely immediately send IS-IS
Hellos (either RB1 or RB2 will
be elected Designated Router in the IS-IS election for that link). If
RB2 has better prioirty for 
root, the RB1 will immediately stop forwarding to or from the link when
it sees the Hello from RB2.
If RB2 has better priority in the IS-IS election, then RB1 should
immediately send an IS-IS Hello
when it sees a Hello from a new RBridge on the link. 

So I think this is not a big deal, and that if we are worried, we can
specify that an RBridge should
stop acting like the Designated RBridge for a few seconds after the
identity of the Root in the spanning 
tree algorithm changes.

Or we could be even fancier and have each RBridge announce in its IS-IS
Hellos which LAN IDs it
is Designated for, where a LAN ID is the MAC address of the Root bridge.
So RB1 continue 
forwarding if the identity changes from B1 to B2 provided no other
RBridge has claimed to be connected
to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop
forwarding for enough time
for the IS-IS election to sort itself out and choose a Designated RBridge. 

Radia

Gideon Kaempfer wrote:

>Following mention by Silvano of broadcast and multicast storms (and the
need
>to protect against them), I played around with different scenarios and came

>upon one I would appreciate your comments on (in the hope I am pointing out
>a non-existent issue with TRILL). I believe a broadcast and even a unicast
>storm could be created as the result of a loop that isn't protected by TTL 
>nor by STP in the case of a link connecting two separate LAN segments
coming
>to life.
>
>- RB1 ---- RB2 -
>   |        |
>-  B1 --x-- B2 -
>   |        |
>   H1       H2
>
>1. The network (segment) involved consists of two Rbridges (RB1, RB2), two
>bridges (B1, B2) and two hosts (H1, H2). They are physically connected as
>depicted.
>2. State A: the direct link between B1 and B2 is down. B1 and B2 find 
>themselves on different LAN segments and hence different spanning trees.
RB1
>and RB2 are both designated Rbridges (each for the segment of the
>corresponding bridge).
>3. State B: the direct link between B1 and B2 goes up (someone connects a 
>cable). B1 and B2 discover each other and establish a common spanning tree.
>RB1 and RB2 both find themselves attached to the same LAN segment and hence
>RB1 (without loss of generality) will eventually become the designated 
>Rbridge for it.
>4. Just before RB1 and RB2 identify that they are both on the same segment
>and RB2 stops functioning as a designated Rbridge the following scenario
>seems possible:
>  a. H1 sends a broadcast frame. 
>  b. B1 receives it and forwards to RB1 and B2.
>  c. RB1 (encapsulates and) forwards to RB2.
>  d. B2 forwards to RB2 and H2.
>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1). 
>  f. (RB1 forwards to B1.)
>  g. B2 forwards (again) to H2 and to B1.
>  h. B1 forwards to H1 (see remark below regarding filtering table
>contamination) and to RB1.
>  i. Etcetera etcetera. 
>5. A broadcast storm is born, created by a loop that is not protected by
TTL
>(due to the fact that forwarding between the Rbridges is only across a
>single hop) nor by STP (due to the fact that Rbridges do not participate in

>STP).
>6. If forwarding commences at the hardware level and no broadcast rate
>limiting is in place, the storm may cause severe damage in a very short
time
>(note that replicated frames are sent to H1 and H2 (or any network they 
>could represent).
>7. Another unfortunate effect of this storm is that B1 and B2 no longer
know
>where H1 is located (due to the contamination of their filtering tables by
a
>frame from H1 that arrives from the wrong direction (and in fact from 
>multiple directions). As a result, a possible unicast frame from H2 to H1
>will just join the storm over the loop at least in one direction (RB2 will
>forward it to RB1) but will not arrive at H1...
>
>One possible solution could be for RB2 to identify the fact that it is
>receiving a frame from a host with a MAC address that is associated with a
>segment it thought it isn't connected to. Hence, it may trigger an
immediate 
>neighbor discovery / designated Rbridge election. However, because Rbridges
>should allow host mobility, this frame may need to be forwarded (and hence
>the storm commences).
>
>As mentioned above, any comments are welcome. 
>  Gideon Kaempfer
>
>_______________________________________________
>rbridge mailing list
>[email-masked] <mailto:[email-masked]> 
>  <http://mailman.postel.org/mailman/listinfo/rbridge>
http://mailman.postel.org/mailman/listinfo/rbridge

_______________________________________________
rbridge mailing list
[email-masked] <mailto:[email-masked]> 
http://mailman.postel.org/mailman/listinfo/rbridge
<http://mailman.postel.org/mailman/listinfo/rbridge> 

------_=_NextPart_001_01C6FF8E.FA51687C
Content-Type: text/html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v = 
"urn:schemas-microsoft-com:vml" xmlns:o = 
"urn:schemas-microsoft-com:office:office" xmlns:w = 
"urn:schemas-microsoft-com:office:word"><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">

<META content="MSHTML 6.00.2800.1561" name=GENERATOR><!--[if !mso]>
<STYLE>v\:* {
	BEHAVIOR: url(#default#VML)
}
o\:* {
	BEHAVIOR: url(#default#VML)
}
w\:* {
	BEHAVIOR: url(#default#VML)
}
.shape {
	BEHAVIOR: url(#default#VML)
}
</STYLE>
<![endif]-->
<STYLE>@font-face {
	font-family: Tahoma;
}
@page Section1 {size: 612.0pt 792.0pt; margin: 72.0pt 90.0pt 72.0pt 90.0pt; }
P.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
	COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
	COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
	COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
	COLOR: blue; TEXT-DECORATION: underline
}
SPAN.EmailStyle18 {
	COLOR: navy; FONT-FAMILY: Arial; mso-style-type: personal-reply
}
DIV.Section1 {
	page: Section1
}
</STYLE>
</HEAD>
<BODY lang=EN-US vLink=blue link=blue>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>Silvano,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>Does the specification currently say that you MUST 
<EM><STRONG>ignore</STRONG></EM> BPDUs?</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>I looked at the 3 drafts currently under discussion, and 
none of them</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>say that you should (let 
alone MUST) ignore BPDUs.&nbsp; The Architecture</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>draft - which is strictly 
informative - says that it (the draft) assumes that</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>RBridges "block 
STP."&nbsp; And this occurs immediately after listing the</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>options considered (and 
listed in my reply to Gideon).</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>The base protocol 
specification says "RBridges MUST recognize and&nbsp;<BR>drop BPDUs." This is - 
IMO - significantly different from ignoring them,</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>but we could potentailly 
ask for clarification.&nbsp; IMO, recognizing BPDUs</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>is sufficient to 
accomplish what has been suggested.</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>The P&amp;AS is 
ambivalent on the topic.&nbsp; So where have we said that you</SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006>MUST ignore 
BPDUs.</SPAN></DIV></FONT></SPAN>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>Even if&nbsp;a "standards track" specification&nbsp;did say 
that you MUST ignore</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>BPDUs, what do you suppose is going to happen to you if you 
</FONT></SPAN><SPAN class=682250521-03112006><FONT face=Arial color=#0000ff 
size=2>don't </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>ignore them?</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>I am pretty sure that nobody initially meant for routers to 
"snoop" IGMP</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>messages, for bridges to "snoop" routing advertisements and 
ARPs, or </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>for hubs </FONT></SPAN><SPAN class=682250521-03112006><FONT 
face=Arial color=#0000ff size=2>to "snoop" BPDUs, or perform MAC learning.&nbsp; 
yet all of these </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>things </FONT></SPAN><SPAN class=682250521-03112006><FONT 
face=Arial color=#0000ff size=2>happen - and are even sometimes assumed to 
happen - in real </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>world </FONT></SPAN><SPAN class=682250521-03112006><FONT 
face=Arial color=#0000ff size=2>implementations.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>Implementations live in the real world.&nbsp; 
</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>But I agree that it is probably necessary to say that 
RBridges MUST</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>employ some means for detecting brdiging topology changes, 
citing</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>some of the methods we've discussed as examples.&nbsp; That 
might - all</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>by itself - clarify the meaning of the expression 
"recognize and drop."</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>--</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=682250521-03112006><FONT face=Arial 
color=#0000ff size=2>Eric</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> Silvano Gai 
  [mailto:[email-masked]] <BR><B>Sent:</B> Friday, November 03, 2006 3:19 
  PM<BR><B>To:</B> Gray, Eric; Gideon Kaempfer; Radia Perlman<BR><B>Cc:</B> 
  [email-masked]<BR><B>Subject:</B> RE: [rbridge] Traffic 
  storms<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV class=Section1>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Eric,<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">TRILL needs to be a 
  well defined spec that guarantees products that are 
  interoperable.<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">If you write in the 
  spec that BPDUs must be ignored, I will drop 
them.<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">If I need to do 
  something different with BPDUs, then let&#8217;s spell it out in the 
  spec.<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">I don&#8217;t like the 
  attitude, &#8220;oh, the spec is broken, but there is some magic that will fix 
  it&#8221;.<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Let&#8217;s write in the 
  spec what is this magic.<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Also I suggest that 
  people that have solved the problem of having a loop free topology using ISIS, 
  submit proposasl so that we can compare them. Unfortunately I don&#8217;t have 
  one.<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">-- 
  Silvano<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <DIV 
  style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0pt; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0pt; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0pt; BORDER-BOTTOM: medium none">
  <DIV>
  <DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT 
  face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">
  <HR tabIndex=-1 align=center width="100%" SIZE=2>
  </SPAN></FONT></DIV>
  <P class=MsoNormal><B><FONT face=Tahoma size=2><SPAN 
  style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT 
  face=Tahoma size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"> 
  [email-masked] [mailto:[email-masked]] <B><SPAN 
  style="FONT-WEIGHT: bold">On Behalf Of </SPAN></B>Gray, Eric<BR><B><SPAN 
  style="FONT-WEIGHT: bold">Sent:</SPAN></B> Friday, November 03, 2006 11:54 
  AM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> Gideon Kaempfer; Radia 
  Perlman<BR><B><SPAN style="FONT-WEIGHT: bold">Cc:</SPAN></B> 
  [email-masked]<BR><B><SPAN style="FONT-WEIGHT: bold">Subject:</SPAN></B> 
  Re: [rbridge] Traffic storms</SPAN></FONT><o:p></o:p></P></DIV>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt"><o:p>&nbsp;</o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Gideon,</SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;&nbsp;&nbsp; </SPAN></FONT><FONT face=Arial 
  color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">"Drop BPDUs" is not 
  (exactly) the same as ignore them.&nbsp; We use the term 
  </SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">as short-hand for the 
  one of three options we considered for handling BPDUs: 
  </SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">&nbsp;&nbsp;&nbsp; 
  Drop (do not participate actively in STP, and do not pass BPDUs through), 
  </SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;&nbsp;&nbsp; </SPAN></FONT><FONT face=Arial 
  color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Transparent (pass 
  BPDUs through - potentially altering them in some 
  way),</SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;&nbsp;&nbsp; </SPAN></FONT><FONT face=Arial 
  color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Participate (have 
  each RBridge participate in STP as if it were a 
  bridge).</SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Hence, when we say 
  "Drop BPDUs" we are not saying that we cannot look 
  </SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">at them, we are just 
  saying that we're not doing one of the other two 
  choices.</SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
  style="FONT-SIZE: 12pt">&nbsp;<o:p></o:p></SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">--</SPAN></FONT><o:p></o:p></P>
  <P class=MsoNormal><FONT face=Arial color=blue size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Eric</SPAN></FONT><o:p></o:p></P>
  <BLOCKQUOTE 
  style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0pt; BORDER-TOP: medium none; PADDING-LEFT: 3pt; PADDING-BOTTOM: 0pt; MARGIN: 5pt 0pt 5pt 3pt; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0pt; BORDER-BOTTOM: medium none">
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt"><o:p>&nbsp;</o:p></SPAN></FONT></P>
    <DIV class=MsoNormal style="TEXT-ALIGN: center" align=center><FONT 
    face="Times New Roman" size=3><SPAN style="FONT-SIZE: 12pt">
    <HR tabIndex=-1 align=center width="100%" SIZE=2>
    </SPAN></FONT></DIV>
    <P class=MsoNormal style="MARGIN-BOTTOM: 12pt"><B><FONT face=Tahoma 
    size=2><SPAN 
    style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT 
    face=Tahoma size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"> 
    [email-masked] [mailto:[email-masked]] <B><SPAN 
    style="FONT-WEIGHT: bold">On Behalf Of </SPAN></B>Gideon 
    Kaempfer<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Friday, 
    November 03, 2006 1:40 AM<BR><B><SPAN 
    style="FONT-WEIGHT: bold">To:</SPAN></B> Radia Perlman<BR><B><SPAN 
    style="FONT-WEIGHT: bold">Cc:</SPAN></B> [email-masked]<BR><B><SPAN 
    style="FONT-WEIGHT: bold">Subject:</SPAN></B> Re: [rbridge] Traffic 
    storms</SPAN></FONT><o:p></o:p></P>
    <DIV>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">Radia,<o:p></o:p></SPAN></FONT></P></DIV>
    <DIV>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">Wouldn't this create a link between TRILL and STP we 
    are trying to avoid?<o:p></o:p></SPAN></FONT></P></DIV>
    <DIV>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">Relying on the fact that a LAN segment has some kind 
    of unique identifier (such as the root bridge ID) seems like a very 
    practical solution to me, but strongly reliant on the fact that the Rbridges 
    actually process BPDUs. I thought they were just meant to discard them. Is 
    this acceptable? <o:p></o:p></SPAN></FONT></P></DIV>
    <DIV>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">Regrads,<o:p></o:p></SPAN></FONT></P></DIV>
    <DIV>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">&nbsp;Gidi<BR><BR>&nbsp;<o:p></o:p></SPAN></FONT></P></DIV>
    <DIV>
    <P class=MsoNormal><SPAN class=gmailquote><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt">On 11/3/06, <B><SPAN 
    style="FONT-WEIGHT: bold">Radia Perlman</SPAN></B> &lt;<A 
    href="mailto:[email-masked]">[email-masked]</A>&gt; 
    wrote:</SPAN></FONT></SPAN> <o:p></o:p></P>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">The simplest way to put it, I think, is that in 
    certain transitory<BR>situations there might be two<BR>RBridges that both 
    think they are Designated RBridge, and that is bad, <BR>but should 
    stop<BR>as soon as a single Hello is received by the RBridge who should not 
    be<BR>Designated.<BR><BR>I think PIM has similar transitory situations that 
    can occur, and<BR>bridges can also have (hopefully<BR>temporary) problems if 
    a repeater came up and merged two LANs. I think<BR>such things 
    are<BR>annoying but not fatal. But I think it's possible we can with 
    little<BR>effort avoid this problem.<BR><BR>However, with RBridges, because 
    the bridge spanning tree algorithm <BR>elects a Root, there's<BR>really a 
    way of uniquely identifying a LAN (where "LAN" is a bunch of<BR>links 
    connected with<BR>bridges). The unique identifier is the root 
    bridge.<BR><BR>When the B1-B2 link is down, RB1 and RB2 will see the 
    topology as two <BR>separate links, and each<BR>one will have a distinct 
    spanning tree Root bridge (RB1 will see B1, and<BR>RB2 will see B2 as the 
    root).<BR><BR>When the B1-B2 link comes up, the bridges will first merge the 
    two<BR>links, and either RB1 or RB2 will <BR>see that the bridge spanning 
    tree root has changed. This will be<BR>discovered before B1 and B2 
    forward<BR>traffic across the link because of the bridge forwarding 
    delay.<BR>If B1 has better priority as bridge spanning tree root than B2, 
    then RB1 <BR>will not notice anything<BR>different when the B1-B2 link comes 
    up. But RB2 will notice<BR>something different; the spanning tree root has 
    changed identities from<BR>"B2" to "B1".<BR><BR>Given this, RB2 could 
    temporarily stop forwarding to or from the link <BR>when the Root 
    bridge<BR>changes identities, though it should definitely immediately send 
    IS-IS<BR>Hellos (either RB1 or RB2 will<BR>be elected Designated Router in 
    the IS-IS election for that link). If<BR>RB2 has better prioirty for 
    <BR>root, the RB1 will immediately stop forwarding to or from the link 
    when<BR>it sees the Hello from RB2.<BR>If RB2 has better priority in the 
    IS-IS election, then RB1 should<BR>immediately send an IS-IS Hello<BR>when 
    it sees a Hello from a new RBridge on the link. <BR><BR>So I think this is 
    not a big deal, and that if we are worried, we can<BR>specify that an 
    RBridge should<BR>stop acting like the Designated RBridge for a few seconds 
    after the<BR>identity of the Root in the spanning <BR>tree algorithm 
    changes.<BR><BR>Or we could be even fancier and have each RBridge announce 
    in its IS-IS<BR>Hellos which LAN IDs it<BR>is Designated for, where a LAN ID 
    is the MAC address of the Root bridge.<BR>So RB1 continue <BR>forwarding if 
    the identity changes from B1 to B2 provided no other<BR>RBridge has claimed 
    to be connected<BR>to B2. But if RB2's LSP claims it is attached to B2, then 
    RB1 must stop<BR>forwarding for enough time<BR>for the IS-IS election to 
    sort itself out and choose a Designated RBridge. 
    <BR><BR>Radia<BR><BR><BR><BR><BR><BR><BR>Gideon Kaempfer 
    wrote:<BR><BR>&gt;Following mention by Silvano of broadcast and multicast 
    storms (and the need<BR>&gt;to protect against them), I played around with 
    different scenarios and came <BR>&gt;upon one I would appreciate your 
    comments on (in the hope I am pointing out<BR>&gt;a non-existent issue with 
    TRILL). I believe a broadcast and even a unicast<BR>&gt;storm could be 
    created as the result of a loop that isn't protected by TTL <BR>&gt;nor by 
    STP in the case of a link connecting two separate LAN segments 
    coming<BR>&gt;to life.<BR>&gt;<BR>&gt;- RB1 ---- RB2 -<BR>&gt;&nbsp;&nbsp; 
    |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<BR>&gt;-&nbsp;&nbsp;B1 
    --x-- B2 -<BR>&gt;&nbsp;&nbsp; 
    |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<BR>&gt;&nbsp;&nbsp; 
    H1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; H2<BR>&gt;<BR>&gt;1. The network 
    (segment) involved consists of two Rbridges (RB1, RB2), two<BR>&gt;bridges 
    (B1, B2) and two hosts (H1, H2). They are physically connected 
    as<BR>&gt;depicted.<BR>&gt;2. State A: the direct link between B1 and B2 is 
    down. B1 and B2 find <BR>&gt;themselves on different LAN segments and hence 
    different spanning trees. RB1<BR>&gt;and RB2 are both designated Rbridges 
    (each for the segment of the<BR>&gt;corresponding bridge).<BR>&gt;3. State 
    B: the direct link between B1 and B2 goes up (someone connects a 
    <BR>&gt;cable). B1 and B2 discover each other and establish a common 
    spanning tree.<BR>&gt;RB1 and RB2 both find themselves attached to the same 
    LAN segment and hence<BR>&gt;RB1 (without loss of generality) will 
    eventually become the designated <BR>&gt;Rbridge for it.<BR>&gt;4. Just 
    before RB1 and RB2 identify that they are both on the same 
    segment<BR>&gt;and RB2 stops functioning as a designated Rbridge the 
    following scenario<BR>&gt;seems possible:<BR>&gt;&nbsp;&nbsp;a. H1 sends a 
    broadcast frame. <BR>&gt;&nbsp;&nbsp;b. B1 receives it and forwards to RB1 
    and B2.<BR>&gt;&nbsp;&nbsp;c. RB1 (encapsulates and) forwards to 
    RB2.<BR>&gt;&nbsp;&nbsp;d. B2 forwards to RB2 and H2.<BR>&gt;&nbsp;&nbsp;e. 
    RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1). 
    <BR>&gt;&nbsp;&nbsp;f. (RB1 forwards to B1.)<BR>&gt;&nbsp;&nbsp;g. B2 
    forwards (again) to H2 and to B1.<BR>&gt;&nbsp;&nbsp;h. B1 forwards to H1 
    (see remark below regarding filtering table<BR>&gt;contamination) and to 
    RB1.<BR>&gt;&nbsp;&nbsp;i. Etcetera etcetera. <BR>&gt;5. A broadcast storm 
    is born, created by a loop that is not protected by TTL<BR>&gt;(due to the 
    fact that forwarding between the Rbridges is only across a<BR>&gt;single 
    hop) nor by STP (due to the fact that Rbridges do not participate in 
    <BR>&gt;STP).<BR>&gt;6. If forwarding commences at the hardware level and no 
    broadcast rate<BR>&gt;limiting is in place, the storm may cause severe 
    damage in a very short time<BR>&gt;(note that replicated frames are sent to 
    H1 and H2 (or any network they <BR>&gt;could represent).<BR>&gt;7. Another 
    unfortunate effect of this storm is that B1 and B2 no longer 
    know<BR>&gt;where H1 is located (due to the contamination of their filtering 
    tables by a<BR>&gt;frame from H1 that arrives from the wrong direction (and 
    in fact from <BR>&gt;multiple directions). As a result, a possible unicast 
    frame from H2 to H1<BR>&gt;will just join the storm over the loop at least 
    in one direction (RB2 will<BR>&gt;forward it to RB1) but will not arrive at 
    H1...<BR>&gt;<BR>&gt;One possible solution could be for RB2 to identify the 
    fact that it is<BR>&gt;receiving a frame from a host with a MAC address that 
    is associated with a<BR>&gt;segment it thought it isn't connected to. Hence, 
    it may trigger an immediate <BR>&gt;neighbor discovery / designated Rbridge 
    election. However, because Rbridges<BR>&gt;should allow host mobility, this 
    frame may need to be forwarded (and hence<BR>&gt;the storm 
    commences).<BR>&gt;<BR>&gt;As mentioned above, any comments are welcome. 
    <BR>&gt;&nbsp;&nbsp;Gideon 
    Kaempfer<BR>&gt;<BR>&gt;_______________________________________________<BR>&gt;rbridge 
    mailing list<BR>&gt;<A 
    href="mailto:[email-masked]">[email-masked]</A><BR>&gt;<A 
    href="http://mailman.postel.org/mailman/listinfo/rbridge"> 
    http://mailman.postel.org/mailman/listinfo/rbridge</A><BR>&gt;<BR>&gt;<BR><BR>_______________________________________________<BR>rbridge 
    mailing list<BR><A 
    href="mailto:[email-masked]">[email-masked]</A><BR><A 
    href="http://mailman.postel.org/mailman/listinfo/rbridge">http://mailman.postel.org/mailman/listinfo/rbridge</A><o:p></o:p></SPAN></FONT></P></DIV>
    <P class=MsoNormal><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt"><o:p>&nbsp;</o:p></SPAN></FONT></P></BLOCKQUOTE></DIV></DIV></BLOCKQUOTE></BODY></HTML>

------_=_NextPart_001_01C6FF8E.FA51687C--

Content-class: urn:content-classes:message
Date: Fri, 3 Nov 2006 12:19:05 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Gideon Kaempfer" <[email-masked]>,  "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 28335

This is a multi-part message in MIME format.

------_=_NextPart_001_01C6FF85.518FA3D7
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Eric,

=20

TRILL needs to be a well defined spec that guarantees products that are
interoperable.

If you write in the spec that BPDUs must be ignored, I will drop them.

=20

If I need to do something different with BPDUs, then let's spell it out
in the spec.

=20

I don't like the attitude, "oh, the spec is broken, but there is some
magic that will fix it".

Let's write in the spec what is this magic.

=20

Also I suggest that people that have solved the problem of having a loop
free topology using ISIS, submit proposasl so that we can compare them.
Unfortunately I don't have one.

=20

-- Silvano

=20

________________________________

From: [email-masked] [mailto:[email-masked]] On
Behalf Of Gray, Eric
Sent: Friday, November 03, 2006 11:54 AM
To: Gideon Kaempfer; Radia Perlman
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms

=20

Gideon,

=20

    "Drop BPDUs" is not (exactly) the same as ignore them.  We use the
term=20

as short-hand for the one of three options we considered for handling
BPDUs:=20

=20

    Drop (do not participate actively in STP, and do not pass BPDUs
through),=20

    Transparent (pass BPDUs through - potentially altering them in some
way),

    Participate (have each RBridge participate in STP as if it were a
bridge).

=20

Hence, when we say "Drop BPDUs" we are not saying that we cannot look=20

at them, we are just saying that we're not doing one of the other two
choices.

=20

--

Eric

	=20

=09
________________________________

	From: [email-masked]
[mailto:[email-masked]] On Behalf Of Gideon Kaempfer
	Sent: Friday, November 03, 2006 1:40 AM
	To: Radia Perlman
	Cc: [email-masked]
	Subject: Re: [rbridge] Traffic storms

	Radia,

	Wouldn't this create a link between TRILL and STP we are trying
to avoid?

	Relying on the fact that a LAN segment has some kind of unique
identifier (such as the root bridge ID) seems like a very practical
solution to me, but strongly reliant on the fact that the Rbridges
actually process BPDUs. I thought they were just meant to discard them.
Is this acceptable?=20

	Regrads,

	 Gidi
=09
	=20

	On 11/3/06, Radia Perlman <[email-masked]> wrote:=20

	The simplest way to put it, I think, is that in certain
transitory
	situations there might be two
	RBridges that both think they are Designated RBridge, and that
is bad,=20
	but should stop
	as soon as a single Hello is received by the RBridge who should
not be
	Designated.
=09
	I think PIM has similar transitory situations that can occur,
and
	bridges can also have (hopefully
	temporary) problems if a repeater came up and merged two LANs. I
think
	such things are
	annoying but not fatal. But I think it's possible we can with
little
	effort avoid this problem.
=09
	However, with RBridges, because the bridge spanning tree
algorithm=20
	elects a Root, there's
	really a way of uniquely identifying a LAN (where "LAN" is a
bunch of
	links connected with
	bridges). The unique identifier is the root bridge.
=09
	When the B1-B2 link is down, RB1 and RB2 will see the topology
as two=20
	separate links, and each
	one will have a distinct spanning tree Root bridge (RB1 will see
B1, and
	RB2 will see B2 as the root).
=09
	When the B1-B2 link comes up, the bridges will first merge the
two
	links, and either RB1 or RB2 will=20
	see that the bridge spanning tree root has changed. This will be
	discovered before B1 and B2 forward
	traffic across the link because of the bridge forwarding delay.
	If B1 has better priority as bridge spanning tree root than B2,
then RB1=20
	will not notice anything
	different when the B1-B2 link comes up. But RB2 will notice
	something different; the spanning tree root has changed
identities from
	"B2" to "B1".
=09
	Given this, RB2 could temporarily stop forwarding to or from the
link=20
	when the Root bridge
	changes identities, though it should definitely immediately send
IS-IS
	Hellos (either RB1 or RB2 will
	be elected Designated Router in the IS-IS election for that
link). If
	RB2 has better prioirty for=20
	root, the RB1 will immediately stop forwarding to or from the
link when
	it sees the Hello from RB2.
	If RB2 has better priority in the IS-IS election, then RB1
should
	immediately send an IS-IS Hello
	when it sees a Hello from a new RBridge on the link.=20
=09
	So I think this is not a big deal, and that if we are worried,
we can
	specify that an RBridge should
	stop acting like the Designated RBridge for a few seconds after
the
	identity of the Root in the spanning=20
	tree algorithm changes.
=09
	Or we could be even fancier and have each RBridge announce in
its IS-IS
	Hellos which LAN IDs it
	is Designated for, where a LAN ID is the MAC address of the Root
bridge.
	So RB1 continue=20
	forwarding if the identity changes from B1 to B2 provided no
other
	RBridge has claimed to be connected
	to B2. But if RB2's LSP claims it is attached to B2, then RB1
must stop
	forwarding for enough time
	for the IS-IS election to sort itself out and choose a
Designated RBridge.=20
=09
	Radia
=09
=09
=09
=09
=09
=09
	Gideon Kaempfer wrote:
=09
	>Following mention by Silvano of broadcast and multicast storms
(and the need
	>to protect against them), I played around with different
scenarios and came=20
	>upon one I would appreciate your comments on (in the hope I am
pointing out
	>a non-existent issue with TRILL). I believe a broadcast and
even a unicast
	>storm could be created as the result of a loop that isn't
protected by TTL=20
	>nor by STP in the case of a link connecting two separate LAN
segments coming
	>to life.
	>
	>- RB1 ---- RB2 -
	>   |        |
	>-  B1 --x-- B2 -
	>   |        |
	>   H1       H2
	>
	>1. The network (segment) involved consists of two Rbridges
(RB1, RB2), two
	>bridges (B1, B2) and two hosts (H1, H2). They are physically
connected as
	>depicted.
	>2. State A: the direct link between B1 and B2 is down. B1 and
B2 find=20
	>themselves on different LAN segments and hence different
spanning trees. RB1
	>and RB2 are both designated Rbridges (each for the segment of
the
	>corresponding bridge).
	>3. State B: the direct link between B1 and B2 goes up (someone
connects a=20
	>cable). B1 and B2 discover each other and establish a common
spanning tree.
	>RB1 and RB2 both find themselves attached to the same LAN
segment and hence
	>RB1 (without loss of generality) will eventually become the
designated=20
	>Rbridge for it.
	>4. Just before RB1 and RB2 identify that they are both on the
same segment
	>and RB2 stops functioning as a designated Rbridge the following
scenario
	>seems possible:
	>  a. H1 sends a broadcast frame.=20
	>  b. B1 receives it and forwards to RB1 and B2.
	>  c. RB1 (encapsulates and) forwards to RB2.
	>  d. B2 forwards to RB2 and H2.
	>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2
to RB1).=20
	>  f. (RB1 forwards to B1.)
	>  g. B2 forwards (again) to H2 and to B1.
	>  h. B1 forwards to H1 (see remark below regarding filtering
table
	>contamination) and to RB1.
	>  i. Etcetera etcetera.=20
	>5. A broadcast storm is born, created by a loop that is not
protected by TTL
	>(due to the fact that forwarding between the Rbridges is only
across a
	>single hop) nor by STP (due to the fact that Rbridges do not
participate in=20
	>STP).
	>6. If forwarding commences at the hardware level and no
broadcast rate
	>limiting is in place, the storm may cause severe damage in a
very short time
	>(note that replicated frames are sent to H1 and H2 (or any
network they=20
	>could represent).
	>7. Another unfortunate effect of this storm is that B1 and B2
no longer know
	>where H1 is located (due to the contamination of their
filtering tables by a
	>frame from H1 that arrives from the wrong direction (and in
fact from=20
	>multiple directions). As a result, a possible unicast frame
from H2 to H1
	>will just join the storm over the loop at least in one
direction (RB2 will
	>forward it to RB1) but will not arrive at H1...
	>
	>One possible solution could be for RB2 to identify the fact
that it is
	>receiving a frame from a host with a MAC address that is
associated with a
	>segment it thought it isn't connected to. Hence, it may trigger
an immediate=20
	>neighbor discovery / designated Rbridge election. However,
because Rbridges
	>should allow host mobility, this frame may need to be forwarded
(and hence
	>the storm commences).
	>
	>As mentioned above, any comments are welcome.=20
	>  Gideon Kaempfer
	>
	>_______________________________________________
	>rbridge mailing list
	>[email-masked]
	> http://mailman.postel.org/mailman/listinfo/rbridge
<http://mailman.postel.org/mailman/listinfo/rbridge>=20
=09
	_______________________________________________
	rbridge mailing list
	[email-masked]
	http://mailman.postel.org/mailman/listinfo/rbridge

	=20

------_=_NextPart_001_01C6FF85.518FA3D7
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns=3D"http://www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<style>
<!--
 /* Font Definitions */
 @font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0pt;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman";}
a:link, span.MsoHyperlink
	{color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{color:blue;
	text-decoration:underline;}
span.EmailStyle18
	{mso-style-type:personal-reply;
	font-family:Arial;
	color:navy;}
@page Section1
	{size:612.0pt 792.0pt;
	margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.Section1
	{page:Section1;}
-->
</style>

</head>

<body lang=3DEN-US link=3Dblue vlink=3Dblue>

<div class=3DSection1>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>Eric,<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>TRILL needs to be a well defined =
spec that
guarantees products that are interoperable.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>If you write in the spec that BPDUs =
must
be ignored, I will drop them.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>If I need to do something different =
with
BPDUs, then let&#8217;s spell it out in the =
spec.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>I don&#8217;t like the attitude, =
&#8220;oh,
the spec is broken, but there is some magic that will fix =
it&#8221;.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>Let&#8217;s write in the spec what =
is this
magic.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>Also I suggest that people that =
have
solved the problem of having a loop free topology using ISIS, submit =
proposasl
so that we can compare them. Unfortunately I don&#8217;t have =
one.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>-- =
Silvano<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<div style=3D'border:none;border-left:solid blue 1.5pt;padding:0pt 0pt =
0pt 4.0pt'>

<div>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabindex=3D-1>

</span></font></div>

<p class=3DMsoNormal><b><font size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font =
size=3D2
face=3DTahoma><span style=3D'font-size:10.0pt;font-family:Tahoma'>
[email-masked] [mailto:[email-masked]] <b><span
style=3D'font-weight:bold'>On Behalf Of </span></b>Gray, Eric<br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Friday, November =
03, 2006
11:54 AM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> Gideon Kaempfer; =
Radia Perlman<br>
<b><span style=3D'font-weight:bold'>Cc:</span></b> =
[email-masked]<br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> Re: [rbridge] =
Traffic
storms</span></font><o:p></o:p></p>

</div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>Gideon,</span></font><o:p></o:p></p>=

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;&nbsp;&nbsp; </span></font><font size=3D2 color=3Dblue =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial;color:blue'>&quot;Drop =
BPDUs&quot; is
not (exactly) the same as ignore them.&nbsp; We use the term =
</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>as short-hand for the one of three =
options
we considered for handling BPDUs: </span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>&nbsp;&nbsp;&nbsp; Drop (do not
participate actively in STP, and do not pass BPDUs through), =
</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;&nbsp;&nbsp; </span></font><font size=3D2 color=3Dblue =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial;color:blue'>Transparent =
(pass BPDUs
through - potentially altering them in some =
way),</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;&nbsp;&nbsp; </span></font><font size=3D2 color=3Dblue =
face=3DArial><span
style=3D'font-size:10.0pt;font-family:Arial;color:blue'>Participate =
(have each
RBridge participate in STP as if it were a =
bridge).</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>Hence, when we say &quot;Drop =
BPDUs&quot;
we are not saying that we cannot look </span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>at them, we are just saying that =
we're not
doing one of the other two choices.</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>--</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>Eric</span></font><o:p></o:p></p>

<blockquote style=3D'border:none;border-left:solid blue =
1.5pt;padding:0pt 0pt 0pt 3.0pt;
margin-left:3.0pt;margin-top:5.0pt;margin-right:0pt;margin-bottom:5.0pt'>=

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabIndex=3D-1>

</span></font></div>

<p class=3DMsoNormal style=3D'margin-bottom:12.0pt'><b><font size=3D2 =
face=3DTahoma><span
style=3D'font-size:10.0pt;font-family:Tahoma;font-weight:bold'>From:</spa=
n></font></b><font
size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;font-family:Tahoma'>
[email-masked] [mailto:[email-masked]] <b><span
style=3D'font-weight:bold'>On Behalf Of </span></b>Gideon Kaempfer<br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Friday, November =
03, 2006
1:40 AM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> Radia Perlman<br>
<b><span style=3D'font-weight:bold'>Cc:</span></b> =
[email-masked]<br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> Re: [rbridge] =
Traffic
storms</span></font><o:p></o:p></p>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>Radia,<o:p></o:p></span></font></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>Wouldn't this create a link between TRILL and STP we are trying =
to
avoid?<o:p></o:p></span></font></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>Relying on the fact that a LAN segment has some kind of unique
identifier (such as the root bridge ID) seems like a very practical =
solution to
me, but strongly reliant on the fact that the Rbridges actually process =
BPDUs.
I thought they were just meant to discard them. Is this acceptable? =
<o:p></o:p></span></font></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>Regrads,<o:p></o:p></span></font></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;Gidi<br>
<br>
&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=3DMsoNormal><span class=3Dgmailquote><font size=3D3 =
face=3D"Times New Roman"><span
style=3D'font-size:12.0pt'>On 11/3/06, <b><span =
style=3D'font-weight:bold'>Radia
Perlman</span></b> &lt;<a =
href=3D"mailto:[email-masked]">[email-masked]</a>&gt;
wrote:</span></font></span> <o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>The simplest way to put it, I think, is that in certain =
transitory<br>
situations there might be two<br>
RBridges that both think they are Designated RBridge, and that is bad, =
<br>
but should stop<br>
as soon as a single Hello is received by the RBridge who should not =
be<br>
Designated.<br>
<br>
I think PIM has similar transitory situations that can occur, and<br>
bridges can also have (hopefully<br>
temporary) problems if a repeater came up and merged two LANs. I =
think<br>
such things are<br>
annoying but not fatal. But I think it's possible we can with little<br>
effort avoid this problem.<br>
<br>
However, with RBridges, because the bridge spanning tree algorithm <br>
elects a Root, there's<br>
really a way of uniquely identifying a LAN (where &quot;LAN&quot; is a =
bunch of<br>
links connected with<br>
bridges). The unique identifier is the root bridge.<br>
<br>
When the B1-B2 link is down, RB1 and RB2 will see the topology as two =
<br>
separate links, and each<br>
one will have a distinct spanning tree Root bridge (RB1 will see B1, =
and<br>
RB2 will see B2 as the root).<br>
<br>
When the B1-B2 link comes up, the bridges will first merge the two<br>
links, and either RB1 or RB2 will <br>
see that the bridge spanning tree root has changed. This will be<br>
discovered before B1 and B2 forward<br>
traffic across the link because of the bridge forwarding delay.<br>
If B1 has better priority as bridge spanning tree root than B2, then RB1 =
<br>
will not notice anything<br>
different when the B1-B2 link comes up. But RB2 will notice<br>
something different; the spanning tree root has changed identities =
from<br>
&quot;B2&quot; to &quot;B1&quot;.<br>
<br>
Given this, RB2 could temporarily stop forwarding to or from the link =
<br>
when the Root bridge<br>
changes identities, though it should definitely immediately send =
IS-IS<br>
Hellos (either RB1 or RB2 will<br>
be elected Designated Router in the IS-IS election for that link). =
If<br>
RB2 has better prioirty for <br>
root, the RB1 will immediately stop forwarding to or from the link =
when<br>
it sees the Hello from RB2.<br>
If RB2 has better priority in the IS-IS election, then RB1 should<br>
immediately send an IS-IS Hello<br>
when it sees a Hello from a new RBridge on the link. <br>
<br>
So I think this is not a big deal, and that if we are worried, we =
can<br>
specify that an RBridge should<br>
stop acting like the Designated RBridge for a few seconds after the<br>
identity of the Root in the spanning <br>
tree algorithm changes.<br>
<br>
Or we could be even fancier and have each RBridge announce in its =
IS-IS<br>
Hellos which LAN IDs it<br>
is Designated for, where a LAN ID is the MAC address of the Root =
bridge.<br>
So RB1 continue <br>
forwarding if the identity changes from B1 to B2 provided no other<br>
RBridge has claimed to be connected<br>
to B2. But if RB2's LSP claims it is attached to B2, then RB1 must =
stop<br>
forwarding for enough time<br>
for the IS-IS election to sort itself out and choose a Designated =
RBridge. <br>
<br>
Radia<br>
<br>
<br>
<br>
<br>
<br>
<br>
Gideon Kaempfer wrote:<br>
<br>
&gt;Following mention by Silvano of broadcast and multicast storms (and =
the
need<br>
&gt;to protect against them), I played around with different scenarios =
and came
<br>
&gt;upon one I would appreciate your comments on (in the hope I am =
pointing out<br>
&gt;a non-existent issue with TRILL). I believe a broadcast and even a =
unicast<br>
&gt;storm could be created as the result of a loop that isn't protected =
by TTL <br>
&gt;nor by STP in the case of a link connecting two separate LAN =
segments
coming<br>
&gt;to life.<br>
&gt;<br>
&gt;- RB1 ---- RB2 -<br>
&gt;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br>
&gt;-&nbsp;&nbsp;B1 --x-- B2 -<br>
&gt;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br>
&gt;&nbsp;&nbsp; H1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; H2<br>
&gt;<br>
&gt;1. The network (segment) involved consists of two Rbridges (RB1, =
RB2), two<br>
&gt;bridges (B1, B2) and two hosts (H1, H2). They are physically =
connected as<br>
&gt;depicted.<br>
&gt;2. State A: the direct link between B1 and B2 is down. B1 and B2 =
find <br>
&gt;themselves on different LAN segments and hence different spanning =
trees.
RB1<br>
&gt;and RB2 are both designated Rbridges (each for the segment of =
the<br>
&gt;corresponding bridge).<br>
&gt;3. State B: the direct link between B1 and B2 goes up (someone =
connects a <br>
&gt;cable). B1 and B2 discover each other and establish a common =
spanning tree.<br>
&gt;RB1 and RB2 both find themselves attached to the same LAN segment =
and hence<br>
&gt;RB1 (without loss of generality) will eventually become the =
designated <br>
&gt;Rbridge for it.<br>
&gt;4. Just before RB1 and RB2 identify that they are both on the same =
segment<br>
&gt;and RB2 stops functioning as a designated Rbridge the following =
scenario<br>
&gt;seems possible:<br>
&gt;&nbsp;&nbsp;a. H1 sends a broadcast frame. <br>
&gt;&nbsp;&nbsp;b. B1 receives it and forwards to RB1 and B2.<br>
&gt;&nbsp;&nbsp;c. RB1 (encapsulates and) forwards to RB2.<br>
&gt;&nbsp;&nbsp;d. B2 forwards to RB2 and H2.<br>
&gt;&nbsp;&nbsp;e. RB2 forwards the copy from RB1 to B2 (and the copy =
from B2
to RB1). <br>
&gt;&nbsp;&nbsp;f. (RB1 forwards to B1.)<br>
&gt;&nbsp;&nbsp;g. B2 forwards (again) to H2 and to B1.<br>
&gt;&nbsp;&nbsp;h. B1 forwards to H1 (see remark below regarding =
filtering
table<br>
&gt;contamination) and to RB1.<br>
&gt;&nbsp;&nbsp;i. Etcetera etcetera. <br>
&gt;5. A broadcast storm is born, created by a loop that is not =
protected by
TTL<br>
&gt;(due to the fact that forwarding between the Rbridges is only across =
a<br>
&gt;single hop) nor by STP (due to the fact that Rbridges do not =
participate in
<br>
&gt;STP).<br>
&gt;6. If forwarding commences at the hardware level and no broadcast =
rate<br>
&gt;limiting is in place, the storm may cause severe damage in a very =
short
time<br>
&gt;(note that replicated frames are sent to H1 and H2 (or any network =
they <br>
&gt;could represent).<br>
&gt;7. Another unfortunate effect of this storm is that B1 and B2 no =
longer
know<br>
&gt;where H1 is located (due to the contamination of their filtering =
tables by
a<br>
&gt;frame from H1 that arrives from the wrong direction (and in fact =
from <br>
&gt;multiple directions). As a result, a possible unicast frame from H2 =
to H1<br>
&gt;will just join the storm over the loop at least in one direction =
(RB2 will<br>
&gt;forward it to RB1) but will not arrive at H1...<br>
&gt;<br>
&gt;One possible solution could be for RB2 to identify the fact that it =
is<br>
&gt;receiving a frame from a host with a MAC address that is associated =
with a<br>
&gt;segment it thought it isn't connected to. Hence, it may trigger an
immediate <br>
&gt;neighbor discovery / designated Rbridge election. However, because =
Rbridges<br>
&gt;should allow host mobility, this frame may need to be forwarded (and =
hence<br>
&gt;the storm commences).<br>
&gt;<br>
&gt;As mentioned above, any comments are welcome. <br>
&gt;&nbsp;&nbsp;Gideon Kaempfer<br>
&gt;<br>
&gt;_______________________________________________<br>
&gt;rbridge mailing list<br>
&gt;<a href=3D"mailto:[email-masked]">[email-masked]</a><br>
&gt;<a href=3D"http://mailman.postel.org/mailman/listinfo/rbridge">
http://mailman.postel.org/mailman/listinfo/rbridge</a><br>
&gt;<br>
&gt;<br>
<br>
_______________________________________________<br>
rbridge mailing list<br>
<a href=3D"mailto:[email-masked]">[email-masked]</a><br>
<a =
href=3D"http://mailman.postel.org/mailman/listinfo/rbridge">http://mailma=
n.postel.org/mailman/listinfo/rbridge</a><o:p></o:p></span></font></p>

</div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

</blockquote>

</div>

</div>

</body>

</html>

------_=_NextPart_001_01C6FF85.518FA3D7--

From: "Gray, Eric" <[email-masked]>
To: "Joel M. Halpern" <[email-masked]>, "Developing a hybrid router/bridge." <[email-masked]>
Date: Fri, 3 Nov 2006 15:11:47 -0500 
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 12633

Joel,

	These are techniques for preventing the formation of temporary
loops during a routing change.  Ordered FIB updates does not seen to
address the potential for dealing with a loop introduced through an
agency outside of routing.  For one thing, such loops exist before a
router can detect them, hence there is nothing a router can do to 
prevent them.

	Order FIB updates is a reasonable technique for avoiding loops
in reconstructing route entries after a purge, however, and this is 
something we should consider.  However, in the RBridge case, I think
FIB entries will be naturally ordered (once we are sure of a stable
bridge topology in attached LAN segments) by the process in which 
MAC address learning information is distributed - via IS-IS - from 
egress toward ingresses.

	Is that not true, or are there specific cases in which it might
not be true?

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Joel M. Halpern
--> Sent: Friday, November 03, 2006 11:21 AM
--> To: Developing a hybrid router/bridge.
--> Subject: Re: [rbridge] Traffic storms
--> 
--> If we need to make the link state algorithm 
--> converge without introducing loops, the 
--> techniques for loop avoidance being discussed in 
--> the routing area may be of relevance.
--> In particular, ordered fib convergence seems quite suitable.
--> Yours,
--> Joel M. Halpern
--> 
--> At 10:31 AM 11/3/2006, Silvano Gai wrote:
--> 
--> >The examples from Gideon and Guillermo deal with 
--> >the interaction between STP/RSTP and TRILL and point one 
--> weakness of TRILL.
--> >
--> >There will be another cause for Broadcast storm 
--> >that does not involve STP/RSTP interaction, i.e. 
--> >a simple topology change in the TRILL network.
--> >
--> >Djikstar will run in an asynchronous way on the 
--> >different RBridges and the trees used to 
--> >distribute broadcast/multicast/unknown will 
--> >potentially have loops during the transition.
--> >
--> >TTL will be of limited help since the traffic 
--> >will replicate. For example, if the loop is 
--> >between two RBridges with 256 ports each, 
--> >assuming a TTL of 64, each broadcast present on 
--> >the link at the time the loop will cause a storm 
--> >of 16,000 frames. If the loops involve more 
--> >switches and links millions of copy will be 
--> >create. For Enterprise/Datacenter RBridges the 
--> >forwarding delay is less than 5 microseconds, 
--> >therefore the storm will reach its peak in 300 
--> >microseconds, well before any software intervention can 
--> break the loop.
--> >
--> >-- Silvano
--> >
--> > > -----Original Message-----
--> > > From: [email-masked] 
--> [mailto:[email-masked]] On
--> > > Behalf Of Guillermo Ib??ez
--> > > Sent: Friday, November 03, 2006 12:36 AM
--> > > To: Developing a hybrid router/bridge.
--> > > Subject: Re: [rbridge] Traffic storms
--> > >
--> > > This comment is just to signal that the behaviour must 
--> be analyzed also
--> > > assuming that B1 and B2 execute the (current standard) 
--> RSTP protocol.
--> > > There is no forwarding delay in RSTP when the links are 
--> dedicated (point
--> > > to point).
--> > > If B1 and B2 execute RSTP protocol and B1 has best 
--> priority, before
--> > > link B1-B2 being enabled, B2 will block its designated 
--> ports  and stop
--> > > forwarding  to RB2.  The process will repeat later  for 
--> next stage
--> > > downstream links like B2-RB2 and so on, one level at a time.
--> > > The trend is to uses RSTP instead of STP. Root bridge 
--> election is likely
--> > > much faster  than DR election. Setting timers at 
--> RBridges to stop
--> > > forwarding may be a solution but it slows reconfiguration speed.
--> > > Guillermo
--> > >
--> > > Radia Perlman escribi?:
--> > > > The simplest way to put it, I think, is that in 
--> certain transitory
--> > > > situations there might be two
--> > > > RBridges that both think they are Designated RBridge, 
--> and that is bad,
--> > > > but should stop
--> > > > as soon as a single Hello is received by the RBridge 
--> who should not be
--> > > > Designated.
--> > > > I think PIM has similar transitory situations that 
--> can occur, and
--> > > >
--> > > > bridges can also have (hopefully
--> > > > temporary) problems if a repeater came up and merged 
--> two LANs. I think
--> > > > such things are
--> > > > annoying but not fatal. But I think it's possible we 
--> can with little
--> > > > effort avoid this problem.
--> > > >
--> > > > However, with RBridges, because the bridge spanning 
--> tree algorithm
--> > > > elects a Root, there's
--> > > > really a way of uniquely identifying a LAN (where 
--> "LAN" is a bunch of
--> > > > links connected with
--> > > > bridges). The unique identifier is the root bridge.
--> > > >
--> > >
--> > > > When the B1-B2 link is down, RB1 and RB2 will see the 
--> topology as two
--> > > > separate links, and each
--> > > > one will have a distinct spanning tree Root bridge 
--> (RB1 will see B1, and
--> > > > RB2 will see B2 as the root).
--> > > >
--> > > > When the B1-B2 link comes up, the bridges will first 
--> merge the two
--> > > > links,
--> > > > and either RB1 or RB2 will
--> > > > see that the bridge spanning tree root has changed. 
--> This will be
--> > > > discovered before B1 and B2 forward
--> > > > traffic across the link because of the bridge 
--> forwarding delay.If B1 has
--> > > better priority as bridge spanning tree root than B2, 
--> then RB1 will not
--> > > notice anything
--> > > > different when the B1-B2 link comes up. But RB2 will notice
--> > > > something different; the spanning tree root has 
--> changed identities from
--> > > > "B2" to "B1".
--> > > > Given this, RB2 could temporarily stop forwarding to 
--> or from the link
--> > > > when the Root bridge
--> > > > changes identities, though it should definitely 
--> immediately send IS-IS
--> > > > Hellos (either RB1 or RB2 will
--> > > > be elected Designated Router in the IS-IS election 
--> for that link). If
--> > > > RB2 has better prioirty for
--> > > > root, the RB1 will immediately stop forwarding to or 
--> from the link when
--> > > > it sees the Hello from RB2.
--> > > > If RB2 has better priority in the IS-IS election, 
--> then RB1 should
--> > > > immediately send an IS-IS Hello
--> > > > when it sees a Hello from a new RBridge on the link.
--> > > >
--> > > > So I think this is not a big deal, and that if we are 
--> worried, we can
--> > > > specify that an RBridge should
--> > > > stop acting like the Designated RBridge for a few 
--> seconds after the
--> > > > identity of the Root in the spanning
--> > > > tree algorithm changes.
--> > > >
--> > > > Or we could be even fancier and have each RBridge 
--> announce in its IS-IS
--> > > > Hellos which LAN IDs it
--> > > > is Designated for, where a LAN ID is the MAC address 
--> of the Root bridge.
--> > > > So RB1 continue
--> > > > forwarding if the identity changes from B1 to B2 
--> provided no other
--> > > > RBridge has claimed to be connected
--> > > > to B2. But if RB2's LSP claims it is attached to B2, 
--> then RB1 must stop
--> > > > forwarding for enough time
--> > > > for the IS-IS election to sort itself out and choose 
--> a Designated
--> > > RBridge.
--> > > >
--> > > > Radia
--> > > >
--> > > >
--> > > >
--> > > >
--> > > >
--> > > >
--> > > > Gideon Kaempfer wrote:
--> > > >
--> > > >
--> > > >> Following mention by Silvano of broadcast and 
--> multicast storms (and the
--> > > need
--> > > >> to protect against them), I played around with 
--> different scenarios and
--> > > came
--> > > >> upon one I would appreciate your comments on (in the 
--> hope I am pointing
--> > > out
--> > > >> a non-existent issue with TRILL). I believe a 
--> broadcast and even a
--> > > unicast
--> > > >> storm could be created as the result of a loop that 
--> isn't protected by
--> > > TTL
--> > > >> nor by STP in the case of a link connecting two 
--> separate LAN segments
--> > > coming
--> > > >> to life.
--> > > >>
--> > > >> - RB1 ---- RB2 -
--> > > >>   |        |
--> > > >> -  B1 --x-- B2 -
--> > > >>   |        |
--> > > >>   H1       H2
--> > > >>
--> > > >> 1. The network (segment) involved consists of two 
--> Rbridges (RB1, RB2),
--> > > two
--> > > >> bridges (B1, B2) and two hosts (H1, H2). They are 
--> physically connected
--> > > as
--> > > >> depicted.
--> > > >> 2. State A: the direct link between B1 and B2 is 
--> down. B1 and B2 find
--> > > >> themselves on different LAN segments and hence 
--> different spanning
--> > > trees. RB1
--> > > >> and RB2 are both designated Rbridges (each for the 
--> segment of the
--> > > >> corresponding bridge).
--> > > >> 3. State B: the direct link between B1 and B2 goes 
--> up (someone connects
--> > > a
--> > > >> cable). B1 and B2 discover each other and establish 
--> a common spanning
--> > > tree.
--> > > >> RB1 and RB2 both find themselves attached to the 
--> same LAN segment and
--> > > hence
--> > > >> RB1 (without loss of generality) will eventually 
--> become the designated
--> > > >> Rbridge for it.
--> > > >> 4. Just before RB1 and RB2 identify that they are 
--> both on the same
--> > > segment
--> > > >> and RB2 stops functioning as a designated Rbridge 
--> the following
--> > > scenario
--> > > >> seems possible:
--> > > >>  a. H1 sends a broadcast frame.
--> > > >>  b. B1 receives it and forwards to RB1 and B2.
--> > > >>  c. RB1 (encapsulates and) forwards to RB2.
--> > > >>  d. B2 forwards to RB2 and H2.
--> > > >>  e. RB2 forwards the copy from RB1 to B2 (and the 
--> copy from B2 to RB1).
--> > > >>  f. (RB1 forwards to B1.)
--> > > >>  g. B2 forwards (again) to H2 and to B1.
--> > > >>  h. B1 forwards to H1 (see remark below regarding 
--> filtering table
--> > > >> contamination) and to RB1.
--> > > >>  i. Etcetera etcetera.
--> > > >> 5. A broadcast storm is born, created by a loop that 
--> is not protected
--> > > by TTL
--> > > >> (due to the fact that forwarding between the 
--> Rbridges is only across a
--> > > >> single hop) nor by STP (due to the fact that Rbridges do not
--> > > participate in
--> > > >> STP).
--> > > >> 6. If forwarding commences at the hardware level and 
--> no broadcast rate
--> > > >> limiting is in place, the storm may cause severe 
--> damage in a very short
--> > > time
--> > > >> (note that replicated frames are sent to H1 and H2 
--> (or any network they
--> > > >> could represent).
--> > > >> 7. Another unfortunate effect of this storm is that 
--> B1 and B2 no longer
--> > > know
--> > > >> where H1 is located (due to the contamination of 
--> their filtering tables
--> > > by a
--> > > >> frame from H1 that arrives from the wrong direction 
--> (and in fact from
--> > > >> multiple directions). As a result, a possible 
--> unicast frame from H2 to
--> > > H1
--> > > >> will just join the storm over the loop at least in 
--> one direction (RB2
--> > > will
--> > > >> forward it to RB1) but will not arrive at H1...
--> > > >>
--> > > >> One possible solution could be for RB2 to identify 
--> the fact that it is
--> > > >> receiving a frame from a host with a MAC address 
--> that is associated
--> > > with a
--> > > >> segment it thought it isn't connected to. Hence, it 
--> may trigger an
--> > > immediate
--> > > >> neighbor discovery / designated Rbridge election. 
--> However, because
--> > > Rbridges
--> > > >> should allow host mobility, this frame may need to 
--> be forwarded (and
--> > > hence
--> > > >> the storm commences).
--> > > >>
--> > > >> As mentioned above, any comments are welcome.
--> > > >>  Gideon Kaempfer
--> > > >>
--> > > >> _______________________________________________
--> > > >> rbridge mailing list
--> > > >> [email-masked]
--> > > >> http://mailman.postel.org/mailman/listinfo/rbridge
--> > > >>
--> > > >>
--> > > >>
--> > > >
--> > > > _______________________________________________
--> > > > rbridge mailing list
--> > > > [email-masked]
--> > > > http://mailman.postel.org/mailman/listinfo/rbridge
--> > > >
--> > > _______________________________________________
--> > > rbridge mailing list
--> > > [email-masked]
--> > > http://mailman.postel.org/mailman/listinfo/rbridge
--> >
--> >_______________________________________________
--> >rbridge mailing list
--> >[email-masked]
--> >http://mailman.postel.org/mailman/listinfo/rbridge
--> 
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Fri, 3 Nov 2006 15:05:17 -0500 
Cc: "Developing a hybrid router/bridge." <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 11427

Silvano,

	The simplest way to deal with these storms is to pay attention
to topology change indications and - when they are found - purge all
affected IRT entries.  This effectively creates necessary forwarding
delays to avoid the "storm" phenomenom we appear to be concerned about. 

	It is important to realize that there are clever ways in which
it is possible to reduce the set of "affected IRT entries" - thus it
is possible to reduce the trauma that might be introduced by the need
to re-aquire IRT entries.

	This approach deals with all of the potential scenarios we've
discussed (or heard about) so far.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> Sent: Friday, November 03, 2006 10:32 AM
--> To: Guillermo Ib??ez; Developing a hybrid router/bridge.
--> Subject: Re: [rbridge] Traffic storms
--> 
--> 
--> The examples from Gideon and Guillermo deal with the 
--> interaction between STP/RSTP and TRILL and point one 
--> weakness of TRILL.
--> 
--> There will be another cause for Broadcast storm that does 
--> not involve STP/RSTP interaction, i.e. a simple topology 
--> change in the TRILL network.
--> 
--> Djikstar will run in an asynchronous way on the different 
--> RBridges and the trees used to distribute 
--> broadcast/multicast/unknown will potentially have loops 
--> during the transition.
--> 
--> TTL will be of limited help since the traffic will 
--> replicate. For example, if the loop is between two RBridges 
--> with 256 ports each, assuming a TTL of 64, each broadcast 
--> present on the link at the time the loop will cause a storm 
--> of 16,000 frames. If the loops involve more switches and 
--> links millions of copy will be create. For 
--> Enterprise/Datacenter RBridges the forwarding delay is less 
--> than 5 microseconds, therefore the storm will reach its 
--> peak in 300 microseconds, well before any software 
--> intervention can break the loop.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]] On
--> > Behalf Of Guillermo Ib??ez
--> > Sent: Friday, November 03, 2006 12:36 AM
--> > To: Developing a hybrid router/bridge.
--> > Subject: Re: [rbridge] Traffic storms
--> > 
--> > This comment is just to signal that the behaviour must be 
--> analyzed also
--> > assuming that B1 and B2 execute the (current standard) 
--> RSTP protocol.
--> > There is no forwarding delay in RSTP when the links are 
--> dedicated (point
--> > to point).
--> > If B1 and B2 execute RSTP protocol and B1 has best 
--> priority, before
--> > link B1-B2 being enabled, B2 will block its designated 
--> ports  and stop
--> > forwarding  to RB2.  The process will repeat later  for next stage
--> > downstream links like B2-RB2 and so on, one level at a time.
--> > The trend is to uses RSTP instead of STP. Root bridge 
--> election is likely
--> > much faster  than DR election. Setting timers at RBridges to stop
--> > forwarding may be a solution but it slows reconfiguration speed.
--> > Guillermo
--> > 
--> > Radia Perlman escribi?:
--> > > The simplest way to put it, I think, is that in certain 
--> transitory
--> > > situations there might be two
--> > > RBridges that both think they are Designated RBridge, 
--> and that is bad,
--> > > but should stop
--> > > as soon as a single Hello is received by the RBridge 
--> who should not be
--> > > Designated.
--> > > I think PIM has similar transitory situations that can 
--> occur, and
--> > >
--> > > bridges can also have (hopefully
--> > > temporary) problems if a repeater came up and merged 
--> two LANs. I think
--> > > such things are
--> > > annoying but not fatal. But I think it's possible we 
--> can with little
--> > > effort avoid this problem.
--> > >
--> > > However, with RBridges, because the bridge spanning 
--> tree algorithm
--> > > elects a Root, there's
--> > > really a way of uniquely identifying a LAN (where "LAN" 
--> is a bunch of
--> > > links connected with
--> > > bridges). The unique identifier is the root bridge.
--> > >
--> > 
--> > > When the B1-B2 link is down, RB1 and RB2 will see the 
--> topology as two
--> > > separate links, and each
--> > > one will have a distinct spanning tree Root bridge (RB1 
--> will see B1, and
--> > > RB2 will see B2 as the root).
--> > >
--> > > When the B1-B2 link comes up, the bridges will first 
--> merge the two
--> > > links,
--> > > and either RB1 or RB2 will
--> > > see that the bridge spanning tree root has changed. This will be
--> > > discovered before B1 and B2 forward
--> > > traffic across the link because of the bridge 
--> forwarding delay.If B1 has
--> > better priority as bridge spanning tree root than B2, 
--> then RB1 will not
--> > notice anything
--> > > different when the B1-B2 link comes up. But RB2 will notice
--> > > something different; the spanning tree root has changed 
--> identities from
--> > > "B2" to "B1".
--> > > Given this, RB2 could temporarily stop forwarding to or 
--> from the link
--> > > when the Root bridge
--> > > changes identities, though it should definitely 
--> immediately send IS-IS
--> > > Hellos (either RB1 or RB2 will
--> > > be elected Designated Router in the IS-IS election for 
--> that link). If
--> > > RB2 has better prioirty for
--> > > root, the RB1 will immediately stop forwarding to or 
--> from the link when
--> > > it sees the Hello from RB2.
--> > > If RB2 has better priority in the IS-IS election, then 
--> RB1 should
--> > > immediately send an IS-IS Hello
--> > > when it sees a Hello from a new RBridge on the link.
--> > >
--> > > So I think this is not a big deal, and that if we are 
--> worried, we can
--> > > specify that an RBridge should
--> > > stop acting like the Designated RBridge for a few 
--> seconds after the
--> > > identity of the Root in the spanning
--> > > tree algorithm changes.
--> > >
--> > > Or we could be even fancier and have each RBridge 
--> announce in its IS-IS
--> > > Hellos which LAN IDs it
--> > > is Designated for, where a LAN ID is the MAC address of 
--> the Root bridge.
--> > > So RB1 continue
--> > > forwarding if the identity changes from B1 to B2 
--> provided no other
--> > > RBridge has claimed to be connected
--> > > to B2. But if RB2's LSP claims it is attached to B2, 
--> then RB1 must stop
--> > > forwarding for enough time
--> > > for the IS-IS election to sort itself out and choose a 
--> Designated
--> > RBridge.
--> > >
--> > > Radia
--> > >
--> > >
--> > >
--> > >
--> > >
--> > >
--> > > Gideon Kaempfer wrote:
--> > >
--> > >
--> > >> Following mention by Silvano of broadcast and 
--> multicast storms (and the
--> > need
--> > >> to protect against them), I played around with 
--> different scenarios and
--> > came
--> > >> upon one I would appreciate your comments on (in the 
--> hope I am pointing
--> > out
--> > >> a non-existent issue with TRILL). I believe a 
--> broadcast and even a
--> > unicast
--> > >> storm could be created as the result of a loop that 
--> isn't protected by
--> > TTL
--> > >> nor by STP in the case of a link connecting two 
--> separate LAN segments
--> > coming
--> > >> to life.
--> > >>
--> > >> - RB1 ---- RB2 -
--> > >>   |        |
--> > >> -  B1 --x-- B2 -
--> > >>   |        |
--> > >>   H1       H2
--> > >>
--> > >> 1. The network (segment) involved consists of two 
--> Rbridges (RB1, RB2),
--> > two
--> > >> bridges (B1, B2) and two hosts (H1, H2). They are 
--> physically connected
--> > as
--> > >> depicted.
--> > >> 2. State A: the direct link between B1 and B2 is down. 
--> B1 and B2 find
--> > >> themselves on different LAN segments and hence 
--> different spanning
--> > trees. RB1
--> > >> and RB2 are both designated Rbridges (each for the 
--> segment of the
--> > >> corresponding bridge).
--> > >> 3. State B: the direct link between B1 and B2 goes up 
--> (someone connects
--> > a
--> > >> cable). B1 and B2 discover each other and establish a 
--> common spanning
--> > tree.
--> > >> RB1 and RB2 both find themselves attached to the same 
--> LAN segment and
--> > hence
--> > >> RB1 (without loss of generality) will eventually 
--> become the designated
--> > >> Rbridge for it.
--> > >> 4. Just before RB1 and RB2 identify that they are both 
--> on the same
--> > segment
--> > >> and RB2 stops functioning as a designated Rbridge the following
--> > scenario
--> > >> seems possible:
--> > >>  a. H1 sends a broadcast frame.
--> > >>  b. B1 receives it and forwards to RB1 and B2.
--> > >>  c. RB1 (encapsulates and) forwards to RB2.
--> > >>  d. B2 forwards to RB2 and H2.
--> > >>  e. RB2 forwards the copy from RB1 to B2 (and the copy 
--> from B2 to RB1).
--> > >>  f. (RB1 forwards to B1.)
--> > >>  g. B2 forwards (again) to H2 and to B1.
--> > >>  h. B1 forwards to H1 (see remark below regarding 
--> filtering table
--> > >> contamination) and to RB1.
--> > >>  i. Etcetera etcetera.
--> > >> 5. A broadcast storm is born, created by a loop that 
--> is not protected
--> > by TTL
--> > >> (due to the fact that forwarding between the Rbridges 
--> is only across a
--> > >> single hop) nor by STP (due to the fact that Rbridges do not
--> > participate in
--> > >> STP).
--> > >> 6. If forwarding commences at the hardware level and 
--> no broadcast rate
--> > >> limiting is in place, the storm may cause severe 
--> damage in a very short
--> > time
--> > >> (note that replicated frames are sent to H1 and H2 (or 
--> any network they
--> > >> could represent).
--> > >> 7. Another unfortunate effect of this storm is that B1 
--> and B2 no longer
--> > know
--> > >> where H1 is located (due to the contamination of their 
--> filtering tables
--> > by a
--> > >> frame from H1 that arrives from the wrong direction 
--> (and in fact from
--> > >> multiple directions). As a result, a possible unicast 
--> frame from H2 to
--> > H1
--> > >> will just join the storm over the loop at least in one 
--> direction (RB2
--> > will
--> > >> forward it to RB1) but will not arrive at H1...
--> > >>
--> > >> One possible solution could be for RB2 to identify the 
--> fact that it is
--> > >> receiving a frame from a host with a MAC address that 
--> is associated
--> > with a
--> > >> segment it thought it isn't connected to. Hence, it 
--> may trigger an
--> > immediate
--> > >> neighbor discovery / designated Rbridge election. 
--> However, because
--> > Rbridges
--> > >> should allow host mobility, this frame may need to be 
--> forwarded (and
--> > hence
--> > >> the storm commences).
--> > >>
--> > >> As mentioned above, any comments are welcome.
--> > >>  Gideon Kaempfer
--> > >>
--> > >> _______________________________________________
--> > >> rbridge mailing list
--> > >> [email-masked]
--> > >> http://mailman.postel.org/mailman/listinfo/rbridge
--> > >>
--> > >>
--> > >>
--> > >
--> > > _______________________________________________
--> > > rbridge mailing list
--> > > [email-masked]
--> > > http://mailman.postel.org/mailman/listinfo/rbridge
--> > >
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
Date: Fri, 3 Nov 2006 14:57:58 -0500 
Cc: "Developing a hybrid router/bridge." <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 9188

Guillermo,

	There may be no forwarding delay under certain cicumstances
using RSTP, but there are other ways in which this storm concern
may be eliminated.

	Under any form of STP that I am aware of, bridges either stop,
or carefully restrict forwarding while they resolve the new spanning
tree.  Because they can do this, so can we.

	(This is a "high-level" analysis, but I think you will agree
that it is correct.)

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Guillermo Ib??ez
--> Sent: Friday, November 03, 2006 3:36 AM
--> To: Developing a hybrid router/bridge.
--> Subject: Re: [rbridge] Traffic storms
--> 
--> This comment is just to signal that the behaviour must be 
--> analyzed also 
--> assuming that B1 and B2 execute the (current standard) RSTP 
--> protocol.  
--> There is no forwarding delay in RSTP when the links are 
--> dedicated (point 
--> to point).
--> If B1 and B2 execute RSTP protocol and B1 has best 
--> priority, before  
--> link B1-B2 being enabled, B2 will block its designated 
--> ports  and stop 
--> forwarding  to RB2.  The process will repeat later  for next stage 
--> downstream links like B2-RB2 and so on, one level at a time.
--> The trend is to uses RSTP instead of STP. Root bridge 
--> election is likely 
--> much faster  than DR election. Setting timers at RBridges to stop 
--> forwarding may be a solution but it slows reconfiguration speed.
--> Guillermo
--> 
--> Radia Perlman escribi?:
--> > The simplest way to put it, I think, is that in certain 
--> transitory 
--> > situations there might be two
--> > RBridges that both think they are Designated RBridge, and 
--> that is bad, 
--> > but should stop
--> > as soon as a single Hello is received by the RBridge who 
--> should not be 
--> > Designated.
--> > I think PIM has similar transitory situations that can occur, and 
--> >   
--> > bridges can also have (hopefully
--> > temporary) problems if a repeater came up and merged two 
--> LANs. I think 
--> > such things are
--> > annoying but not fatal. But I think it's possible we can 
--> with little 
--> > effort avoid this problem.
--> >
--> > However, with RBridges, because the bridge spanning tree 
--> algorithm 
--> > elects a Root, there's
--> > really a way of uniquely identifying a LAN (where "LAN" 
--> is a bunch of 
--> > links connected with
--> > bridges). The unique identifier is the root bridge.
--> >   
--> 
--> > When the B1-B2 link is down, RB1 and RB2 will see the 
--> topology as two 
--> > separate links, and each
--> > one will have a distinct spanning tree Root bridge (RB1 
--> will see B1, and 
--> > RB2 will see B2 as the root).
--> >
--> > When the B1-B2 link comes up, the bridges will first 
--> merge the two 
--> > links, 
--> > and either RB1 or RB2 will
--> > see that the bridge spanning tree root has changed. This will be 
--> > discovered before B1 and B2 forward
--> > traffic across the link because of the bridge forwarding 
--> delay.If B1 has better priority as bridge spanning tree 
--> root than B2, then RB1 will not notice anything
--> > different when the B1-B2 link comes up. But RB2 will notice
--> > something different; the spanning tree root has changed 
--> identities from 
--> > "B2" to "B1".
--> > Given this, RB2 could temporarily stop forwarding to or 
--> from the link 
--> > when the Root bridge
--> > changes identities, though it should definitely 
--> immediately send IS-IS 
--> > Hellos (either RB1 or RB2 will
--> > be elected Designated Router in the IS-IS election for 
--> that link). If 
--> > RB2 has better prioirty for
--> > root, the RB1 will immediately stop forwarding to or from 
--> the link when 
--> > it sees the Hello from RB2.
--> > If RB2 has better priority in the IS-IS election, then RB1 should 
--> > immediately send an IS-IS Hello
--> > when it sees a Hello from a new RBridge on the link.
--> >
--> > So I think this is not a big deal, and that if we are 
--> worried, we can 
--> > specify that an RBridge should
--> > stop acting like the Designated RBridge for a few seconds 
--> after the 
--> > identity of the Root in the spanning
--> > tree algorithm changes.
--> >
--> > Or we could be even fancier and have each RBridge 
--> announce in its IS-IS 
--> > Hellos which LAN IDs it
--> > is Designated for, where a LAN ID is the MAC address of 
--> the Root bridge. 
--> > So RB1 continue
--> > forwarding if the identity changes from B1 to B2 provided 
--> no other 
--> > RBridge has claimed to be connected
--> > to B2. But if RB2's LSP claims it is attached to B2, then 
--> RB1 must stop 
--> > forwarding for enough time
--> > for the IS-IS election to sort itself out and choose a 
--> Designated RBridge.
--> >
--> > Radia
--> >
--> >
--> >
--> >
--> >
--> >
--> > Gideon Kaempfer wrote:
--> >
--> >   
--> >> Following mention by Silvano of broadcast and multicast 
--> storms (and the need
--> >> to protect against them), I played around with different 
--> scenarios and came
--> >> upon one I would appreciate your comments on (in the 
--> hope I am pointing out
--> >> a non-existent issue with TRILL). I believe a broadcast 
--> and even a unicast
--> >> storm could be created as the result of a loop that 
--> isn't protected by TTL
--> >> nor by STP in the case of a link connecting two separate 
--> LAN segments coming
--> >> to life.
--> >>
--> >> - RB1 ---- RB2 -
--> >>   |        |
--> >> -  B1 --x-- B2 -
--> >>   |        |
--> >>   H1       H2
--> >>
--> >> 1. The network (segment) involved consists of two 
--> Rbridges (RB1, RB2), two
--> >> bridges (B1, B2) and two hosts (H1, H2). They are 
--> physically connected as
--> >> depicted.
--> >> 2. State A: the direct link between B1 and B2 is down. 
--> B1 and B2 find
--> >> themselves on different LAN segments and hence different 
--> spanning trees. RB1
--> >> and RB2 are both designated Rbridges (each for the segment of the
--> >> corresponding bridge).
--> >> 3. State B: the direct link between B1 and B2 goes up 
--> (someone connects a
--> >> cable). B1 and B2 discover each other and establish a 
--> common spanning tree.
--> >> RB1 and RB2 both find themselves attached to the same 
--> LAN segment and hence
--> >> RB1 (without loss of generality) will eventually become 
--> the designated
--> >> Rbridge for it.
--> >> 4. Just before RB1 and RB2 identify that they are both 
--> on the same segment
--> >> and RB2 stops functioning as a designated Rbridge the 
--> following scenario
--> >> seems possible:
--> >>  a. H1 sends a broadcast frame.
--> >>  b. B1 receives it and forwards to RB1 and B2.
--> >>  c. RB1 (encapsulates and) forwards to RB2.
--> >>  d. B2 forwards to RB2 and H2.
--> >>  e. RB2 forwards the copy from RB1 to B2 (and the copy 
--> from B2 to RB1).
--> >>  f. (RB1 forwards to B1.)
--> >>  g. B2 forwards (again) to H2 and to B1.
--> >>  h. B1 forwards to H1 (see remark below regarding filtering table
--> >> contamination) and to RB1.
--> >>  i. Etcetera etcetera.
--> >> 5. A broadcast storm is born, created by a loop that is 
--> not protected by TTL
--> >> (due to the fact that forwarding between the Rbridges is 
--> only across a
--> >> single hop) nor by STP (due to the fact that Rbridges do 
--> not participate in
--> >> STP).
--> >> 6. If forwarding commences at the hardware level and no 
--> broadcast rate
--> >> limiting is in place, the storm may cause severe damage 
--> in a very short time
--> >> (note that replicated frames are sent to H1 and H2 (or 
--> any network they
--> >> could represent).
--> >> 7. Another unfortunate effect of this storm is that B1 
--> and B2 no longer know
--> >> where H1 is located (due to the contamination of their 
--> filtering tables by a
--> >> frame from H1 that arrives from the wrong direction (and 
--> in fact from
--> >> multiple directions). As a result, a possible unicast 
--> frame from H2 to H1
--> >> will just join the storm over the loop at least in one 
--> direction (RB2 will
--> >> forward it to RB1) but will not arrive at H1...
--> >>
--> >> One possible solution could be for RB2 to identify the 
--> fact that it is
--> >> receiving a frame from a host with a MAC address that is 
--> associated with a
--> >> segment it thought it isn't connected to. Hence, it may 
--> trigger an immediate
--> >> neighbor discovery / designated Rbridge election. 
--> However, because Rbridges
--> >> should allow host mobility, this frame may need to be 
--> forwarded (and hence
--> >> the storm commences).
--> >>
--> >> As mentioned above, any comments are welcome.
--> >>  Gideon Kaempfer
--> >>
--> >> _______________________________________________
--> >> rbridge mailing list
--> >> [email-masked]
--> >> http://mailman.postel.org/mailman/listinfo/rbridge
--> >>  
--> >>
--> >>     
--> >
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> >   
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Gideon Kaempfer <[email-masked]>, Radia Perlman <[email-masked]>
Date: Fri, 3 Nov 2006 14:54:06 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 19900

This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C6FF81.D21DAD75
Content-Type: text/plain

Gideon,
 
    "Drop BPDUs" is not (exactly) the same as ignore them.  We use the term 
as short-hand for the one of three options we considered for handling BPDUs:

    Drop (do not participate actively in STP, and do not pass BPDUs
through), 
    Transparent (pass BPDUs through - potentially altering them in some
way),
    Participate (have each RBridge participate in STP as if it were a
bridge).
 
Hence, when we say "Drop BPDUs" we are not saying that we cannot look 
at them, we are just saying that we're not doing one of the other two
choices.
 
--
Eric

  _____  

From: [email-masked] [mailto:[email-masked]] On
Behalf Of Gideon Kaempfer
Sent: Friday, November 03, 2006 1:40 AM
To: Radia Perlman
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms

Radia,
Wouldn't this create a link between TRILL and STP we are trying to avoid?
Relying on the fact that a LAN segment has some kind of unique identifier
(such as the root bridge ID) seems like a very practical solution to me, but
strongly reliant on the fact that the Rbridges actually process BPDUs. I
thought they were just meant to discard them. Is this acceptable? 
Regrads,
 Gidi

On 11/3/06, Radia Perlman <[email-masked]
<mailto:[email-masked]> > wrote: 

The simplest way to put it, I think, is that in certain transitory
situations there might be two
RBridges that both think they are Designated RBridge, and that is bad, 
but should stop
as soon as a single Hello is received by the RBridge who should not be
Designated.

I think PIM has similar transitory situations that can occur, and
bridges can also have (hopefully
temporary) problems if a repeater came up and merged two LANs. I think
such things are
annoying but not fatal. But I think it's possible we can with little
effort avoid this problem.

However, with RBridges, because the bridge spanning tree algorithm 
elects a Root, there's
really a way of uniquely identifying a LAN (where "LAN" is a bunch of
links connected with
bridges). The unique identifier is the root bridge.

When the B1-B2 link is down, RB1 and RB2 will see the topology as two 
separate links, and each
one will have a distinct spanning tree Root bridge (RB1 will see B1, and
RB2 will see B2 as the root).

When the B1-B2 link comes up, the bridges will first merge the two
links, and either RB1 or RB2 will 
see that the bridge spanning tree root has changed. This will be
discovered before B1 and B2 forward
traffic across the link because of the bridge forwarding delay.
If B1 has better priority as bridge spanning tree root than B2, then RB1 
will not notice anything
different when the B1-B2 link comes up. But RB2 will notice
something different; the spanning tree root has changed identities from
"B2" to "B1".

Given this, RB2 could temporarily stop forwarding to or from the link 
when the Root bridge
changes identities, though it should definitely immediately send IS-IS
Hellos (either RB1 or RB2 will
be elected Designated Router in the IS-IS election for that link). If
RB2 has better prioirty for 
root, the RB1 will immediately stop forwarding to or from the link when
it sees the Hello from RB2.
If RB2 has better priority in the IS-IS election, then RB1 should
immediately send an IS-IS Hello
when it sees a Hello from a new RBridge on the link. 

So I think this is not a big deal, and that if we are worried, we can
specify that an RBridge should
stop acting like the Designated RBridge for a few seconds after the
identity of the Root in the spanning 
tree algorithm changes.

Or we could be even fancier and have each RBridge announce in its IS-IS
Hellos which LAN IDs it
is Designated for, where a LAN ID is the MAC address of the Root bridge.
So RB1 continue 
forwarding if the identity changes from B1 to B2 provided no other
RBridge has claimed to be connected
to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop
forwarding for enough time
for the IS-IS election to sort itself out and choose a Designated RBridge. 

Radia

Gideon Kaempfer wrote:

>Following mention by Silvano of broadcast and multicast storms (and the
need
>to protect against them), I played around with different scenarios and came

>upon one I would appreciate your comments on (in the hope I am pointing out
>a non-existent issue with TRILL). I believe a broadcast and even a unicast
>storm could be created as the result of a loop that isn't protected by TTL 
>nor by STP in the case of a link connecting two separate LAN segments
coming
>to life.
>
>- RB1 ---- RB2 -
>   |        |
>-  B1 --x-- B2 -
>   |        |
>   H1       H2
>
>1. The network (segment) involved consists of two Rbridges (RB1, RB2), two
>bridges (B1, B2) and two hosts (H1, H2). They are physically connected as
>depicted.
>2. State A: the direct link between B1 and B2 is down. B1 and B2 find 
>themselves on different LAN segments and hence different spanning trees.
RB1
>and RB2 are both designated Rbridges (each for the segment of the
>corresponding bridge).
>3. State B: the direct link between B1 and B2 goes up (someone connects a 
>cable). B1 and B2 discover each other and establish a common spanning tree.
>RB1 and RB2 both find themselves attached to the same LAN segment and hence
>RB1 (without loss of generality) will eventually become the designated 
>Rbridge for it.
>4. Just before RB1 and RB2 identify that they are both on the same segment
>and RB2 stops functioning as a designated Rbridge the following scenario
>seems possible:
>  a. H1 sends a broadcast frame. 
>  b. B1 receives it and forwards to RB1 and B2.
>  c. RB1 (encapsulates and) forwards to RB2.
>  d. B2 forwards to RB2 and H2.
>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1). 
>  f. (RB1 forwards to B1.)
>  g. B2 forwards (again) to H2 and to B1.
>  h. B1 forwards to H1 (see remark below regarding filtering table
>contamination) and to RB1.
>  i. Etcetera etcetera. 
>5. A broadcast storm is born, created by a loop that is not protected by
TTL
>(due to the fact that forwarding between the Rbridges is only across a
>single hop) nor by STP (due to the fact that Rbridges do not participate in

>STP).
>6. If forwarding commences at the hardware level and no broadcast rate
>limiting is in place, the storm may cause severe damage in a very short
time
>(note that replicated frames are sent to H1 and H2 (or any network they 
>could represent).
>7. Another unfortunate effect of this storm is that B1 and B2 no longer
know
>where H1 is located (due to the contamination of their filtering tables by
a
>frame from H1 that arrives from the wrong direction (and in fact from 
>multiple directions). As a result, a possible unicast frame from H2 to H1
>will just join the storm over the loop at least in one direction (RB2 will
>forward it to RB1) but will not arrive at H1...
>
>One possible solution could be for RB2 to identify the fact that it is
>receiving a frame from a host with a MAC address that is associated with a
>segment it thought it isn't connected to. Hence, it may trigger an
immediate 
>neighbor discovery / designated Rbridge election. However, because Rbridges
>should allow host mobility, this frame may need to be forwarded (and hence
>the storm commences).
>
>As mentioned above, any comments are welcome. 
>  Gideon Kaempfer
>
>_______________________________________________
>rbridge mailing list
>[email-masked] <mailto:[email-masked]> 
>  <http://mailman.postel.org/mailman/listinfo/rbridge>
http://mailman.postel.org/mailman/listinfo/rbridge

_______________________________________________
rbridge mailing list
[email-masked] <mailto:[email-masked]> 
http://mailman.postel.org/mailman/listinfo/rbridge
<http://mailman.postel.org/mailman/listinfo/rbridge> 

------_=_NextPart_001_01C6FF81.D21DAD75
Content-Type: text/html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">

<META content="MSHTML 6.00.2800.1561" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>Gideon,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006>&nbsp;&nbsp;&nbsp; <FONT 
face=Arial color=#0000ff size=2>"Drop BPDUs" is not (exactly) the same as ignore 
them.&nbsp; We use the term </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>as short-hand for the one of three options we considered 
for handling BPDUs: </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>&nbsp;&nbsp;&nbsp; Drop (do not participate actively in 
STP, and do not pass BPDUs through), </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006>&nbsp;&nbsp;&nbsp; <FONT 
face=Arial color=#0000ff size=2>Transparent (pass BPDUs through - potentially 
altering them in some way),</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006>&nbsp;&nbsp;&nbsp; <FONT 
face=Arial color=#0000ff size=2>Participate (have each RBridge participate in 
STP as if it were a bridge).</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>Hence, when we say "Drop BPDUs" we are not saying that we 
cannot look </FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>at them, we are just saying that we're not doing one of the 
other two choices.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>--</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=798025019-03112006><FONT face=Arial 
color=#0000ff size=2>Eric</FONT></SPAN></DIV><BR>
<BLOCKQUOTE 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> [email-masked] 
  [mailto:[email-masked]] <B>On Behalf Of </B>Gideon 
  Kaempfer<BR><B>Sent:</B> Friday, November 03, 2006 1:40 AM<BR><B>To:</B> Radia 
  Perlman<BR><B>Cc:</B> [email-masked]<BR><B>Subject:</B> Re: [rbridge] 
  Traffic storms<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV>Radia,</DIV>
  <DIV>Wouldn't this create a link between TRILL and STP we are trying to 
  avoid?</DIV>
  <DIV>Relying on the fact that a LAN segment has some kind of unique identifier 
  (such as the root bridge ID) seems like a very practical solution to me, but 
  strongly reliant on the fact that the Rbridges actually process BPDUs. I 
  thought they were just meant to discard them. Is this acceptable? </DIV>
  <DIV>Regrads,</DIV>
  <DIV>&nbsp;Gidi<BR><BR>&nbsp;</DIV>
  <DIV><SPAN class=gmail_quote>On 11/3/06, <B class=gmail_sendername>Radia 
  Perlman</B> &lt;<A 
  href="mailto:[email-masked]">[email-masked]</A>&gt; 
  wrote:</SPAN> 
  <BLOCKQUOTE class=gmail_quote 
  style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">The 
    simplest way to put it, I think, is that in certain transitory<BR>situations 
    there might be two<BR>RBridges that both think they are Designated RBridge, 
    and that is bad, <BR>but should stop<BR>as soon as a single Hello is 
    received by the RBridge who should not be<BR>Designated.<BR><BR>I think PIM 
    has similar transitory situations that can occur, and<BR>bridges can also 
    have (hopefully<BR>temporary) problems if a repeater came up and merged two 
    LANs. I think<BR>such things are<BR>annoying but not fatal. But I think it's 
    possible we can with little<BR>effort avoid this problem.<BR><BR>However, 
    with RBridges, because the bridge spanning tree algorithm <BR>elects a Root, 
    there's<BR>really a way of uniquely identifying a LAN (where "LAN" is a 
    bunch of<BR>links connected with<BR>bridges). The unique identifier is the 
    root bridge.<BR><BR>When the B1-B2 link is down, RB1 and RB2 will see the 
    topology as two <BR>separate links, and each<BR>one will have a distinct 
    spanning tree Root bridge (RB1 will see B1, and<BR>RB2 will see B2 as the 
    root).<BR><BR>When the B1-B2 link comes up, the bridges will first merge the 
    two<BR>links, and either RB1 or RB2 will <BR>see that the bridge spanning 
    tree root has changed. This will be<BR>discovered before B1 and B2 
    forward<BR>traffic across the link because of the bridge forwarding 
    delay.<BR>If B1 has better priority as bridge spanning tree root than B2, 
    then RB1 <BR>will not notice anything<BR>different when the B1-B2 link comes 
    up. But RB2 will notice<BR>something different; the spanning tree root has 
    changed identities from<BR>"B2" to "B1".<BR><BR>Given this, RB2 could 
    temporarily stop forwarding to or from the link <BR>when the Root 
    bridge<BR>changes identities, though it should definitely immediately send 
    IS-IS<BR>Hellos (either RB1 or RB2 will<BR>be elected Designated Router in 
    the IS-IS election for that link). If<BR>RB2 has better prioirty for 
    <BR>root, the RB1 will immediately stop forwarding to or from the link 
    when<BR>it sees the Hello from RB2.<BR>If RB2 has better priority in the 
    IS-IS election, then RB1 should<BR>immediately send an IS-IS Hello<BR>when 
    it sees a Hello from a new RBridge on the link. <BR><BR>So I think this is 
    not a big deal, and that if we are worried, we can<BR>specify that an 
    RBridge should<BR>stop acting like the Designated RBridge for a few seconds 
    after the<BR>identity of the Root in the spanning <BR>tree algorithm 
    changes.<BR><BR>Or we could be even fancier and have each RBridge announce 
    in its IS-IS<BR>Hellos which LAN IDs it<BR>is Designated for, where a LAN ID 
    is the MAC address of the Root bridge.<BR>So RB1 continue <BR>forwarding if 
    the identity changes from B1 to B2 provided no other<BR>RBridge has claimed 
    to be connected<BR>to B2. But if RB2's LSP claims it is attached to B2, then 
    RB1 must stop<BR>forwarding for enough time<BR>for the IS-IS election to 
    sort itself out and choose a Designated RBridge. 
    <BR><BR>Radia<BR><BR><BR><BR><BR><BR><BR>Gideon Kaempfer 
    wrote:<BR><BR>&gt;Following mention by Silvano of broadcast and multicast 
    storms (and the need<BR>&gt;to protect against them), I played around with 
    different scenarios and came <BR>&gt;upon one I would appreciate your 
    comments on (in the hope I am pointing out<BR>&gt;a non-existent issue with 
    TRILL). I believe a broadcast and even a unicast<BR>&gt;storm could be 
    created as the result of a loop that isn't protected by TTL <BR>&gt;nor by 
    STP in the case of a link connecting two separate LAN segments 
    coming<BR>&gt;to life.<BR>&gt;<BR>&gt;- RB1 ---- RB2 -<BR>&gt;&nbsp;&nbsp; 
    |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<BR>&gt;-&nbsp;&nbsp;B1 
    --x-- B2 -<BR>&gt;&nbsp;&nbsp; 
    |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<BR>&gt;&nbsp;&nbsp; 
    H1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; H2<BR>&gt;<BR>&gt;1. The network 
    (segment) involved consists of two Rbridges (RB1, RB2), two<BR>&gt;bridges 
    (B1, B2) and two hosts (H1, H2). They are physically connected 
    as<BR>&gt;depicted.<BR>&gt;2. State A: the direct link between B1 and B2 is 
    down. B1 and B2 find <BR>&gt;themselves on different LAN segments and hence 
    different spanning trees. RB1<BR>&gt;and RB2 are both designated Rbridges 
    (each for the segment of the<BR>&gt;corresponding bridge).<BR>&gt;3. State 
    B: the direct link between B1 and B2 goes up (someone connects a 
    <BR>&gt;cable). B1 and B2 discover each other and establish a common 
    spanning tree.<BR>&gt;RB1 and RB2 both find themselves attached to the same 
    LAN segment and hence<BR>&gt;RB1 (without loss of generality) will 
    eventually become the designated <BR>&gt;Rbridge for it.<BR>&gt;4. Just 
    before RB1 and RB2 identify that they are both on the same 
    segment<BR>&gt;and RB2 stops functioning as a designated Rbridge the 
    following scenario<BR>&gt;seems possible:<BR>&gt;&nbsp;&nbsp;a. H1 sends a 
    broadcast frame. <BR>&gt;&nbsp;&nbsp;b. B1 receives it and forwards to RB1 
    and B2.<BR>&gt;&nbsp;&nbsp;c. RB1 (encapsulates and) forwards to 
    RB2.<BR>&gt;&nbsp;&nbsp;d. B2 forwards to RB2 and H2.<BR>&gt;&nbsp;&nbsp;e. 
    RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1). 
    <BR>&gt;&nbsp;&nbsp;f. (RB1 forwards to B1.)<BR>&gt;&nbsp;&nbsp;g. B2 
    forwards (again) to H2 and to B1.<BR>&gt;&nbsp;&nbsp;h. B1 forwards to H1 
    (see remark below regarding filtering table<BR>&gt;contamination) and to 
    RB1.<BR>&gt;&nbsp;&nbsp;i. Etcetera etcetera. <BR>&gt;5. A broadcast storm 
    is born, created by a loop that is not protected by TTL<BR>&gt;(due to the 
    fact that forwarding between the Rbridges is only across a<BR>&gt;single 
    hop) nor by STP (due to the fact that Rbridges do not participate in 
    <BR>&gt;STP).<BR>&gt;6. If forwarding commences at the hardware level and no 
    broadcast rate<BR>&gt;limiting is in place, the storm may cause severe 
    damage in a very short time<BR>&gt;(note that replicated frames are sent to 
    H1 and H2 (or any network they <BR>&gt;could represent).<BR>&gt;7. Another 
    unfortunate effect of this storm is that B1 and B2 no longer 
    know<BR>&gt;where H1 is located (due to the contamination of their filtering 
    tables by a<BR>&gt;frame from H1 that arrives from the wrong direction (and 
    in fact from <BR>&gt;multiple directions). As a result, a possible unicast 
    frame from H2 to H1<BR>&gt;will just join the storm over the loop at least 
    in one direction (RB2 will<BR>&gt;forward it to RB1) but will not arrive at 
    H1...<BR>&gt;<BR>&gt;One possible solution could be for RB2 to identify the 
    fact that it is<BR>&gt;receiving a frame from a host with a MAC address that 
    is associated with a<BR>&gt;segment it thought it isn't connected to. Hence, 
    it may trigger an immediate <BR>&gt;neighbor discovery / designated Rbridge 
    election. However, because Rbridges<BR>&gt;should allow host mobility, this 
    frame may need to be forwarded (and hence<BR>&gt;the storm 
    commences).<BR>&gt;<BR>&gt;As mentioned above, any comments are welcome. 
    <BR>&gt;&nbsp;&nbsp;Gideon 
    Kaempfer<BR>&gt;<BR>&gt;_______________________________________________<BR>&gt;rbridge 
    mailing list<BR>&gt;<A 
    href="mailto:[email-masked]">[email-masked]</A><BR>&gt;<A 
    href="http://mailman.postel.org/mailman/listinfo/rbridge"> 
    http://mailman.postel.org/mailman/listinfo/rbridge</A><BR>&gt;<BR>&gt;<BR><BR>_______________________________________________<BR>rbridge 
    mailing list<BR><A 
    href="mailto:[email-masked]">[email-masked]</A><BR><A 
    href="http://mailman.postel.org/mailman/listinfo/rbridge">http://mailman.postel.org/mailman/listinfo/rbridge</A><BR></BLOCKQUOTE></DIV><BR></BLOCKQUOTE></BODY></HTML>

------_=_NextPart_001_01C6FF81.D21DAD75--

From: "Gray, Eric" <[email-masked]>
To: Radia Perlman <[email-masked]>, [email-masked]
Date: Fri, 3 Nov 2006 14:49:37 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 4111

Radia,

	A few amplifying comments below...

--
Eric 

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Radia Perlman
--> Sent: Friday, November 03, 2006 1:25 AM
--> To: [email-masked]
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Traffic storms
--> 
--> The simplest way to put it, I think, is that in certain transitory 
--> situations there might be two RBridges that both think they are 
--> Designated RBridge, and that is bad, but should stop as soon as a
--> single Hello is received by the RBridge who should not be Designated.

Yes, this is what would happen in the least clue-full implementation
possible.  This would be a pretty bad solution in the absence of the
potential for determining that a topology cahnge has occurred (or is
in progress) by other means.

For one thing, the RBridges in this approach would have to employ some
form of priorityzed forwarding in order to inclrease the likelihood
that Hello messages actually get through the storm.

--> 
--> I think PIM has similar transitory situations that can occur, and 
--> bridges can also have (hopefully temporary) problems if a repeater 
--> came up and merged two LANs. I think such things are annoying but 
--> not fatal. But I think it's possible we can with little effort 
--> avoid this problem.
--> 
--> However, with RBridges, because the bridge spanning tree algorithm 
--> elects a Root, there's really a way of uniquely identifying a LAN 
--> (where "LAN" is a bunch of links connected with bridges). The unique 
--> identifier is the root bridge.

I am sure that this is not required.

--> 
--> When the B1-B2 link is down, RB1 and RB2 will see the topology as two 
--> separate links, and each one will have a distinct spanning tree Root 
--> bridge (RB1 will see B1, and RB2 will see B2 as the root).
--> 
--> When the B1-B2 link comes up, the bridges will first merge the two 
--> links, and either RB1 or RB2 will see that the bridge spanning tree 
--> root has changed. This will be discovered before B1 and B2 forward
--> traffic across the link because of the bridge forwarding delay.

Agree.

--> If B1 has better priority as bridge spanning tree root than B2, then RB1

--> will not notice anything different when the B1-B2 link comes up. But RB2

--> will notice something different; the spanning tree root has changed 
--> identities from "B2" to "B1".

Yet another way to detect the change.

--> 
--> Given this, RB2 could temporarily stop forwarding to or from the link 
--> when the Root bridge changes identities, though it should definitely 
--> immediately send IS-IS Hellos (either RB1 or RB2 will be elected 
--> Designated Router in the IS-IS election for that link). If RB2 has 
--> better prioirty for root, the RB1 will immediately stop forwarding to 
--> or from the link when it sees the Hello from RB2.
-->
--> If RB2 has better priority in the IS-IS election, then RB1 should 
--> immediately send an IS-IS Hello when it sees a Hello from a new RBridge 
--> on the link.
--> 
--> So I think this is not a big deal, and that if we are worried, we can 
--> specify that an RBridge should stop acting like the Designated RBridge 
--> for a few seconds after the identity of the Root in the spanning
--> tree algorithm changes.

I believe this is essential only for non-unicast traffic.

--> 
--> Or we could be even fancier and have each RBridge announce in its IS-IS 
--> Hellos which LAN IDs it is Designated for, where a LAN ID is the MAC 
--> address of the Root bridge. So RB1 continue forwarding if the identity 
--> changes from B1 to B2 provided no other RBridge has claimed to be
connected
--> to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop 
--> forwarding for enough time for the IS-IS election to sort itself out and

--> choose a Designated RBridge.

In addition to being "too fancy" by more than enough, this is not really
necessary, given the plethora of ways to detect that a topology change 
either has already occurred, or may be in progress.

--> 
--> Radia
--> 
-- [snip] --

From: "Gray, Eric" <[email-masked]>
To: [email-masked]
Date: Fri, 3 Nov 2006 14:19:27 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 7575

Gideon,

	This is a good question.  Please see comments and responses 
below...

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Gideon Kaempfer
--> Sent: Thursday, November 02, 2006 6:08 PM
--> To: [email-masked]
--> Subject: [rbridge] Traffic storms
--> 
--> Following mention by Silvano of broadcast and multicast storms (and the
need
--> to protect against them), I played around with different scenarios and
came
--> upon one I would appreciate your comments on (in the hope I am pointing
out
--> a non-existent issue with TRILL). I believe a broadcast and even a
unicast
--> storm could be created as the result of a loop that isn't protected by
TTL
--> nor by STP in the case of a link connecting two separate LAN segments
coming
--> to life.
--> 
--> - RB1 ---- RB2 -
-->    |        |
--> -  B1 --x-- B2 -
-->    |        |
-->    H1       H2
--> 
--> 1. The network (segment) involved consists of two Rbridges (RB1, RB2),
two
--> bridges (B1, B2) and two hosts (H1, H2). They are physically connected
as
--> depicted.
--> 2. State A: the direct link between B1 and B2 is down. B1 and B2 find
--> themselves on different LAN segments and hence different spanning trees.
--> RB1 and RB2 are both designated Rbridges (each for the segment of the
--> corresponding bridge).
--> 3. State B: the direct link between B1 and B2 goes up (someone connects
a
--> cable). B1 and B2 discover each other and establish a common spanning
tree.
--> RB1 and RB2 both find themselves attached to the same LAN segment and
hence
--> RB1 (without loss of generality) will eventually become the designated
--> Rbridge for it.

This is exactly the reverse of the "chicken and egg" problem I mentioned
in dicussions of the "wiring closet" problem (note the similar topology)
with Guillermo (IBA?EZ), back in July.

In the "wiring closet" problem, the intention is to "break" the link between
B1 and B2 so that - in normal operation - both links [B1<->RB1 and B2<->RB2]
are used, while link [B1<->B2] is not.

In this case, you're positing that the link becomes active.  I have seen - 
and studied - this scenario in analysis.  I am reasonably sure others have 
as well.

--> 4. Just before RB1 and RB2 identify that they are both on the same
segment
--> and RB2 stops functioning as a designated Rbridge the following scenario
--> seems possible:
-->   a. H1 sends a broadcast frame.
-->   b. B1 receives it and forwards to RB1 and B2.
-->   c. RB1 (encapsulates and) forwards to RB2.
-->   d. B2 forwards to RB2 and H2.
-->   e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
-->   f. (RB1 forwards to B1.)
-->   g. B2 forwards (again) to H2 and to B1.
-->   h. B1 forwards to H1 (see remark below regarding filtering table
-->      contamination) and to RB1.
-->   i. Etcetera etcetera.

One thing that you're not considering is that both B1 and B2 will send out
"topology change" BPDUs when the link [B1<->B2) goes active.  I believe 
several of the WG members have pointed out that the idea that RBridges 
"drop BPDUs" does not mean they ignore them - in particular, in the case 
of a "topology change" BPDU.

Ignoring this for a minute, it is worth noting that - in this scenario - 
both RBridges are in position to "get a clue" about the problem.  The MAC 
SA on the broadcast frame (forwarded onto the segment including B2, for
example), is a MAC DA that it may know is present on that segment, by the
time it is deciding whether or not to forward it on that segment.  

Typically, bridges will perform a consistency check, when learning a new
MAC from a received frame.  There is no reason to suppose that RBridges
are unable to perform this same trick.  The consistency check is - when 
a new MAC SA is seen on a port, the "bridge" makes a new filtering DB
entry for that port (showing that MAC as reachable via that port); at the
same time, the bridge should check that a matching entry does not exist
on another port. 

In the scenario you pose, the same broadcast frame will arrive at both 
RBridges from different ports, resulting in an apparent need to "learn"
the same MAC SA on both ports (order is not important) - resulting in 
the finding of "matching entries" at each RBridge.

If a matching entry is found, a clue is born - even if the RBridge hasn't
already determined (by BPDU snooping) that a topology change is happening. 

This may happen because, at the same time B1 forwards the broadcast frame 
(from H1) to RB1, it forwards it to B2 as well (as you note above).  B2 is
also going to forward that frame to RB2, which will attempt to forward it 
to RB1.  Meanwhile, RB1 will try to forward the broadcast frame, it gets
from B1, toward RB2.  No matter what order this occurs in, one or both of
the RBridges are going to detect an anomaly.

Of course, this assumes that both RBridges did not snoop a topology change
BPDU from either B1 or B2 - which would have directly clued them in on the
potential problem.

As Silvano has already indicated (and - I believe - gotten full agreement),
broadcast, multicast and flooded traffic - at least - must stop during a
topology change (just as it would in 802.1D bridging).

--> 5. A broadcast storm is born, created by a loop that is not protected by
TTL
--> (due to the fact that forwarding between the Rbridges is only across a
--> single hop) nor by STP (due to the fact that Rbridges do not participate
in
--> STP).

Assuming reasonably "clueful" RBridge implementations, no storm will occur.

--> 6. If forwarding commences at the hardware level and no broadcast rate
--> limiting is in place, the storm may cause severe damage in a very short
time
--> (note that replicated frames are sent to H1 and H2 (or any network they
--> could represent).

See above.

--> 7. Another unfortunate effect of this storm is that B1 and B2 no longer
know
--> where H1 is located (due to the contamination of their filtering tables
by a
--> frame from H1 that arrives from the wrong direction (and in fact from
--> multiple directions). As a result, a possible unicast frame from H2 to
H1
--> will just join the storm over the loop at least in one direction (RB2
will
--> forward it to RB1) but will not arrive at H1...

If RB1 and RB2 behave reasonably, this problem will either never occur, or
will be resolved as quickly as it would be in 802.1D bridging.

--> 
--> One possible solution could be for RB2 to identify the fact that it is
--> receiving a frame from a host with a MAC address that is associated with
a
--> segment it thought it isn't connected to. Hence, it may trigger an
immediate
--> neighbor discovery / designated Rbridge election. However, because
Rbridges
--> should allow host mobility, this frame may need to be forwarded (and
hence
--> the storm commences).

Yes, this is another approach.  Combine this with the fact that RB2 may also
have received a new reachability advertisement (via IS-IS) from RB1 (or have
one already from previous advertisements), saying that this MAC is reachable

via RB1 - just as RB2 should be considering make such an advertisement
itself.

This is an obvious inconsistency, and - while we do want to support mobility
- we do not have to optimize for it by assuming that all MAC "relocations"
are
automatically legitimate.

--> 
--> As mentioned above, any comments are welcome.
-->   Gideon Kaempfer
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Fri, 3 Nov 2006 13:31:37 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] SPF verses STP, straight across the board
Status: RO
Content-Length: 2933

Silvano,

	 Not sure you have looked at my post to the WG on the subject
of using SPF for all cases.

	I have been assuming that SPF is used for all cases, as not
doing so produces problems.  Interestingly enough - from off-line
discussions - some of the problems I assume will happen if you mix
SPF (for unicast) and STP (for everything else), are exactly the
same as the problems you appear to be trying to address.

	Assume for a minute that all forwarding is based on SPF.  Do
the problems you're concerned about go away?

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Thursday, November 02, 2006 9:29 PM
--> To: Gray, Eric; [email-masked]
--> Subject: RE: [rbridge] SPF verses STP, straight across the board
--> 
--> 
--> Suppose that we have 5 RBridges, R1 to R5 and that R2 and R4 are
--> requesting a tree.
--> 
--> All the RBridges have the same LSA database propagated by ISIS.
--> They use Djikstra for the unicast core instance, putting 
--> themselves as
--> the root.
--> 
--> Then they also run two other instances of Djikstra, one 
--> using R2 as root
--> and one using R4 as root. As a result they put some port in 
--> forwarding
--> state and some in blocking state. Basically they compute 2 spanning
--> trees, one rooted in R2 (let's call it T2) and one rooted 
--> in R4 (T4),
--> without using the spanning tree protocol.
--> 
--> Each ingress RBridge can send multicast, broadcast and 
--> flooded frames
--> either on T2 or T4. It indicates its decision on the FTAG, which is
--> honored by all the other RBridges.
--> 
--> In this way the customer can get Shortest Path and also 
--> load balancing,
--> depending where he/she roots the trees. For example, in Fat Tree
--> networks, if you root the trees in the core, you get both.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: [email-masked] 
--> [mailto:[email-masked]]
--> On
--> > Behalf Of Gray, Eric
--> > Sent: Thursday, November 02, 2006 2:34 PM
--> > To: [email-masked]
--> > Subject: [rbridge] SPF verses STP, straight across the board
--> > 
--> > 
--> > There appears to be a late-blooming source of confusion 
--> relative to
--> > multicast, broadcast and flooded frame forwarding among RBridges.
--> > 
--> > The question is - do the concerns about efficient link utilization
--> > via the use of SPF routing apply to multicast, broadcast 
--> and flooded
--> > traffic (as they do to unicast traffic), or do we simply use some
--> > variation of STP to determine "spanning trees" for the non-unicast
--> > case?
--> > 
--> > I've been under the impression that the intention is to use SPF
--> > routing, straight across the board.
--> > 
--> > --
--> > Eric
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Content-class: urn:content-classes:message
Date: Fri, 3 Nov 2006 09:07:25 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "Larry Kreeger (kreeger)" <[email-masked]>, "Erik Nordmark" <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] LIDs
Status: RO
Content-Length: 1185

Larry Kreeger (kreeger) wrote:
> Hi,
> 
> I was catching up on old RBridge threads and saw this one about LIDs.
> 
> LIDs can be useful in reducing costs in large switches where
> the entire (potentially large) local MAC table would not need
> to be present in every module of the system.  In fact it
> could probably eliminate the need to keep locally learned
> MACs in hardware at all.  Assuming a switch with 16 slots and
> 48 ports per linecard, and servers running 16 virtual
> machines each connected to the ports, the number of local
> MACs would be 16*48*16= 12,288.  With 48 bits per address,
> that is ~59kbits.
> 
> With LIDs, an entry is need only per port, not per local MAC.
>  So given a 16 bit LID, only 16 cards * 48 ports * 16 bits =
> ~12kbits, a savings of ~47kbits.
> 
> The more locally attached MACs, the bigger the savings.
> 

Instead of keeping the MAC to Port mapping in the egress RBridge
you instead keep it in each ingress rbridge that has learned
of this rbridge. I'm not seeing a net savings in memory costs
anywhere. There is certainly a potential latency benefit, but
is there really one that is valid over the desired lifespan
of the protocol?

Date: Fri, 03 Nov 2006 11:21:18 -0500
To: "Developing a hybrid router/bridge." <[email-masked]>
From: "Joel M. Halpern" <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 9977

If we need to make the link state algorithm 
converge without introducing loops, the 
techniques for loop avoidance being discussed in 
the routing area may be of relevance.
In particular, ordered fib convergence seems quite suitable.
Yours,
Joel M. Halpern

At 10:31 AM 11/3/2006, Silvano Gai wrote:

>The examples from Gideon and Guillermo deal with 
>the interaction between STP/RSTP and TRILL and point one weakness of TRILL.
>
>There will be another cause for Broadcast storm 
>that does not involve STP/RSTP interaction, i.e. 
>a simple topology change in the TRILL network.
>
>Djikstar will run in an asynchronous way on the 
>different RBridges and the trees used to 
>distribute broadcast/multicast/unknown will 
>potentially have loops during the transition.
>
>TTL will be of limited help since the traffic 
>will replicate. For example, if the loop is 
>between two RBridges with 256 ports each, 
>assuming a TTL of 64, each broadcast present on 
>the link at the time the loop will cause a storm 
>of 16,000 frames. If the loops involve more 
>switches and links millions of copy will be 
>create. For Enterprise/Datacenter RBridges the 
>forwarding delay is less than 5 microseconds, 
>therefore the storm will reach its peak in 300 
>microseconds, well before any software intervention can break the loop.
>
>-- Silvano
>
> > -----Original Message-----
> > From: [email-masked] [mailto:[email-masked]] On
> > Behalf Of Guillermo Ib??ez
> > Sent: Friday, November 03, 2006 12:36 AM
> > To: Developing a hybrid router/bridge.
> > Subject: Re: [rbridge] Traffic storms
> >
> > This comment is just to signal that the behaviour must be analyzed also
> > assuming that B1 and B2 execute the (current standard) RSTP protocol.
> > There is no forwarding delay in RSTP when the links are dedicated (point
> > to point).
> > If B1 and B2 execute RSTP protocol and B1 has best priority, before
> > link B1-B2 being enabled, B2 will block its designated ports  and stop
> > forwarding  to RB2.  The process will repeat later  for next stage
> > downstream links like B2-RB2 and so on, one level at a time.
> > The trend is to uses RSTP instead of STP. Root bridge election is likely
> > much faster  than DR election. Setting timers at RBridges to stop
> > forwarding may be a solution but it slows reconfiguration speed.
> > Guillermo
> >
> > Radia Perlman escribi?:
> > > The simplest way to put it, I think, is that in certain transitory
> > > situations there might be two
> > > RBridges that both think they are Designated RBridge, and that is bad,
> > > but should stop
> > > as soon as a single Hello is received by the RBridge who should not be
> > > Designated.
> > > I think PIM has similar transitory situations that can occur, and
> > >
> > > bridges can also have (hopefully
> > > temporary) problems if a repeater came up and merged two LANs. I think
> > > such things are
> > > annoying but not fatal. But I think it's possible we can with little
> > > effort avoid this problem.
> > >
> > > However, with RBridges, because the bridge spanning tree algorithm
> > > elects a Root, there's
> > > really a way of uniquely identifying a LAN (where "LAN" is a bunch of
> > > links connected with
> > > bridges). The unique identifier is the root bridge.
> > >
> >
> > > When the B1-B2 link is down, RB1 and RB2 will see the topology as two
> > > separate links, and each
> > > one will have a distinct spanning tree Root bridge (RB1 will see B1, and
> > > RB2 will see B2 as the root).
> > >
> > > When the B1-B2 link comes up, the bridges will first merge the two
> > > links,
> > > and either RB1 or RB2 will
> > > see that the bridge spanning tree root has changed. This will be
> > > discovered before B1 and B2 forward
> > > traffic across the link because of the bridge forwarding delay.If B1 has
> > better priority as bridge spanning tree root than B2, then RB1 will not
> > notice anything
> > > different when the B1-B2 link comes up. But RB2 will notice
> > > something different; the spanning tree root has changed identities from
> > > "B2" to "B1".
> > > Given this, RB2 could temporarily stop forwarding to or from the link
> > > when the Root bridge
> > > changes identities, though it should definitely immediately send IS-IS
> > > Hellos (either RB1 or RB2 will
> > > be elected Designated Router in the IS-IS election for that link). If
> > > RB2 has better prioirty for
> > > root, the RB1 will immediately stop forwarding to or from the link when
> > > it sees the Hello from RB2.
> > > If RB2 has better priority in the IS-IS election, then RB1 should
> > > immediately send an IS-IS Hello
> > > when it sees a Hello from a new RBridge on the link.
> > >
> > > So I think this is not a big deal, and that if we are worried, we can
> > > specify that an RBridge should
> > > stop acting like the Designated RBridge for a few seconds after the
> > > identity of the Root in the spanning
> > > tree algorithm changes.
> > >
> > > Or we could be even fancier and have each RBridge announce in its IS-IS
> > > Hellos which LAN IDs it
> > > is Designated for, where a LAN ID is the MAC address of the Root bridge.
> > > So RB1 continue
> > > forwarding if the identity changes from B1 to B2 provided no other
> > > RBridge has claimed to be connected
> > > to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop
> > > forwarding for enough time
> > > for the IS-IS election to sort itself out and choose a Designated
> > RBridge.
> > >
> > > Radia
> > >
> > >
> > >
> > >
> > >
> > >
> > > Gideon Kaempfer wrote:
> > >
> > >
> > >> Following mention by Silvano of broadcast and multicast storms (and the
> > need
> > >> to protect against them), I played around with different scenarios and
> > came
> > >> upon one I would appreciate your comments on (in the hope I am pointing
> > out
> > >> a non-existent issue with TRILL). I believe a broadcast and even a
> > unicast
> > >> storm could be created as the result of a loop that isn't protected by
> > TTL
> > >> nor by STP in the case of a link connecting two separate LAN segments
> > coming
> > >> to life.
> > >>
> > >> - RB1 ---- RB2 -
> > >>   |        |
> > >> -  B1 --x-- B2 -
> > >>   |        |
> > >>   H1       H2
> > >>
> > >> 1. The network (segment) involved consists of two Rbridges (RB1, RB2),
> > two
> > >> bridges (B1, B2) and two hosts (H1, H2). They are physically connected
> > as
> > >> depicted.
> > >> 2. State A: the direct link between B1 and B2 is down. B1 and B2 find
> > >> themselves on different LAN segments and hence different spanning
> > trees. RB1
> > >> and RB2 are both designated Rbridges (each for the segment of the
> > >> corresponding bridge).
> > >> 3. State B: the direct link between B1 and B2 goes up (someone connects
> > a
> > >> cable). B1 and B2 discover each other and establish a common spanning
> > tree.
> > >> RB1 and RB2 both find themselves attached to the same LAN segment and
> > hence
> > >> RB1 (without loss of generality) will eventually become the designated
> > >> Rbridge for it.
> > >> 4. Just before RB1 and RB2 identify that they are both on the same
> > segment
> > >> and RB2 stops functioning as a designated Rbridge the following
> > scenario
> > >> seems possible:
> > >>  a. H1 sends a broadcast frame.
> > >>  b. B1 receives it and forwards to RB1 and B2.
> > >>  c. RB1 (encapsulates and) forwards to RB2.
> > >>  d. B2 forwards to RB2 and H2.
> > >>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
> > >>  f. (RB1 forwards to B1.)
> > >>  g. B2 forwards (again) to H2 and to B1.
> > >>  h. B1 forwards to H1 (see remark below regarding filtering table
> > >> contamination) and to RB1.
> > >>  i. Etcetera etcetera.
> > >> 5. A broadcast storm is born, created by a loop that is not protected
> > by TTL
> > >> (due to the fact that forwarding between the Rbridges is only across a
> > >> single hop) nor by STP (due to the fact that Rbridges do not
> > participate in
> > >> STP).
> > >> 6. If forwarding commences at the hardware level and no broadcast rate
> > >> limiting is in place, the storm may cause severe damage in a very short
> > time
> > >> (note that replicated frames are sent to H1 and H2 (or any network they
> > >> could represent).
> > >> 7. Another unfortunate effect of this storm is that B1 and B2 no longer
> > know
> > >> where H1 is located (due to the contamination of their filtering tables
> > by a
> > >> frame from H1 that arrives from the wrong direction (and in fact from
> > >> multiple directions). As a result, a possible unicast frame from H2 to
> > H1
> > >> will just join the storm over the loop at least in one direction (RB2
> > will
> > >> forward it to RB1) but will not arrive at H1...
> > >>
> > >> One possible solution could be for RB2 to identify the fact that it is
> > >> receiving a frame from a host with a MAC address that is associated
> > with a
> > >> segment it thought it isn't connected to. Hence, it may trigger an
> > immediate
> > >> neighbor discovery / designated Rbridge election. However, because
> > Rbridges
> > >> should allow host mobility, this frame may need to be forwarded (and
> > hence
> > >> the storm commences).
> > >>
> > >> As mentioned above, any comments are welcome.
> > >>  Gideon Kaempfer
> > >>
> > >> _______________________________________________
> > >> rbridge mailing list
> > >> [email-masked]
> > >> http://mailman.postel.org/mailman/listinfo/rbridge
> > >>
> > >>
> > >>
> > >
> > > _______________________________________________
> > > rbridge mailing list
> > > [email-masked]
> > > http://mailman.postel.org/mailman/listinfo/rbridge
> > >
> > _______________________________________________
> > rbridge mailing list
> > [email-masked]
> > http://mailman.postel.org/mailman/listinfo/rbridge
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Fri, 3 Nov 2006 07:31:40 -0800
From: "Silvano Gai" <[email-masked]>
To: =?iso-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>, "Developing a hybrid router/bridge." <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 9085

The examples from Gideon and Guillermo deal with the interaction between STP/RSTP and TRILL and point one weakness of TRILL.

There will be another cause for Broadcast storm that does not involve STP/RSTP interaction, i.e. a simple topology change in the TRILL network.

Djikstar will run in an asynchronous way on the different RBridges and the trees used to distribute broadcast/multicast/unknown will potentially have loops during the transition.

TTL will be of limited help since the traffic will replicate. For example, if the loop is between two RBridges with 256 ports each, assuming a TTL of 64, each broadcast present on the link at the time the loop will cause a storm of 16,000 frames. If the loops involve more switches and links millions of copy will be create. For Enterprise/Datacenter RBridges the forwarding delay is less than 5 microseconds, therefore the storm will reach its peak in 300 microseconds, well before any software intervention can break the loop.

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On
> Behalf Of Guillermo Ib??ez
> Sent: Friday, November 03, 2006 12:36 AM
> To: Developing a hybrid router/bridge.
> Subject: Re: [rbridge] Traffic storms
> 
> This comment is just to signal that the behaviour must be analyzed also
> assuming that B1 and B2 execute the (current standard) RSTP protocol.
> There is no forwarding delay in RSTP when the links are dedicated (point
> to point).
> If B1 and B2 execute RSTP protocol and B1 has best priority, before
> link B1-B2 being enabled, B2 will block its designated ports  and stop
> forwarding  to RB2.  The process will repeat later  for next stage
> downstream links like B2-RB2 and so on, one level at a time.
> The trend is to uses RSTP instead of STP. Root bridge election is likely
> much faster  than DR election. Setting timers at RBridges to stop
> forwarding may be a solution but it slows reconfiguration speed.
> Guillermo
> 
> Radia Perlman escribi?:
> > The simplest way to put it, I think, is that in certain transitory
> > situations there might be two
> > RBridges that both think they are Designated RBridge, and that is bad,
> > but should stop
> > as soon as a single Hello is received by the RBridge who should not be
> > Designated.
> > I think PIM has similar transitory situations that can occur, and
> >
> > bridges can also have (hopefully
> > temporary) problems if a repeater came up and merged two LANs. I think
> > such things are
> > annoying but not fatal. But I think it's possible we can with little
> > effort avoid this problem.
> >
> > However, with RBridges, because the bridge spanning tree algorithm
> > elects a Root, there's
> > really a way of uniquely identifying a LAN (where "LAN" is a bunch of
> > links connected with
> > bridges). The unique identifier is the root bridge.
> >
> 
> > When the B1-B2 link is down, RB1 and RB2 will see the topology as two
> > separate links, and each
> > one will have a distinct spanning tree Root bridge (RB1 will see B1, and
> > RB2 will see B2 as the root).
> >
> > When the B1-B2 link comes up, the bridges will first merge the two
> > links,
> > and either RB1 or RB2 will
> > see that the bridge spanning tree root has changed. This will be
> > discovered before B1 and B2 forward
> > traffic across the link because of the bridge forwarding delay.If B1 has
> better priority as bridge spanning tree root than B2, then RB1 will not
> notice anything
> > different when the B1-B2 link comes up. But RB2 will notice
> > something different; the spanning tree root has changed identities from
> > "B2" to "B1".
> > Given this, RB2 could temporarily stop forwarding to or from the link
> > when the Root bridge
> > changes identities, though it should definitely immediately send IS-IS
> > Hellos (either RB1 or RB2 will
> > be elected Designated Router in the IS-IS election for that link). If
> > RB2 has better prioirty for
> > root, the RB1 will immediately stop forwarding to or from the link when
> > it sees the Hello from RB2.
> > If RB2 has better priority in the IS-IS election, then RB1 should
> > immediately send an IS-IS Hello
> > when it sees a Hello from a new RBridge on the link.
> >
> > So I think this is not a big deal, and that if we are worried, we can
> > specify that an RBridge should
> > stop acting like the Designated RBridge for a few seconds after the
> > identity of the Root in the spanning
> > tree algorithm changes.
> >
> > Or we could be even fancier and have each RBridge announce in its IS-IS
> > Hellos which LAN IDs it
> > is Designated for, where a LAN ID is the MAC address of the Root bridge.
> > So RB1 continue
> > forwarding if the identity changes from B1 to B2 provided no other
> > RBridge has claimed to be connected
> > to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop
> > forwarding for enough time
> > for the IS-IS election to sort itself out and choose a Designated
> RBridge.
> >
> > Radia
> >
> >
> >
> >
> >
> >
> > Gideon Kaempfer wrote:
> >
> >
> >> Following mention by Silvano of broadcast and multicast storms (and the
> need
> >> to protect against them), I played around with different scenarios and
> came
> >> upon one I would appreciate your comments on (in the hope I am pointing
> out
> >> a non-existent issue with TRILL). I believe a broadcast and even a
> unicast
> >> storm could be created as the result of a loop that isn't protected by
> TTL
> >> nor by STP in the case of a link connecting two separate LAN segments
> coming
> >> to life.
> >>
> >> - RB1 ---- RB2 -
> >>   |        |
> >> -  B1 --x-- B2 -
> >>   |        |
> >>   H1       H2
> >>
> >> 1. The network (segment) involved consists of two Rbridges (RB1, RB2),
> two
> >> bridges (B1, B2) and two hosts (H1, H2). They are physically connected
> as
> >> depicted.
> >> 2. State A: the direct link between B1 and B2 is down. B1 and B2 find
> >> themselves on different LAN segments and hence different spanning
> trees. RB1
> >> and RB2 are both designated Rbridges (each for the segment of the
> >> corresponding bridge).
> >> 3. State B: the direct link between B1 and B2 goes up (someone connects
> a
> >> cable). B1 and B2 discover each other and establish a common spanning
> tree.
> >> RB1 and RB2 both find themselves attached to the same LAN segment and
> hence
> >> RB1 (without loss of generality) will eventually become the designated
> >> Rbridge for it.
> >> 4. Just before RB1 and RB2 identify that they are both on the same
> segment
> >> and RB2 stops functioning as a designated Rbridge the following
> scenario
> >> seems possible:
> >>  a. H1 sends a broadcast frame.
> >>  b. B1 receives it and forwards to RB1 and B2.
> >>  c. RB1 (encapsulates and) forwards to RB2.
> >>  d. B2 forwards to RB2 and H2.
> >>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
> >>  f. (RB1 forwards to B1.)
> >>  g. B2 forwards (again) to H2 and to B1.
> >>  h. B1 forwards to H1 (see remark below regarding filtering table
> >> contamination) and to RB1.
> >>  i. Etcetera etcetera.
> >> 5. A broadcast storm is born, created by a loop that is not protected
> by TTL
> >> (due to the fact that forwarding between the Rbridges is only across a
> >> single hop) nor by STP (due to the fact that Rbridges do not
> participate in
> >> STP).
> >> 6. If forwarding commences at the hardware level and no broadcast rate
> >> limiting is in place, the storm may cause severe damage in a very short
> time
> >> (note that replicated frames are sent to H1 and H2 (or any network they
> >> could represent).
> >> 7. Another unfortunate effect of this storm is that B1 and B2 no longer
> know
> >> where H1 is located (due to the contamination of their filtering tables
> by a
> >> frame from H1 that arrives from the wrong direction (and in fact from
> >> multiple directions). As a result, a possible unicast frame from H2 to
> H1
> >> will just join the storm over the loop at least in one direction (RB2
> will
> >> forward it to RB1) but will not arrive at H1...
> >>
> >> One possible solution could be for RB2 to identify the fact that it is
> >> receiving a frame from a host with a MAC address that is associated
> with a
> >> segment it thought it isn't connected to. Hence, it may trigger an
> immediate
> >> neighbor discovery / designated Rbridge election. However, because
> Rbridges
> >> should allow host mobility, this frame may need to be forwarded (and
> hence
> >> the storm commences).
> >>
> >> As mentioned above, any comments are welcome.
> >>  Gideon Kaempfer
> >>
> >> _______________________________________________
> >> rbridge mailing list
> >> [email-masked]
> >> http://mailman.postel.org/mailman/listinfo/rbridge
> >>
> >>
> >>
> >
> > _______________________________________________
> > rbridge mailing list
> > [email-masked]
> > http://mailman.postel.org/mailman/listinfo/rbridge
> >
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Date: Fri, 03 Nov 2006 09:35:49 +0100
From: =?ISO-8859-1?Q?Guillermo_Ib=E1=F1ez?= <[email-masked]>
To: "Developing a hybrid router/bridge." <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 7354

This comment is just to signal that the behaviour must be analyzed also 
assuming that B1 and B2 execute the (current standard) RSTP protocol.  
There is no forwarding delay in RSTP when the links are dedicated (point 
to point).
If B1 and B2 execute RSTP protocol and B1 has best priority, before  
link B1-B2 being enabled, B2 will block its designated ports  and stop 
forwarding  to RB2.  The process will repeat later  for next stage 
downstream links like B2-RB2 and so on, one level at a time.
The trend is to uses RSTP instead of STP. Root bridge election is likely 
much faster  than DR election. Setting timers at RBridges to stop 
forwarding may be a solution but it slows reconfiguration speed.
Guillermo

Radia Perlman escribi?:
> The simplest way to put it, I think, is that in certain transitory 
> situations there might be two
> RBridges that both think they are Designated RBridge, and that is bad, 
> but should stop
> as soon as a single Hello is received by the RBridge who should not be 
> Designated.
> I think PIM has similar transitory situations that can occur, and 
>   
> bridges can also have (hopefully
> temporary) problems if a repeater came up and merged two LANs. I think 
> such things are
> annoying but not fatal. But I think it's possible we can with little 
> effort avoid this problem.
>
> However, with RBridges, because the bridge spanning tree algorithm 
> elects a Root, there's
> really a way of uniquely identifying a LAN (where "LAN" is a bunch of 
> links connected with
> bridges). The unique identifier is the root bridge.
>   

> When the B1-B2 link is down, RB1 and RB2 will see the topology as two 
> separate links, and each
> one will have a distinct spanning tree Root bridge (RB1 will see B1, and 
> RB2 will see B2 as the root).
>
> When the B1-B2 link comes up, the bridges will first merge the two 
> links, 
> and either RB1 or RB2 will
> see that the bridge spanning tree root has changed. This will be 
> discovered before B1 and B2 forward
> traffic across the link because of the bridge forwarding delay.If B1 has better priority as bridge spanning tree root than B2, then RB1 will not notice anything
> different when the B1-B2 link comes up. But RB2 will notice
> something different; the spanning tree root has changed identities from 
> "B2" to "B1".
> Given this, RB2 could temporarily stop forwarding to or from the link 
> when the Root bridge
> changes identities, though it should definitely immediately send IS-IS 
> Hellos (either RB1 or RB2 will
> be elected Designated Router in the IS-IS election for that link). If 
> RB2 has better prioirty for
> root, the RB1 will immediately stop forwarding to or from the link when 
> it sees the Hello from RB2.
> If RB2 has better priority in the IS-IS election, then RB1 should 
> immediately send an IS-IS Hello
> when it sees a Hello from a new RBridge on the link.
>
> So I think this is not a big deal, and that if we are worried, we can 
> specify that an RBridge should
> stop acting like the Designated RBridge for a few seconds after the 
> identity of the Root in the spanning
> tree algorithm changes.
>
> Or we could be even fancier and have each RBridge announce in its IS-IS 
> Hellos which LAN IDs it
> is Designated for, where a LAN ID is the MAC address of the Root bridge. 
> So RB1 continue
> forwarding if the identity changes from B1 to B2 provided no other 
> RBridge has claimed to be connected
> to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop 
> forwarding for enough time
> for the IS-IS election to sort itself out and choose a Designated RBridge.
>
> Radia
>
>
>
>
>
>
> Gideon Kaempfer wrote:
>
>   
>> Following mention by Silvano of broadcast and multicast storms (and the need
>> to protect against them), I played around with different scenarios and came
>> upon one I would appreciate your comments on (in the hope I am pointing out
>> a non-existent issue with TRILL). I believe a broadcast and even a unicast
>> storm could be created as the result of a loop that isn't protected by TTL
>> nor by STP in the case of a link connecting two separate LAN segments coming
>> to life.
>>
>> - RB1 ---- RB2 -
>>   |        |
>> -  B1 --x-- B2 -
>>   |        |
>>   H1       H2
>>
>> 1. The network (segment) involved consists of two Rbridges (RB1, RB2), two
>> bridges (B1, B2) and two hosts (H1, H2). They are physically connected as
>> depicted.
>> 2. State A: the direct link between B1 and B2 is down. B1 and B2 find
>> themselves on different LAN segments and hence different spanning trees. RB1
>> and RB2 are both designated Rbridges (each for the segment of the
>> corresponding bridge).
>> 3. State B: the direct link between B1 and B2 goes up (someone connects a
>> cable). B1 and B2 discover each other and establish a common spanning tree.
>> RB1 and RB2 both find themselves attached to the same LAN segment and hence
>> RB1 (without loss of generality) will eventually become the designated
>> Rbridge for it.
>> 4. Just before RB1 and RB2 identify that they are both on the same segment
>> and RB2 stops functioning as a designated Rbridge the following scenario
>> seems possible:
>>  a. H1 sends a broadcast frame.
>>  b. B1 receives it and forwards to RB1 and B2.
>>  c. RB1 (encapsulates and) forwards to RB2.
>>  d. B2 forwards to RB2 and H2.
>>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
>>  f. (RB1 forwards to B1.)
>>  g. B2 forwards (again) to H2 and to B1.
>>  h. B1 forwards to H1 (see remark below regarding filtering table
>> contamination) and to RB1.
>>  i. Etcetera etcetera.
>> 5. A broadcast storm is born, created by a loop that is not protected by TTL
>> (due to the fact that forwarding between the Rbridges is only across a
>> single hop) nor by STP (due to the fact that Rbridges do not participate in
>> STP).
>> 6. If forwarding commences at the hardware level and no broadcast rate
>> limiting is in place, the storm may cause severe damage in a very short time
>> (note that replicated frames are sent to H1 and H2 (or any network they
>> could represent).
>> 7. Another unfortunate effect of this storm is that B1 and B2 no longer know
>> where H1 is located (due to the contamination of their filtering tables by a
>> frame from H1 that arrives from the wrong direction (and in fact from
>> multiple directions). As a result, a possible unicast frame from H2 to H1
>> will just join the storm over the loop at least in one direction (RB2 will
>> forward it to RB1) but will not arrive at H1...
>>
>> One possible solution could be for RB2 to identify the fact that it is
>> receiving a frame from a host with a MAC address that is associated with a
>> segment it thought it isn't connected to. Hence, it may trigger an immediate
>> neighbor discovery / designated Rbridge election. However, because Rbridges
>> should allow host mobility, this frame may need to be forwarded (and hence
>> the storm commences).
>>
>> As mentioned above, any comments are welcome.
>>  Gideon Kaempfer
>>
>> _______________________________________________
>> rbridge mailing list
>> [email-masked]
>> http://mailman.postel.org/mailman/listinfo/rbridge
>>  
>>
>>     
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>   

Date: Fri, 3 Nov 2006 08:40:25 +0200
From: "Gideon Kaempfer" <[email-masked]>
Sender: [email-masked]
To: "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 15685

------=_Part_19928_17478998.1162536025887
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Radia,
Wouldn't this create a link between TRILL and STP we are trying to avoid?
Relying on the fact that a LAN segment has some kind of unique identifier
(such as the root bridge ID) seems like a very practical solution to me, but
strongly reliant on the fact that the Rbridges actually process BPDUs. I
thought they were just meant to discard them. Is this acceptable?
Regrads,
 Gidi

On 11/3/06, Radia Perlman <[email-masked]> wrote:
>
> The simplest way to put it, I think, is that in certain transitory
> situations there might be two
> RBridges that both think they are Designated RBridge, and that is bad,
> but should stop
> as soon as a single Hello is received by the RBridge who should not be
> Designated.
>
> I think PIM has similar transitory situations that can occur, and
> bridges can also have (hopefully
> temporary) problems if a repeater came up and merged two LANs. I think
> such things are
> annoying but not fatal. But I think it's possible we can with little
> effort avoid this problem.
>
> However, with RBridges, because the bridge spanning tree algorithm
> elects a Root, there's
> really a way of uniquely identifying a LAN (where "LAN" is a bunch of
> links connected with
> bridges). The unique identifier is the root bridge.
>
> When the B1-B2 link is down, RB1 and RB2 will see the topology as two
> separate links, and each
> one will have a distinct spanning tree Root bridge (RB1 will see B1, and
> RB2 will see B2 as the root).
>
> When the B1-B2 link comes up, the bridges will first merge the two
> links, and either RB1 or RB2 will
> see that the bridge spanning tree root has changed. This will be
> discovered before B1 and B2 forward
> traffic across the link because of the bridge forwarding delay.
> If B1 has better priority as bridge spanning tree root than B2, then RB1
> will not notice anything
> different when the B1-B2 link comes up. But RB2 will notice
> something different; the spanning tree root has changed identities from
> "B2" to "B1".
>
> Given this, RB2 could temporarily stop forwarding to or from the link
> when the Root bridge
> changes identities, though it should definitely immediately send IS-IS
> Hellos (either RB1 or RB2 will
> be elected Designated Router in the IS-IS election for that link). If
> RB2 has better prioirty for
> root, the RB1 will immediately stop forwarding to or from the link when
> it sees the Hello from RB2.
> If RB2 has better priority in the IS-IS election, then RB1 should
> immediately send an IS-IS Hello
> when it sees a Hello from a new RBridge on the link.
>
> So I think this is not a big deal, and that if we are worried, we can
> specify that an RBridge should
> stop acting like the Designated RBridge for a few seconds after the
> identity of the Root in the spanning
> tree algorithm changes.
>
> Or we could be even fancier and have each RBridge announce in its IS-IS
> Hellos which LAN IDs it
> is Designated for, where a LAN ID is the MAC address of the Root bridge.
> So RB1 continue
> forwarding if the identity changes from B1 to B2 provided no other
> RBridge has claimed to be connected
> to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop
> forwarding for enough time
> for the IS-IS election to sort itself out and choose a Designated RBridge.
>
> Radia
>
>
>
>
>
>
> Gideon Kaempfer wrote:
>
> >Following mention by Silvano of broadcast and multicast storms (and the
> need
> >to protect against them), I played around with different scenarios and
> came
> >upon one I would appreciate your comments on (in the hope I am pointing
> out
> >a non-existent issue with TRILL). I believe a broadcast and even a
> unicast
> >storm could be created as the result of a loop that isn't protected by
> TTL
> >nor by STP in the case of a link connecting two separate LAN segments
> coming
> >to life.
> >
> >- RB1 ---- RB2 -
> >   |        |
> >-  B1 --x-- B2 -
> >   |        |
> >   H1       H2
> >
> >1. The network (segment) involved consists of two Rbridges (RB1, RB2),
> two
> >bridges (B1, B2) and two hosts (H1, H2). They are physically connected as
> >depicted.
> >2. State A: the direct link between B1 and B2 is down. B1 and B2 find
> >themselves on different LAN segments and hence different spanning trees.
> RB1
> >and RB2 are both designated Rbridges (each for the segment of the
> >corresponding bridge).
> >3. State B: the direct link between B1 and B2 goes up (someone connects a
> >cable). B1 and B2 discover each other and establish a common spanning
> tree.
> >RB1 and RB2 both find themselves attached to the same LAN segment and
> hence
> >RB1 (without loss of generality) will eventually become the designated
> >Rbridge for it.
> >4. Just before RB1 and RB2 identify that they are both on the same
> segment
> >and RB2 stops functioning as a designated Rbridge the following scenario
> >seems possible:
> >  a. H1 sends a broadcast frame.
> >  b. B1 receives it and forwards to RB1 and B2.
> >  c. RB1 (encapsulates and) forwards to RB2.
> >  d. B2 forwards to RB2 and H2.
> >  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
> >  f. (RB1 forwards to B1.)
> >  g. B2 forwards (again) to H2 and to B1.
> >  h. B1 forwards to H1 (see remark below regarding filtering table
> >contamination) and to RB1.
> >  i. Etcetera etcetera.
> >5. A broadcast storm is born, created by a loop that is not protected by
> TTL
> >(due to the fact that forwarding between the Rbridges is only across a
> >single hop) nor by STP (due to the fact that Rbridges do not participate
> in
> >STP).
> >6. If forwarding commences at the hardware level and no broadcast rate
> >limiting is in place, the storm may cause severe damage in a very short
> time
> >(note that replicated frames are sent to H1 and H2 (or any network they
> >could represent).
> >7. Another unfortunate effect of this storm is that B1 and B2 no longer
> know
> >where H1 is located (due to the contamination of their filtering tables
> by a
> >frame from H1 that arrives from the wrong direction (and in fact from
> >multiple directions). As a result, a possible unicast frame from H2 to H1
> >will just join the storm over the loop at least in one direction (RB2
> will
> >forward it to RB1) but will not arrive at H1...
> >
> >One possible solution could be for RB2 to identify the fact that it is
> >receiving a frame from a host with a MAC address that is associated with
> a
> >segment it thought it isn't connected to. Hence, it may trigger an
> immediate
> >neighbor discovery / designated Rbridge election. However, because
> Rbridges
> >should allow host mobility, this frame may need to be forwarded (and
> hence
> >the storm commences).
> >
> >As mentioned above, any comments are welcome.
> >  Gideon Kaempfer
> >
> >_______________________________________________
> >rbridge mailing list
> >[email-masked]
> >http://mailman.postel.org/mailman/listinfo/rbridge
> >
> >
>
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
>

------=_Part_19928_17478998.1162536025887
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

<div>Radia,</div>
<div>Wouldn't this create a link between TRILL and STP we are trying to avoid?</div>
<div>Relying on the fact that a LAN segment has some kind of unique identifier (such as the root bridge ID) seems like a very practical solution to me, but strongly reliant on the fact that the Rbridges actually process BPDUs. I thought they were just meant to discard them. Is this acceptable?
</div>
<div>Regrads,</div>
<div>&nbsp;Gidi<br><br>&nbsp;</div>
<div><span class="gmail_quote">On 11/3/06, <b class="gmail_sendername">Radia Perlman</b> &lt;<a href="mailto:[email-masked]">[email-masked]</a>&gt; wrote:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">The simplest way to put it, I think, is that in certain transitory<br>situations there might be two<br>RBridges that both think they are Designated RBridge, and that is bad,
<br>but should stop<br>as soon as a single Hello is received by the RBridge who should not be<br>Designated.<br><br>I think PIM has similar transitory situations that can occur, and<br>bridges can also have (hopefully<br>
temporary) problems if a repeater came up and merged two LANs. I think<br>such things are<br>annoying but not fatal. But I think it's possible we can with little<br>effort avoid this problem.<br><br>However, with RBridges, because the bridge spanning tree algorithm
<br>elects a Root, there's<br>really a way of uniquely identifying a LAN (where &quot;LAN&quot; is a bunch of<br>links connected with<br>bridges). The unique identifier is the root bridge.<br><br>When the B1-B2 link is down, RB1 and RB2 will see the topology as two
<br>separate links, and each<br>one will have a distinct spanning tree Root bridge (RB1 will see B1, and<br>RB2 will see B2 as the root).<br><br>When the B1-B2 link comes up, the bridges will first merge the two<br>links, and either RB1 or RB2 will
<br>see that the bridge spanning tree root has changed. This will be<br>discovered before B1 and B2 forward<br>traffic across the link because of the bridge forwarding delay.<br>If B1 has better priority as bridge spanning tree root than B2, then RB1
<br>will not notice anything<br>different when the B1-B2 link comes up. But RB2 will notice<br>something different; the spanning tree root has changed identities from<br>&quot;B2&quot; to &quot;B1&quot;.<br><br>Given this, RB2 could temporarily stop forwarding to or from the link
<br>when the Root bridge<br>changes identities, though it should definitely immediately send IS-IS<br>Hellos (either RB1 or RB2 will<br>be elected Designated Router in the IS-IS election for that link). If<br>RB2 has better prioirty for
<br>root, the RB1 will immediately stop forwarding to or from the link when<br>it sees the Hello from RB2.<br>If RB2 has better priority in the IS-IS election, then RB1 should<br>immediately send an IS-IS Hello<br>when it sees a Hello from a new RBridge on the link.
<br><br>So I think this is not a big deal, and that if we are worried, we can<br>specify that an RBridge should<br>stop acting like the Designated RBridge for a few seconds after the<br>identity of the Root in the spanning
<br>tree algorithm changes.<br><br>Or we could be even fancier and have each RBridge announce in its IS-IS<br>Hellos which LAN IDs it<br>is Designated for, where a LAN ID is the MAC address of the Root bridge.<br>So RB1 continue
<br>forwarding if the identity changes from B1 to B2 provided no other<br>RBridge has claimed to be connected<br>to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop<br>forwarding for enough time<br>for the IS-IS election to sort itself out and choose a Designated RBridge.
<br><br>Radia<br><br><br><br><br><br><br>Gideon Kaempfer wrote:<br><br>&gt;Following mention by Silvano of broadcast and multicast storms (and the need<br>&gt;to protect against them), I played around with different scenarios and came
<br>&gt;upon one I would appreciate your comments on (in the hope I am pointing out<br>&gt;a non-existent issue with TRILL). I believe a broadcast and even a unicast<br>&gt;storm could be created as the result of a loop that isn't protected by TTL
<br>&gt;nor by STP in the case of a link connecting two separate LAN segments coming<br>&gt;to life.<br>&gt;<br>&gt;- RB1 ---- RB2 -<br>&gt;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br>&gt;-&nbsp;&nbsp;B1 --x-- B2 -<br>&gt;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|<br>&gt;&nbsp;&nbsp; H1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; H2<br>
&gt;<br>&gt;1. The network (segment) involved consists of two Rbridges (RB1, RB2), two<br>&gt;bridges (B1, B2) and two hosts (H1, H2). They are physically connected as<br>&gt;depicted.<br>&gt;2. State A: the direct link between B1 and B2 is down. B1 and B2 find
<br>&gt;themselves on different LAN segments and hence different spanning trees. RB1<br>&gt;and RB2 are both designated Rbridges (each for the segment of the<br>&gt;corresponding bridge).<br>&gt;3. State B: the direct link between B1 and B2 goes up (someone connects a
<br>&gt;cable). B1 and B2 discover each other and establish a common spanning tree.<br>&gt;RB1 and RB2 both find themselves attached to the same LAN segment and hence<br>&gt;RB1 (without loss of generality) will eventually become the designated
<br>&gt;Rbridge for it.<br>&gt;4. Just before RB1 and RB2 identify that they are both on the same segment<br>&gt;and RB2 stops functioning as a designated Rbridge the following scenario<br>&gt;seems possible:<br>&gt;&nbsp;&nbsp;a. H1 sends a broadcast frame.
<br>&gt;&nbsp;&nbsp;b. B1 receives it and forwards to RB1 and B2.<br>&gt;&nbsp;&nbsp;c. RB1 (encapsulates and) forwards to RB2.<br>&gt;&nbsp;&nbsp;d. B2 forwards to RB2 and H2.<br>&gt;&nbsp;&nbsp;e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
<br>&gt;&nbsp;&nbsp;f. (RB1 forwards to B1.)<br>&gt;&nbsp;&nbsp;g. B2 forwards (again) to H2 and to B1.<br>&gt;&nbsp;&nbsp;h. B1 forwards to H1 (see remark below regarding filtering table<br>&gt;contamination) and to RB1.<br>&gt;&nbsp;&nbsp;i. Etcetera etcetera.
<br>&gt;5. A broadcast storm is born, created by a loop that is not protected by TTL<br>&gt;(due to the fact that forwarding between the Rbridges is only across a<br>&gt;single hop) nor by STP (due to the fact that Rbridges do not participate in
<br>&gt;STP).<br>&gt;6. If forwarding commences at the hardware level and no broadcast rate<br>&gt;limiting is in place, the storm may cause severe damage in a very short time<br>&gt;(note that replicated frames are sent to H1 and H2 (or any network they
<br>&gt;could represent).<br>&gt;7. Another unfortunate effect of this storm is that B1 and B2 no longer know<br>&gt;where H1 is located (due to the contamination of their filtering tables by a<br>&gt;frame from H1 that arrives from the wrong direction (and in fact from
<br>&gt;multiple directions). As a result, a possible unicast frame from H2 to H1<br>&gt;will just join the storm over the loop at least in one direction (RB2 will<br>&gt;forward it to RB1) but will not arrive at H1...<br>
&gt;<br>&gt;One possible solution could be for RB2 to identify the fact that it is<br>&gt;receiving a frame from a host with a MAC address that is associated with a<br>&gt;segment it thought it isn't connected to. Hence, it may trigger an immediate
<br>&gt;neighbor discovery / designated Rbridge election. However, because Rbridges<br>&gt;should allow host mobility, this frame may need to be forwarded (and hence<br>&gt;the storm commences).<br>&gt;<br>&gt;As mentioned above, any comments are welcome.
<br>&gt;&nbsp;&nbsp;Gideon Kaempfer<br>&gt;<br>&gt;_______________________________________________<br>&gt;rbridge mailing list<br>&gt;<a href="mailto:[email-masked]">[email-masked]</a><br>&gt;<a href="http://mailman.postel.org/mailman/listinfo/rbridge">
http://mailman.postel.org/mailman/listinfo/rbridge</a><br>&gt;<br>&gt;<br><br>_______________________________________________<br>rbridge mailing list<br><a href="mailto:[email-masked]">[email-masked]</a><br><a href="http://mailman.postel.org/mailman/listinfo/rbridge">
http://mailman.postel.org/mailman/listinfo/rbridge</a><br></blockquote></div><br>

------=_Part_19928_17478998.1162536025887--

Date: Thu, 02 Nov 2006 22:25:06 -0800
From: Radia Perlman <[email-masked]>
To: [email-masked]
Cc: [email-masked]
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 6193

The simplest way to put it, I think, is that in certain transitory 
situations there might be two
RBridges that both think they are Designated RBridge, and that is bad, 
but should stop
as soon as a single Hello is received by the RBridge who should not be 
Designated.

I think PIM has similar transitory situations that can occur, and 
bridges can also have (hopefully
temporary) problems if a repeater came up and merged two LANs. I think 
such things are
annoying but not fatal. But I think it's possible we can with little 
effort avoid this problem.

However, with RBridges, because the bridge spanning tree algorithm 
elects a Root, there's
really a way of uniquely identifying a LAN (where "LAN" is a bunch of 
links connected with
bridges). The unique identifier is the root bridge.

When the B1-B2 link is down, RB1 and RB2 will see the topology as two 
separate links, and each
one will have a distinct spanning tree Root bridge (RB1 will see B1, and 
RB2 will see B2 as the root).

When the B1-B2 link comes up, the bridges will first merge the two 
links, and either RB1 or RB2 will
see that the bridge spanning tree root has changed. This will be 
discovered before B1 and B2 forward
traffic across the link because of the bridge forwarding delay.
If B1 has better priority as bridge spanning tree root than B2, then RB1 
will not notice anything
different when the B1-B2 link comes up. But RB2 will notice
something different; the spanning tree root has changed identities from 
"B2" to "B1".

Given this, RB2 could temporarily stop forwarding to or from the link 
when the Root bridge
changes identities, though it should definitely immediately send IS-IS 
Hellos (either RB1 or RB2 will
be elected Designated Router in the IS-IS election for that link). If 
RB2 has better prioirty for
root, the RB1 will immediately stop forwarding to or from the link when 
it sees the Hello from RB2.
If RB2 has better priority in the IS-IS election, then RB1 should 
immediately send an IS-IS Hello
when it sees a Hello from a new RBridge on the link.

So I think this is not a big deal, and that if we are worried, we can 
specify that an RBridge should
stop acting like the Designated RBridge for a few seconds after the 
identity of the Root in the spanning
tree algorithm changes.

Or we could be even fancier and have each RBridge announce in its IS-IS 
Hellos which LAN IDs it
is Designated for, where a LAN ID is the MAC address of the Root bridge. 
So RB1 continue
forwarding if the identity changes from B1 to B2 provided no other 
RBridge has claimed to be connected
to B2. But if RB2's LSP claims it is attached to B2, then RB1 must stop 
forwarding for enough time
for the IS-IS election to sort itself out and choose a Designated RBridge.

Radia

Gideon Kaempfer wrote:

>Following mention by Silvano of broadcast and multicast storms (and the need
>to protect against them), I played around with different scenarios and came
>upon one I would appreciate your comments on (in the hope I am pointing out
>a non-existent issue with TRILL). I believe a broadcast and even a unicast
>storm could be created as the result of a loop that isn't protected by TTL
>nor by STP in the case of a link connecting two separate LAN segments coming
>to life.
>
>- RB1 ---- RB2 -
>   |        |
>-  B1 --x-- B2 -
>   |        |
>   H1       H2
>
>1. The network (segment) involved consists of two Rbridges (RB1, RB2), two
>bridges (B1, B2) and two hosts (H1, H2). They are physically connected as
>depicted.
>2. State A: the direct link between B1 and B2 is down. B1 and B2 find
>themselves on different LAN segments and hence different spanning trees. RB1
>and RB2 are both designated Rbridges (each for the segment of the
>corresponding bridge).
>3. State B: the direct link between B1 and B2 goes up (someone connects a
>cable). B1 and B2 discover each other and establish a common spanning tree.
>RB1 and RB2 both find themselves attached to the same LAN segment and hence
>RB1 (without loss of generality) will eventually become the designated
>Rbridge for it.
>4. Just before RB1 and RB2 identify that they are both on the same segment
>and RB2 stops functioning as a designated Rbridge the following scenario
>seems possible:
>  a. H1 sends a broadcast frame.
>  b. B1 receives it and forwards to RB1 and B2.
>  c. RB1 (encapsulates and) forwards to RB2.
>  d. B2 forwards to RB2 and H2.
>  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
>  f. (RB1 forwards to B1.)
>  g. B2 forwards (again) to H2 and to B1.
>  h. B1 forwards to H1 (see remark below regarding filtering table
>contamination) and to RB1.
>  i. Etcetera etcetera.
>5. A broadcast storm is born, created by a loop that is not protected by TTL
>(due to the fact that forwarding between the Rbridges is only across a
>single hop) nor by STP (due to the fact that Rbridges do not participate in
>STP).
>6. If forwarding commences at the hardware level and no broadcast rate
>limiting is in place, the storm may cause severe damage in a very short time
>(note that replicated frames are sent to H1 and H2 (or any network they
>could represent).
>7. Another unfortunate effect of this storm is that B1 and B2 no longer know
>where H1 is located (due to the contamination of their filtering tables by a
>frame from H1 that arrives from the wrong direction (and in fact from
>multiple directions). As a result, a possible unicast frame from H2 to H1
>will just join the storm over the loop at least in one direction (RB2 will
>forward it to RB1) but will not arrive at H1...
>
>One possible solution could be for RB2 to identify the fact that it is
>receiving a frame from a host with a MAC address that is associated with a
>segment it thought it isn't connected to. Hence, it may trigger an immediate
>neighbor discovery / designated Rbridge election. However, because Rbridges
>should allow host mobility, this frame may need to be forwarded (and hence
>the storm commences).
>
>As mentioned above, any comments are welcome.
>  Gideon Kaempfer
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 22:21:52 -0800
From: "Larry Kreeger \(kreeger\)" <[email-masked]>
To: "Caitlin Bestler" <[email-masked]>, "Erik Nordmark" <[email-masked]>, "Radia Perlman" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] LIDs
Status: RO
Content-Length: 2925

Hi,

I was catching up on old RBridge threads and saw this one about LIDs.

LIDs can be useful in reducing costs in large switches where the entire
(potentially large) local MAC table would not need to be present in
every module of the system.  In fact it could probably eliminate the
need to keep locally learned MACs in hardware at all.  Assuming a switch
with 16 slots and 48 ports per linecard, and servers running 16 virtual
machines each connected to the ports, the number of local MACs would be
16*48*16= 12,288.  With 48 bits per address, that is ~59kbits.

With LIDs, an entry is need only per port, not per local MAC.  So given
a 16 bit LID, only 16 cards * 48 ports * 16 bits = ~12kbits, a savings
of ~47kbits.

The more locally attached MACs, the bigger the savings.

  - Larry
 
Caitlin Bestler wrote on Wednesday, October 18, 2006 1:19 PM:

> Erik Nordmark wrote:
>> Radia Perlman wrote:
>> 
>>> We haven't discussed the LID fields. Perhaps that should be a
>>> different thread. Since that doesn't affect forwarding, and is only
>>> a convenience to the egress RBridge, that doesn't seem too
>>> compelling. The ingress RBridge has to do the lookup per endnode,
>>> so it's only at most twice as much computation for a Designated
>>> RBridge to have to do the lookup both when a packet leaves its link
>>> and when it enters. 
>> 
>> If we are trying to squeeze bits and see a need for a LID capability,
>> it might make sense to allow different egress rbridges have different
>> number of LID bits - they only need to number their ports so in some
>> cases few bits would be sufficient.
>> 
>> Assuming we have a 19 bit space for RBridge alias plus LID, then an
>> rbridge with 16 ports would ask for an alias that is 19-4=15 bits.
>> 
>> The downside of such an approach is that the alias setup would need
>> to be able to handle variable length aliases, and the transit
>> rbridges would either need variable length matching on the RBridge
>> alias, or expand out to all the matching 19 bit patterns and have
>> the hardware do full 19 bit matches. For instance, the above 15 bit
>> alias would expand to 16 different matches on 19 bits.
>> 
>>     Erik
> 
> Bitmask aliasing an RBridge ID has the same potential uses as LID
> aliasing for InfiniBand, and the same complexities. 
> 
> My generate comment on the LID is that it is only worth considering
> if it can be multiplexed with the RBridge ID. Otherwise you are
> replacing an egress RBridge table [local mac-->local port] by having
> having more data in the ingress RBridge table [remote mac-->remote
> rbridge + LID]. I'm not certain that it really reduces the amount of
> memory, and given the likely size of the [local mac-->local port]
> table I don't think it improves latency.      
> 
> 
> 
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 21:37:07 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: <[email-masked]>
Subject: Re: [rbridge] Last Call question
Status: RO
Content-Length: 2171

Hi Dinesh,

I am unaware of any rule which prohibits a working group last call under
these circumstances.

One major purpose of a working group last call is to solicit comments.
If comments were received which resolved all these items and any other
issues in a way which had consensus then, after the conclusion of the
last call, these comments could be incorporated into the draft and it
could be forwarded to the IESG. If there are unresolved issues, then the
draft should be improved as far as possible based on the feedback
received and be subject to further work within the working group.

Thanks,
Donald

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Dinesh G Dutt
Sent: Thursday, November 02, 2006 8:01 PM
To: [email-masked]
Subject: [rbridge] Last Call question

Folks,

Can we do a last call on document: 
http://www.ietf.org/internet-drafts/draft-ietf-trill-prob-01.txt
when the document contains sections such as the following:

    [QUESTION: What is the timescale? O(# bridges)? O(#links?), etc? on
    report is that "I have heard things said that imply that the worst
    case RSTP settling time is related to 3 times the network diameter,
    where diameter is the maximum of the minimum number of hops between
    all pairs of nodes." - if anyone has a more specific reference,
    please provide one]

    [JUST CHECKING - OR AM I MISREADING WHAT
    802.1V DOES?]

    [we need pictures here; to appear]

    [NOTE: this might be omitted, as it has not been shown to be a
    problem with STP].

    [NOTE: need to say more here.]

    [Need a ref for the router-router 'igmp' protocol]

    [need a ref for secure ipv6 nd]

    7. Conclusions

    (TBA)

I haven't been following up the thread with Silvano's comments and I
apologize if I'm posting something that has already been discussed.

Dinesh

--
We make our world significant by the courage of our questions and by 
the depth of our answers.                               - Carl Sagan
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 18:37:59 -0800
From: "Silvano Gai" <[email-masked]>
To: <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Traffic storms
Status: RO
Content-Length: 4335

Gideon,

You hit the nail on the head; this is one of the many examples in which
the current TRILL proposal will generate Broadcast Storm that will crash
any network.

This is the reason why, if we don't solve the Broadcast Storm, TRILL is
unusable and there is no point in building products.

I think we need to start to discuss possible solutions, since this can
influence also other aspects of the design.

Unfortunately I am more pessimistic than you: I think that TTL help very
little for Broadcast, since Broadcast replicate in HW. When TTL kicks
in, the storm has already happened.

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Gideon Kaempfer
> Sent: Thursday, November 02, 2006 3:08 PM
> To: [email-masked]
> Subject: [rbridge] Traffic storms
> 
> Following mention by Silvano of broadcast and multicast storms (and
the
> need
> to protect against them), I played around with different scenarios and
> came
> upon one I would appreciate your comments on (in the hope I am
pointing
> out
> a non-existent issue with TRILL). I believe a broadcast and even a
unicast
> storm could be created as the result of a loop that isn't protected by
TTL
> nor by STP in the case of a link connecting two separate LAN segments
> coming
> to life.
> 
> - RB1 ---- RB2 -
>    |        |
> -  B1 --x-- B2 -
>    |        |
>    H1       H2
> 
> 1. The network (segment) involved consists of two Rbridges (RB1, RB2),
two
> bridges (B1, B2) and two hosts (H1, H2). They are physically connected
as
> depicted.
> 2. State A: the direct link between B1 and B2 is down. B1 and B2 find
> themselves on different LAN segments and hence different spanning
trees.
> RB1
> and RB2 are both designated Rbridges (each for the segment of the
> corresponding bridge).
> 3. State B: the direct link between B1 and B2 goes up (someone
connects a
> cable). B1 and B2 discover each other and establish a common spanning
> tree.
> RB1 and RB2 both find themselves attached to the same LAN segment and
> hence
> RB1 (without loss of generality) will eventually become the designated
> Rbridge for it.
> 4. Just before RB1 and RB2 identify that they are both on the same
segment
> and RB2 stops functioning as a designated Rbridge the following
scenario
> seems possible:
>   a. H1 sends a broadcast frame.
>   b. B1 receives it and forwards to RB1 and B2.
>   c. RB1 (encapsulates and) forwards to RB2.
>   d. B2 forwards to RB2 and H2.
>   e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to
RB1).
>   f. (RB1 forwards to B1.)
>   g. B2 forwards (again) to H2 and to B1.
>   h. B1 forwards to H1 (see remark below regarding filtering table
> contamination) and to RB1.
>   i. Etcetera etcetera.
> 5. A broadcast storm is born, created by a loop that is not protected
by
> TTL
> (due to the fact that forwarding between the Rbridges is only across a
> single hop) nor by STP (due to the fact that Rbridges do not
participate
> in
> STP).
> 6. If forwarding commences at the hardware level and no broadcast rate
> limiting is in place, the storm may cause severe damage in a very
short
> time
> (note that replicated frames are sent to H1 and H2 (or any network
they
> could represent).
> 7. Another unfortunate effect of this storm is that B1 and B2 no
longer
> know
> where H1 is located (due to the contamination of their filtering
tables by
> a
> frame from H1 that arrives from the wrong direction (and in fact from
> multiple directions). As a result, a possible unicast frame from H2 to
H1
> will just join the storm over the loop at least in one direction (RB2
will
> forward it to RB1) but will not arrive at H1...
> 
> One possible solution could be for RB2 to identify the fact that it is
> receiving a frame from a host with a MAC address that is associated
with a
> segment it thought it isn't connected to. Hence, it may trigger an
> immediate
> neighbor discovery / designated Rbridge election. However, because
> Rbridges
> should allow host mobility, this frame may need to be forwarded (and
hence
> the storm commences).
> 
> As mentioned above, any comments are welcome.
>   Gideon Kaempfer
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 18:28:45 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] SPF verses STP, straight across the board
Status: RO
Content-Length: 1900

Suppose that we have 5 RBridges, R1 to R5 and that R2 and R4 are
requesting a tree.

All the RBridges have the same LSA database propagated by ISIS.
They use Djikstra for the unicast core instance, putting themselves as
the root.

Then they also run two other instances of Djikstra, one using R2 as root
and one using R4 as root. As a result they put some port in forwarding
state and some in blocking state. Basically they compute 2 spanning
trees, one rooted in R2 (let's call it T2) and one rooted in R4 (T4),
without using the spanning tree protocol.

Each ingress RBridge can send multicast, broadcast and flooded frames
either on T2 or T4. It indicates its decision on the FTAG, which is
honored by all the other RBridges.

In this way the customer can get Shortest Path and also load balancing,
depending where he/she roots the trees. For example, in Fat Tree
networks, if you root the trees in the core, you get both.

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Gray, Eric
> Sent: Thursday, November 02, 2006 2:34 PM
> To: [email-masked]
> Subject: [rbridge] SPF verses STP, straight across the board
> 
> 
> There appears to be a late-blooming source of confusion relative to
> multicast, broadcast and flooded frame forwarding among RBridges.
> 
> The question is - do the concerns about efficient link utilization
> via the use of SPF routing apply to multicast, broadcast and flooded
> traffic (as they do to unicast traffic), or do we simply use some
> variation of STP to determine "spanning trees" for the non-unicast
> case?
> 
> I've been under the impression that the intention is to use SPF
> routing, straight across the board.
> 
> --
> Eric
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Date: Thu, 02 Nov 2006 17:00:42 -0800
From: Dinesh G Dutt <[email-masked]>
To: [email-masked]
Subject: [rbridge] Last Call question
Status: RO
Content-Length: 1195

Folks,

Can we do a last call on document: 
http://www.ietf.org/internet-drafts/draft-ietf-trill-prob-01.txt
when the document contains sections such as the following:

    [QUESTION: What is the timescale? O(# bridges)? O(#links?), etc? on
    report is that "I have heard things said that imply that the worst
    case RSTP settling time is related to 3 times the network diameter,
    where diameter is the maximum of the minimum number of hops between
    all pairs of nodes." - if anyone has a more specific reference,
    please provide one]

    [JUST CHECKING - OR AM I MISREADING WHAT
    802.1V DOES?]

    [we need pictures here; to appear]

    [NOTE: this might be omitted, as it has not been shown to be a
    problem with STP].

    [NOTE: need to say more here.]

    [Need a ref for the router-router 'igmp' protocol]

    [need a ref for secure ipv6 nd]

    7. Conclusions

    (TBA)

I haven't been following up the thread with Silvano's comments and I 
apologize if I'm posting something that has already been discussed.

Dinesh

-- 
We make our world significant by the courage of our questions and by 
the depth of our answers.                               - Carl Sagan

From: "Gideon Kaempfer" <[email-masked]>
To: <[email-masked]>
Date: Fri, 3 Nov 2006 01:07:54 +0200
Sender: Gideon Kaempfer <[email-masked]>
Subject: [rbridge] Traffic storms
Reply-To: [email-masked]
Status: RO
Content-Length: 3186

Following mention by Silvano of broadcast and multicast storms (and the need
to protect against them), I played around with different scenarios and came
upon one I would appreciate your comments on (in the hope I am pointing out
a non-existent issue with TRILL). I believe a broadcast and even a unicast
storm could be created as the result of a loop that isn't protected by TTL
nor by STP in the case of a link connecting two separate LAN segments coming
to life.

- RB1 ---- RB2 -
   |        |
-  B1 --x-- B2 -
   |        |
   H1       H2

1. The network (segment) involved consists of two Rbridges (RB1, RB2), two
bridges (B1, B2) and two hosts (H1, H2). They are physically connected as
depicted.
2. State A: the direct link between B1 and B2 is down. B1 and B2 find
themselves on different LAN segments and hence different spanning trees. RB1
and RB2 are both designated Rbridges (each for the segment of the
corresponding bridge).
3. State B: the direct link between B1 and B2 goes up (someone connects a
cable). B1 and B2 discover each other and establish a common spanning tree.
RB1 and RB2 both find themselves attached to the same LAN segment and hence
RB1 (without loss of generality) will eventually become the designated
Rbridge for it.
4. Just before RB1 and RB2 identify that they are both on the same segment
and RB2 stops functioning as a designated Rbridge the following scenario
seems possible:
  a. H1 sends a broadcast frame.
  b. B1 receives it and forwards to RB1 and B2.
  c. RB1 (encapsulates and) forwards to RB2.
  d. B2 forwards to RB2 and H2.
  e. RB2 forwards the copy from RB1 to B2 (and the copy from B2 to RB1).
  f. (RB1 forwards to B1.)
  g. B2 forwards (again) to H2 and to B1.
  h. B1 forwards to H1 (see remark below regarding filtering table
contamination) and to RB1.
  i. Etcetera etcetera.
5. A broadcast storm is born, created by a loop that is not protected by TTL
(due to the fact that forwarding between the Rbridges is only across a
single hop) nor by STP (due to the fact that Rbridges do not participate in
STP).
6. If forwarding commences at the hardware level and no broadcast rate
limiting is in place, the storm may cause severe damage in a very short time
(note that replicated frames are sent to H1 and H2 (or any network they
could represent).
7. Another unfortunate effect of this storm is that B1 and B2 no longer know
where H1 is located (due to the contamination of their filtering tables by a
frame from H1 that arrives from the wrong direction (and in fact from
multiple directions). As a result, a possible unicast frame from H2 to H1
will just join the storm over the loop at least in one direction (RB2 will
forward it to RB1) but will not arrive at H1...

One possible solution could be for RB2 to identify the fact that it is
receiving a frame from a host with a MAC address that is associated with a
segment it thought it isn't connected to. Hence, it may trigger an immediate
neighbor discovery / designated Rbridge election. However, because Rbridges
should allow host mobility, this frame may need to be forwarded (and hence
the storm commences).

As mentioned above, any comments are welcome.
  Gideon Kaempfer

From: "Gray, Eric" <[email-masked]>
To: Caitlin Bestler <[email-masked]>
Date: Thu, 2 Nov 2006 17:43:42 -0500 
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] On Nick-Names
Status: RO
Content-Length: 2213

Caitlin,

	Anything more explicit than "it magically happens" would
be an improvement.  However, disadvantages in what you suggest
include the "new" requirement for persistent storage (this is
not implicit in typical plug and play hardware), and the fact
that we might have to be pretty explicit about when we require
this to happen (i.e. - at what point can other implementations
assume this has been done?).

--
Eric

--> -----Original Message-----
--> From: Caitlin Bestler [mailto:[email-masked]] 
--> Sent: Thursday, November 02, 2006 5:37 PM
--> To: Gray, Eric; Eastlake III Donald-LDE008
--> Cc: [email-masked]; Radia Perlman
--> Subject: RE: [rbridge] On Nick-Names
--> 
--> [email-masked] wrote:
--> > Donald,
--> > 
--> > 	Yes, this sounds familiar.  There are issues with this
--> > negotiation approach, however.  For example, because it is
--> > non-determinstic, some of the assumptions in this text are
--> > either incorrect, or subject to race-conditions.
--> > 
--> > 	For example, the statement "once it is stable,
--> > nicknames should remain stable even as routers go up or down"
--> > appears to either assume that a nick-name is presistent
--> > across a system's reset/reboot, or assume that this approach
--> > will (somehow) result in selecting the same nick-names again.
--> > 
--> > 	Also, the statement "To minimize the probability of a
--> > new RBridge usurping a nickname already in use, an RBridge
--> > should wait to acquire the link state database from a
--> > neighbor before it announces its own nickname" seems to have
--> > built-in difficulty in boot-strapping.  Exactly _how_ does
--> > this occur without the possibility of two devices each
--> > believing the other is the one doing the "usurping"?
--> > 
--> > 	I am also very uncomfortable with the idea of allowing
--> > any implementation choice possible, for nick-name selection,
--> > to be used, under the assumption that convergence will
--> > eventually happen, and that persistant nick-names will be a
--> > natural result of this chaotic assumption.
--> > 
--> Why not explicitly state that an RBridge SHOULD use its
--> prior nick-name as its first choice after a reset/reboot?
--> 

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 14:36:57 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Eastlake III Donald-LDE008" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] On Nick-Names
Status: RO
Content-Length: 1400

[email-masked] wrote:
> Donald,
> 
> 	Yes, this sounds familiar.  There are issues with this
> negotiation approach, however.  For example, because it is
> non-determinstic, some of the assumptions in this text are
> either incorrect, or subject to race-conditions.
> 
> 	For example, the statement "once it is stable,
> nicknames should remain stable even as routers go up or down"
> appears to either assume that a nick-name is presistent
> across a system's reset/reboot, or assume that this approach
> will (somehow) result in selecting the same nick-names again.
> 
> 	Also, the statement "To minimize the probability of a
> new RBridge usurping a nickname already in use, an RBridge
> should wait to acquire the link state database from a
> neighbor before it announces its own nickname" seems to have
> built-in difficulty in boot-strapping.  Exactly _how_ does
> this occur without the possibility of two devices each
> believing the other is the one doing the "usurping"?
> 
> 	I am also very uncomfortable with the idea of allowing
> any implementation choice possible, for nick-name selection,
> to be used, under the assumption that convergence will
> eventually happen, and that persistant nick-names will be a
> natural result of this chaotic assumption.
> 
Why not explicitly state that an RBridge SHOULD use its
prior nick-name as its first choice after a reset/reboot?

From: "Gray, Eric" <[email-masked]>
To: [email-masked]
Date: Thu, 2 Nov 2006 17:34:05 -0500 
Subject: [rbridge] SPF verses STP, straight across the board
Status: RO
Content-Length: 524

There appears to be a late-blooming source of confusion relative to 
multicast, broadcast and flooded frame forwarding among RBridges.

The question is - do the concerns about efficient link utilization 
via the use of SPF routing apply to multicast, broadcast and flooded
traffic (as they do to unicast traffic), or do we simply use some
variation of STP to determine "spanning trees" for the non-unicast 
case?

I've been under the impression that the intention is to use SPF
routing, straight across the board.

--
Eric

From: "Gray, Eric" <[email-masked]>
To: Eastlake III Donald-LDE008 <[email-masked]>
Date: Thu, 2 Nov 2006 17:19:32 -0500 
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] On Nick-Names
Status: RO
Content-Length: 6329

Donald,

	Yes, this sounds familiar.  There are issues with this 
negotiation approach, however.  For example, because it is 
non-determinstic, some of the assumptions in this text are 
either incorrect, or subject to race-conditions.

	For example, the statement "once it is stable, nicknames 
should remain stable even as routers go up or down" appears to 
either assume that a nick-name is presistent across a system's
reset/reboot, or assume that this approach will (somehow) result
in selecting the same nick-names again.

	Also, the statement "To minimize the probability of a new 
RBridge usurping a nickname already in use, an RBridge should 
wait to acquire the link state database from a neighbor before 
it announces its own nickname" seems to have built-in difficulty
in boot-strapping.  Exactly _how_ does this occur without the 
possibility of two devices each believing the other is the one 
doing the "usurping"? 

	I am also very uncomfortable with the idea of allowing any
implementation choice possible, for nick-name selection, to be 
used, under the assumption that convergence will eventually 
happen, and that persistant nick-names will be a natural result
of this chaotic assumption.

--> -----Original Message-----
--> From: Eastlake III Donald-LDE008 
--> [mailto:[email-masked]] 
--> Sent: Thursday, November 02, 2006 1:03 AM
--> To: Radia Perlman; Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] On Nick-Names
--> 
--> Details on choosing a nickname are in the expired
--> draft-bryant-perlman-trill-pwe-encap-00. I'll paste them below
--> 
--> Donald
--> 
-->    Each RBridge chooses its own nickname.  However, each 
--> RBridge is also
-->    responsible for ensuring that its nickname is unique.  
--> If R1 chooses
-->    nickname x, and R1 discovers, through receipt of R2's 
--> LSP, that R2
-->    has also chosen x, then the RBridge with the lower 
--> system ID keeps
-->    the nickname, and the other one must choose a new nickname.
--> 
-->    If two RBridge domains merge, then there might be a lot 
--> of nickname
-->    collisions for a short time, but as soon as each side 
--> receives the
-->    link state packets of the other, the RBridges that need to change
-->    nicknames will quickly become aware of this, and choose 
--> new nicknames
-->    that do not, to the best of their ability, collide with 
--> any existing
-->    nicknames.
--> 
-->    To minimize the probability of nickname collisions, each RBridge
-->    chooses its nickname randomly from the set of assigned nicknames.
-->    Alternatively, we could use some sort of hash algorithm 
--> (such as the
-->    bottom 19 bits of the MD5 of the RBridge's system ID), 
--> to choose the
-->    first nickname, and then if there is a collision, go to 
--> the next 19
-->    bits of the MD5, and so on, until all 128 bits of the 
--> MD5 hash are
-->    exhausted, in which case the RBridge hashes its own 
--> system ID again,
-->    this time together with the constant "1".
--> 
-->    There is no reason for all RBridges to use the same algorithm for
-->    choosing nicknames.  Picking them at random, or using a 
--> hash, are an
-->    attempt to avoid collisions when the network starts up, 
--> but that is
-->    only an optimization.  Even if all RBridges used the 
--> same algorithm,
-->    say as a worst case, they all start with "1" and count up
-->    sequentially until they find an uncontested nickname, the network
-->    will eventually stabilize.  And once it is stable, 
--> nicknames should
-->    remain stable even as routers go up or down.
--> 
-->    To minimize the probability of a new RBridge usurping a nickname
-->    already in use, an RBridge should wait to acquire the link state
-->    database from a neighbor before it announces its own nickname.
--> 
--> 
--> 
--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On
--> Behalf Of Radia Perlman
--> Sent: Wednesday, November 01, 2006 9:58 PM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: Re: [rbridge] On Nick-Names
--> 
--> I thought the spec did say how to choose nicknames.
--> 
--> I think it should be done based on choosing them at random, 
--> (rather than
--> some substring of the MAC address) and if someone with 
--> higher priority
--> asks for the same nickname you did, you have to choose a 
--> different one. 
--> Priority is
--> based on lower MAC address.
--> 
--> It will converge more quickly if the nickname space is not 
--> very densely
--> used of course. But I really think that people are not talking about
--> building campuses with more than 1000 RBridges, so with 16 bits it
--> wouldn't be densely assigned.
--> 
--> I don't care what size the nickname is. 16 bits seemed to 
--> align nicely,
--> but as I said, I don't care.
--> 
--> Radia
--> 
--> 
--> 
--> Gray, Eric wrote:
--> 
--> >Folks,
--> >
--> >Another thing to consider in potentially reducing the size of the 
--> >RBridge ID name space is that reducing the number of bits also 
--> >increases the probability of "name collisions" during the 
--> process of 
--> >nick-name negotiation - further complicating the RBridge 
--> interactions 
--> >by increasing the probability that "name collisions" will 
--> result in 
--> >multiple retries.
--> >
--> >Last I heard, the protocol specification was going to 
--> spell out how 
--> >nick-names would be negotiated.  As I understand it, the 
--> plan was to 
--> >assert a nick-name based on some substring of the 
--> MAC-derived system 
--> >ID.  Since this is at least 48 bits (with perhaps fewer 
--> bits relevantly
--> 
--> >significant), a reduction to 19 bits was felt to introduce 
--> a collision 
--> >probability that is not too bad.
--> >
--> >Do people feel that collisions are likely to remain rare 
--> if the name 
--> >space is reduced to 16 bits?  IMO, that may be an unreasonable 
--> >assumption...
--> >
--> >--
--> >Eric
--> >_______________________________________________
--> >rbridge mailing list
--> >[email-masked]
--> >http://mailman.postel.org/mailman/listinfo/rbridge
--> >  
--> >
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

Date: Thu, 02 Nov 2006 11:20:04 -0800
From: Radia Perlman <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery
Status: RO
Content-Length: 1329

Warning---half-baked idea at the end of this message (my own---see "***")

Sanjay Sane (sanjays) wrote:

>
>So, the TLV inside rbridge LSP could contain 2 things 
>1 -- "my priority for being a tree root is x". 
>2 -- "I can support n trees"
>
>If both of these are absent, we could choose 1 tree, and the rbridge
>with lowest MAC address is the root of that single tree.
>
>-Sanjay
>
Right. I'm a bit nervous about some random RBridge that can only support 
one tree, or that just
leaves the TLV out, from going up and down. We have to make sure it's 
not unstable.

Suppose the nickname of the RBridge with highest priority for being root 
is 24.
Suppose ingress RBridge R1 doesn't notice that wimpy RBridge R5 (that 
can only support one tree)
has joined the net, and R1 selects "79" as the tree .

I guess we should say that if you see a specified tree that shouldn't be 
legal, you drop the packet, right?

***An alternative is to continue forwarding it along the 79-tree and 
hey, if R5 is on the path, it will
drop the packet and only nodes downstream from R5 will suffer. We could 
even do complicated things
like say that you can calculate trees beyond R5's capabilities by 
considering links out of R5 to be
infinity. That way a wimpy RBridge can be a leaf, and going up and down 
won't affect existing trees.

Radia

From: "Gray, Eric" <[email-masked]>
To: Radia Perlman <[email-masked]>, "Gray, Eric" <[email-masked]>
Date: Thu, 2 Nov 2006 14:01:36 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] On Nick-Names
Status: RO
Content-Length: 3090

Radia,

	I was under the impression that - while the "random approach"
has been discussed - there was some concerns about the fact that this
approach is inherently non-deterministic.  I don't recall exactly the
conversation I over-heard, but I thought there were concerns that this
may lead to management difficulties, etc.

	Also, this would mean that an RBridge would rarely use the same
nick-name in later negotiations, possibly leading to inconsistencies 
in forwarding entries and difficulties in defining a graceful restart
approach later on.

	However, even if this is - indeed - the approach we're going to 
use, the probability of a collisions is clearly 8 times as great with
16 bits as it is with 19 (16 times as great with 16 bits in comparison
with 20 bits).  That is true irrespective of the "sparseness" of usage
of the nick-name space.

--
Eric 

--> -----Original Message-----
--> From: Radia Perlman [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 9:58 PM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: Re: [rbridge] On Nick-Names
--> 
--> I thought the spec did say how to choose nicknames.
--> 
--> I think it should be done based on choosing them at random, 
--> (rather than 
--> some substring
--> of the MAC address) and if someone with higher priority
--> asks for the same nickname you did, you have to choose a 
--> different one. 
--> Priority is
--> based on lower MAC address.
--> 
--> It will converge more quickly if the nickname space is not 
--> very densely 
--> used of course. But I really
--> think that people are not talking about building campuses 
--> with more than 
--> 1000 RBridges, so
--> with 16 bits it wouldn't be densely assigned.
--> 
--> I don't care what size the nickname is. 16 bits seemed to 
--> align nicely, 
--> but as I said, I don't care.
--> 
--> Radia
--> 
--> 
--> 
--> Gray, Eric wrote:
--> 
--> >Folks,
--> >
--> >Another thing to consider in potentially reducing the size of 
--> >the RBridge ID name space is that reducing the number of bits
--> >also increases the probability of "name collisions" during the
--> >process of nick-name negotiation - further complicating the
--> >RBridge interactions by increasing the probability that "name
--> >collisions" will result in multiple retries.
--> >
--> >Last I heard, the protocol specification was going to spell
--> >out how nick-names would be negotiated.  As I understand it,
--> >the plan was to assert a nick-name based on some substring of
--> >the MAC-derived system ID.  Since this is at least 48 bits
--> >(with perhaps fewer bits relevantly significant), a reduction
--> >to 19 bits was felt to introduce a collision probability that
--> >is not too bad.
--> >
--> >Do people feel that collisions are likely to remain rare if 
--> >the name space is reduced to 16 bits?  IMO, that may be an
--> >unreasonable assumption...
--> >
--> >--
--> >Eric
--> >_______________________________________________
--> >rbridge mailing list
--> >[email-masked]
--> >http://mailman.postel.org/mailman/listinfo/rbridge
--> >  
--> >
--> 

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 09:42:49 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: <[email-masked]>, "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery
Status: RO
Content-Length: 5884

inline with <sanjay>

3) Right. Choosing which n RBridges get to be roots based on MAC
addresses is arbitrary. I just wanted a simple tie breaker so all the
RBridges compute the same trees. For DR election there's a priority
field that is used as the most significant byte of the address. We could
do the same thing here. Rather than a flag saying "I want to be a root",
there can be, say, a 1 byte TLV in the link state packet saying "my
priority for being a tree root is x". If the TLV is not there at all
then it means "I don't want to be a root at all, unless there are no
other volunteers and I happen to be the lowest MAC address". Otherwise,
the n RBridges with the highest ( root priority | MAC ) get chosen.

<sanjay> And is this "n" derived from the lowest n seen from the "I can
support n trees" message from rbridge TLVs. ?

So, the TLV inside rbridge LSP could contain 2 things 
1 -- "my priority for being a tree root is x". 
2 -- "I can support n trees"

If both of these are absent, we could choose 1 tree, and the rbridge
with lowest MAC address is the root of that single tree.

-Sanjay

----- Original Message -----
From: "Gray, Eric" <[email-masked]>
Date: Wednesday, November 1, 2006 11:51 am
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between
com putation and optimality of delivery

> Radia,
> 
> 	There are three problems with this proposal: 1) the general
problem 
> associated with having options, 2) the fact that it is not consistent 
> with the idea of trying to utilize links more fully if the approach 
> may require traffic to traverse the same links more than one time, and

> 3) there is nothing about a low MAC address that has anything to do 
> with the suitability of a particular RBridge to act as the root for a 
> shared tree.
> 
> 	I think there are other ways to allow for an optional server for

> broadcast/multicast/flooding distribution than to complicate the TRILL

> protocol with optional implementation alternatives like this proposal 
> seems to suggest.  Part of the complication - at a minimum - is the 
> need to provide for a neogitation mechanism with one or more tunable 
> parameters for determing a primary, and one or more secondary, roots 
> for the shared tree.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked]
> --> [[email-masked]] On Behalf Of Radia Perlman
> --> Sent: Wednesday, November 01, 2006 1:43 PM
> --> To: [email-masked]
> --> Subject: [rbridge] Compromise proposal---allowing tradeoff between

> --> computation and optimality of delivery
> --> 
> --> There is understandable nervousness about the need to compute 
> --> per-ingress trees for every RBridge, and optimality of delivery.
> --> I actually was dubious about whether people *really* wanted to 
> --> have to compute per-ingress trees.
> --> 
> --> Here's a proposal that will allow tradeoff between overhead of 
> --> computation and optimality of delivery. If people really want they

> --> can have RBridges compute trees rooted at every RBridge. Or they 
> --> can have all multicast delivered on a single shared tree.
> --> Or anything in
> --> between.
> --> I'm arbitrarily picking the zero configuration option being a 
> --> single tree.
> --> 
> --> The new shim format allows the ingress RBridge to specify the 
> --> distribution tree for multicast, by putting into the "egress 
> --> RBridge"
> --> field a tree rooted at at the specified RBridge.
> --> 
> --> In this proposal, by default, the only tree that will be computed 
> --> is a single shared tree rooted at the RBridge with smallest MAC 
> --> address. Let's say
> that--> RBridge has nickname "71". By specifying 71 as egress
> RBridge in
> --> a multicast packet, the delivery path will be via the
> bidirectional--> tree rooted at 71.
> --> 
> --> An RBridge can be configured to demand that it, too, be the
> root of
> --> a tree, and it informs the other RBridges with a flag in its link 
> --> state packet.
> --> 
> --> So now we have a subset of RBridges that can be used as roots of 
> --> trees, because they have specified that in their link state 
> --> packet.
> --> Let's say that RBridges with nicknames 11, 15, 71, 222, and 259
> all--> have announced that they want to be roots of trees.
> --> 
> --> Then an ingress RBridge, say R2, with nickname 11, can send a
> --> multicast/unknown destination packet with "ingress"=11 (its own)
> --> and "egress"=11 (because it said it wanted to be a root). 
> --> Or it could
> --> choose any of the other potential ones (15, 71, 222, 259).
> --> 
> --> Likewise, an ingress RBridge, say R3, with nickname 13, who has
> --> not requested to be the root of a tree, can specify only
> --> the trees 11, 15, 71, 222, 259. Note it cannot specify 
> --> "13", since we
> --> are assuming it has not requested that all RBridges 
> --> calculate a tree 
> --> rooted at itself.
> --> 
> --> If no RBridges are configured to say they want to be the root,
> --> then only a single tree will get computed---the one rooted
> --> at 71.
> --> 
> --> So the zero configuration option is a single shared tree 
> --> (still filtered
> --> based on IP multicast announcements and VLANs) rooted at 
> --> the RBridge with
> --> smallest MAC address. But by configuration, more and more 
> optimality--> can be introduced by having RBridges compute more trees.
> --> 
> --> Radia
> --> 
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Thu, 02 Nov 2006 08:17:24 -0500
From: Russ White <[email-masked]>
To: Silvano Gai <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	computation and optimality of delivery
Status: RO
Content-Length: 3728

I support this as well.... We need to sort the signaling out, somehow.

:-)

Russ

Silvano Gai wrote:
> Radia,
> 
> This is a great proposal,
> I fully support it
> 
> -- Silvano
> 
>> -----Original Message-----
>> From: [email-masked] [mailto:[email-masked]]
> On
>> Behalf Of Radia Perlman
>> Sent: Wednesday, November 01, 2006 10:43 AM
>> To: [email-masked]
>> Subject: [rbridge] Compromise proposal---allowing tradeoff between
>> computation and optimality of delivery
>>
>> There is understandable nervousness about the need to compute
>> per-ingress trees for every RBridge, and optimality of delivery.
>> I actually was dubious about whether people *really* wanted
>> to have to compute per-ingress trees.
>>
>> Here's a proposal that will allow tradeoff between overhead of
>> computation and optimality of delivery. If people really want
>> they can have RBridges compute trees rooted at every RBridge. Or they
>> can have all multicast delivered on a single shared tree. Or anything
> in
>> between.
>> I'm arbitrarily picking the zero configuration option being a single
> tree.
>> The new shim format allows the ingress RBridge to specify the
>> distribution tree for multicast, by putting into the "egress RBridge"
>> field a tree rooted at at the specified RBridge.
>>
>> In this proposal, by default, the only tree that will be computed is a
>> single shared
>> tree rooted at the RBridge with smallest MAC address. Let's say that
>> RBridge has nickname "71". By specifying 71 as egress RBridge in
>> a multicast packet, the delivery path will be via the bidirectional
>> tree rooted at 71.
>>
>> An RBridge can be configured to demand that it, too, be the root of
>> a tree, and it informs the other RBridges with a flag in its link
> state
>> packet.
>>
>> So now we have a subset of RBridges that can be used as roots of
> trees,
>> because
>> they have specified that in their link state packet.
>> Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all
>> have announced that they want to be roots of trees.
>>
>> Then an ingress RBridge, say R2, with nickname 11, can send a
>> multicast/unknown destination packet with "ingress"=11 (its own)
>> and "egress"=11 (because it said it wanted to be a root). Or it could
>> choose any of the other potential ones (15, 71, 222, 259).
>>
>> Likewise, an ingress RBridge, say R3, with nickname 13, who has
>> not requested to be the root of a tree, can specify only
>> the trees 11, 15, 71, 222, 259. Note it cannot specify "13", since we
>> are assuming it has not requested that all RBridges calculate a tree
>> rooted at itself.
>>
>> If no RBridges are configured to say they want to be the root,
>> then only a single tree will get computed---the one rooted
>> at 71.
>>
>> So the zero configuration option is a single shared tree (still
> filtered
>> based on IP multicast announcements and VLANs) rooted at the RBridge
> with
>> smallest MAC address. But by configuration, more and more optimality
>> can be introduced by having RBridges compute more trees.
>>
>> Radia
>>
>> _______________________________________________
>> rbridge mailing list
>> [email-masked]
>> http://mailman.postel.org/mailman/listinfo/rbridge
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

- --
[email-masked] CCIE <>< Grace Alone

Content-class: urn:content-classes:message
Date: Thu, 2 Nov 2006 01:03:04 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] On Nick-Names
Status: RO
Content-Length: 4267

Details on choosing a nickname are in the expired
draft-bryant-perlman-trill-pwe-encap-00. I'll paste them below

Donald

   Each RBridge chooses its own nickname.  However, each RBridge is also
   responsible for ensuring that its nickname is unique.  If R1 chooses
   nickname x, and R1 discovers, through receipt of R2's LSP, that R2
   has also chosen x, then the RBridge with the lower system ID keeps
   the nickname, and the other one must choose a new nickname.

   If two RBridge domains merge, then there might be a lot of nickname
   collisions for a short time, but as soon as each side receives the
   link state packets of the other, the RBridges that need to change
   nicknames will quickly become aware of this, and choose new nicknames
   that do not, to the best of their ability, collide with any existing
   nicknames.

   To minimize the probability of nickname collisions, each RBridge
   chooses its nickname randomly from the set of assigned nicknames.
   Alternatively, we could use some sort of hash algorithm (such as the
   bottom 19 bits of the MD5 of the RBridge's system ID), to choose the
   first nickname, and then if there is a collision, go to the next 19
   bits of the MD5, and so on, until all 128 bits of the MD5 hash are
   exhausted, in which case the RBridge hashes its own system ID again,
   this time together with the constant "1".

   There is no reason for all RBridges to use the same algorithm for
   choosing nicknames.  Picking them at random, or using a hash, are an
   attempt to avoid collisions when the network starts up, but that is
   only an optimization.  Even if all RBridges used the same algorithm,
   say as a worst case, they all start with "1" and count up
   sequentially until they find an uncontested nickname, the network
   will eventually stabilize.  And once it is stable, nicknames should
   remain stable even as routers go up or down.

   To minimize the probability of a new RBridge usurping a nickname
   already in use, an RBridge should wait to acquire the link state
   database from a neighbor before it announces its own nickname.

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Wednesday, November 01, 2006 9:58 PM
To: Gray, Eric
Cc: [email-masked]
Subject: Re: [rbridge] On Nick-Names

I thought the spec did say how to choose nicknames.

I think it should be done based on choosing them at random, (rather than
some substring of the MAC address) and if someone with higher priority
asks for the same nickname you did, you have to choose a different one. 
Priority is
based on lower MAC address.

It will converge more quickly if the nickname space is not very densely
used of course. But I really think that people are not talking about
building campuses with more than 1000 RBridges, so with 16 bits it
wouldn't be densely assigned.

I don't care what size the nickname is. 16 bits seemed to align nicely,
but as I said, I don't care.

Radia

Gray, Eric wrote:

>Folks,
>
>Another thing to consider in potentially reducing the size of the 
>RBridge ID name space is that reducing the number of bits also 
>increases the probability of "name collisions" during the process of 
>nick-name negotiation - further complicating the RBridge interactions 
>by increasing the probability that "name collisions" will result in 
>multiple retries.
>
>Last I heard, the protocol specification was going to spell out how 
>nick-names would be negotiated.  As I understand it, the plan was to 
>assert a nick-name based on some substring of the MAC-derived system 
>ID.  Since this is at least 48 bits (with perhaps fewer bits relevantly

>significant), a reduction to 19 bits was felt to introduce a collision 
>probability that is not too bad.
>
>Do people feel that collisions are likely to remain rare if the name 
>space is reduced to 16 bits?  IMO, that may be an unreasonable 
>assumption...
>
>--
>Eric
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Wed, 01 Nov 2006 18:57:58 -0800
From: Radia Perlman <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] On Nick-Names
Status: RO
Content-Length: 1760

I thought the spec did say how to choose nicknames.

I think it should be done based on choosing them at random, (rather than 
some substring
of the MAC address) and if someone with higher priority
asks for the same nickname you did, you have to choose a different one. 
Priority is
based on lower MAC address.

It will converge more quickly if the nickname space is not very densely 
used of course. But I really
think that people are not talking about building campuses with more than 
1000 RBridges, so
with 16 bits it wouldn't be densely assigned.

I don't care what size the nickname is. 16 bits seemed to align nicely, 
but as I said, I don't care.

Radia

Gray, Eric wrote:

>Folks,
>
>Another thing to consider in potentially reducing the size of 
>the RBridge ID name space is that reducing the number of bits
>also increases the probability of "name collisions" during the
>process of nick-name negotiation - further complicating the
>RBridge interactions by increasing the probability that "name
>collisions" will result in multiple retries.
>
>Last I heard, the protocol specification was going to spell
>out how nick-names would be negotiated.  As I understand it,
>the plan was to assert a nick-name based on some substring of
>the MAC-derived system ID.  Since this is at least 48 bits
>(with perhaps fewer bits relevantly significant), a reduction
>to 19 bits was felt to introduce a collision probability that
>is not too bad.
>
>Do people feel that collisions are likely to remain rare if 
>the name space is reduced to 16 bits?  IMO, that may be an
>unreasonable assumption...
>
>--
>Eric
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 18:19:28 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 45506

Eric,

In the spirit of making progress the compromise I can accept is: 
"Ethernet: In this document the term "Ethernet" is used to represent
both IEEE 802.3 and its bridging component as described in IEEE 802.1D
and IEEE 802.1Q"

I am also OK if you want to say something like: "any IEEE 802 Local Area
Network that provides an Ethernet service will automatically be able to
take advantage of and be usable by TRILL"

Fell free to improve my English.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 9:46 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
> drafts/draft-ietf-trill-rbridge-arch-01.txt
> 
> Silvano,
> 
> 	I think that there may be a compromise we can arrive at here.
> 
> 	I propose changing the defintion of "Ethernet" to read:
> 
> 'Ethernet: In this document the term "Ethernet" is used to represent
>  Ethernet-like and/or Ethernet-equivalent technologies - explicitly
>  including 802.3 [802.3 ref], 802.1Q [802.Q ref] and other closely
>  related LAN technologies, and NOT explicitly excluding any other
>  Ethernet-like and/or Ethernet-equivalent technology that exists, or
>  may be developed in the future.'
> 
> 	Using this definition should clarify that I am not necessarily
> using the term in the way that some people may feel it should be used,
> while clearly stating what I am using the term to mean.  This should
> also reduce your concern that I am apprently equating Ethernet and
> 802 in general.  It also satisfies my intention to be inclusive.
> 
> 	How does this sound?
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 1:21 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> -arch-01.txt
> -->
> -->
> --> Eric,
> -->
> --> I disagree.
> -->
> --> I don't think it is wise for TRILL to redefine the term Ethernet.
> --> Ethernet is a term that has a well known meaning in the industry.
> --> The original definition is:
> --> Digital Equipment Corporation, Intel, Xerox, The Ethernet,
> --> Version 2.0,
> --> November 1982.
> --> Which has been then standardized by IEEE 802.3.
> -->
> --> To speak about other IEEE 802 standards that are alive and
> --> used, IEEE
> --> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet
> --> Ring Working)
> --> have nothing to do with Ethernet.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Tuesday, October 31, 2006 2:44 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] Comments on:
http://www.ietf.org/internet-
> --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> >
> --> > Silvano,
> --> >
> --> > 	To be perfectly frank, I am unaware of any reason not to
> include
> --> > token ring or any other obsolete form of "Ethernet equivalent
> --> technology"
> --> > - this is one of the reason to focus on the SHIM as
> --> separate from any
> --> > specific encapsulation above or below the SHIM.
> --> >
> --> > 	If you want to check it against all 802 activities,
that's
> fine.
> --> > I would suggest, however, that even though people are
> --> realistically
> --> not
> --> > going to implement most of the hairy/scary versions in an
> --> RBridge, I
> --> do
> --> > not know of a good reason to exclude them at this point.
> --> In abstract,
> --> > it is certainly possible that people will be able to work out
> --> specifics
> --> > of implementation - if and when they decide to do so.
> --> >
> --> > 	After all, we (the industry) have been building
translation
> --> bridges
> --> > for these technologies for decades.
> --> >
> --> > 	However, I am open to scoping the architecture to apply
only
> to
> --> a
> --> > limited subset of 802 technologies, if that is what would
> --> make people
> --> > happy...
> --> >
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: Silvano Gai [mailto:[email-masked]]
> --> > --> Sent: Tuesday, October 31, 2006 5:34 PM
> --> > --> To: Gray, Eric
> --> > --> Cc: [email-masked]
> --> > --> Subject: RE: [rbridge] Comments on:
> --> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> > --> -arch-01.txt
> --> > -->
> --> > -->
> --> > --> Eric,
> --> > -->
> --> > --> A quick reply:
> --> > --> Are you telling me that the term Ethernet includes Token
Ring,
> --> Token
> --> > --> Bus, DQDB?
> --> > -->
> --> > --> This is what you are doing when you say that Ethernet
> --> is IEEE 802
> --> > --> instead of IEEE 802.3.
> --> > -->
> --> > --> This is NOT a terminology issue. If the term Ethernet means
> --> > --> 802 I need
> --> > --> to check the operation of TRILL against all the 802
> --> technologies.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> > -----Original Message-----
> --> > --> > From: Gray, Eric [mailto:[email-masked]]
> --> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
> --> > --> > To: Silvano Gai
> --> > --> > Cc: [email-masked]
> --> > --> > Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-
> --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> > --> >
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 4> an RBridge must be also able to send
> --> two copies of a
> --> > --> > --> unicast/multicast/broadcast packet on the same
> --> port when it
> --> > --> > --> acts as a designated RBridge (one copy is
> --> encapsulated, the
> --> > --> > --> other not).
> --> > --> > -->
> --> > --> >
> --> > --> > This, I think, refers to the immediately preceding
> --> text in the
> --> > --> > architecture:
> --> > --> >
> --> > --> >         Forwarding information is derived from the
> --> combination
> --> of
> --> > --> >         attached MAC address learning, snooping of
> --> > --> multicast-related
> --> > --> >         protocols (e.g. - IGMP), and routing
> --> > --> advertisements and path
> --> > --> >         computations using the link-state routing
protocol.
> --> > --> >
> --> > --> > While your comment is a reasonable one - although
> --> potentially
> --> > --> > implementation specific - it does not appear to
> --> have any bearing
> --> > --> > on this text.
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 5> here there is some confusion between
> --> 802 and 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > This  refers (I believe) to the immeditately preceding
text:
> --> > --> >
> --> > --> >         The following terminology is defined in
> --> other documents.
> --> A
> --> > --> brief
> --> > --> >         definition is included in this section for
> --> > --> convenience and -
> --> > --> in
> --> > --> >         some cases - to remove any ambiguity in how the
> --> > --> term may be
> --> > --> used
> --> > --> >         in this document, as well as derivative documents
> --> > --> intended to
> --> > --> >         specify components, protocol, behavior and
> --> encapsulation
> --> > --> >         relative to the architecture specified in
> --> this document.
> --> > --> >
> --> > --> >         o  802: IEEE Specification for the Ethernet
> --> architecture,
> --> > --> i.e.,
> --> > --> >            including hubs and bridges.
> --> > --> >
> --> > --> > In this text, I explicitly state that these terms
> --> are defined
> --> > --> elsewhere.
> --> > --> > I am also trying to use the most generic definition
> --> of Ethernet
> --> > --> possible.
> --> > --> >
> --> > --> > The reason for this is that the problem statement does
> --> > --> not restrict
> --> > --> the
> --> > --> > solution to 802.3.
> --> > --> >
> --> > --> > There is some confusion in referring to 802.3 in
> --> any case: we
> --> > --> explicitly
> --> > --> > want to include 802.1Q - as well as all of its
> --> variations and
> --> > --> extensions.
> --> > --> >
> --> > --> > Consequently, we define the term Ethernet in the broadest
> --> possible
> --> > --> sense.
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > -->        o  Bridge Spanning Tree (BST): an Ethernet (L2,
> --> 802.1D)
> --> > --> > -->           forwarding protocol based on the topology
> --> > --> of a spanning
> --> > --> > tree.
> --> > --> > -->
> --> > --> > --> Sgai 6> I have never seen the acronym BST,
> --> everyone use STP.
> --> > --> > -->
> --> > --> >
> --> > --> > I do not know if this term is used in any of the other
> --> documents,
> --> > --> > but it is not used in this one.  Unless someone
> --> objects, I am
> --> only
> --> > --> > too happy to remove it from this document.
> --> > --> >
> --> > --> > From a historical perspective, this was defined this way
> --> > --> originally
> --> > --> > because we were re-using the term spanning tree instead
> --> > --> of IRT.  It
> --> > --> > was causing amazing communication difficulties, so
> --> we came up
> --> with
> --> > --> > the term IRT.  Now we don't need to differentiate BST.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (Sgai 5) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
> --> > --> multiple ports
> --> > --> which
> --> > --> > -->
> --> > --> > --> sgai 8> for Hub is better to reference 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (Sgai 5) above.  By the
> --> > --> definition we
> --> > --> > provide in this document, Ethernet is defined
> --> broadly to include
> --> > --> > 802 technologies.  This is reasonable, because the term
was
> --> stolen
> --> > --> > by IEEE from a technology stolen from a satellite
> --> communication
> --> > --> > protocol.  Ironic that 802.3 does not include wireless,
all
> --> things
> --> > --> > considered.  Certainly the term "Ethernet" should...
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Node: a device with an L2 (MAC) address
> --> > --> that sources
> --> > --> and/or
> --> > --> > -->            sinks L2 frames.
> --> > --> > -->
> --> > --> > --> Sgai 9> The IEEE term is "station".
> --> > --> > -->
> --> > --> >
> --> > --> > However, we in the IETF are more familiar with the
> --> term "node."
> --> > --> >
> --> > --> > This is hardly a significant issue.  if people agree that
> --> > --> we should
> --> > --> > use the term "station" as opposed to "node", then I will
> --> > --> change it.
> --> > --> >
> --> > --> > Note that we should be consistent in this usage, if we
> --> > --> decide to do
> --> > --> > yet another terminology evolution.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Segment: an Ethernet link, either a single
> --> physical
> --> > --> link or
> --> > --> > -->            emulation thereof (e.g., via hubs) or a
> --> > --> logical link or
> --> > --> > -->            emulation thereof (e.g., via bridges).
> --> > --> > -->
> --> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
> --> > --> > -->
> --> > --> >
> --> > --> > I agree, however this is the definition we agreed on here.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Subnet, Ethernet: a single segment,
> --> or a set of
> --> > --> segments
> --> > --> > -->            interconnected by a CRED (see
> --> section 2.2); in
> --> the
> --> > --> latter
> --> > --> > -->
> --> > --> > --> sgai 11> There is no concept of subnet in IEEE.
> --> Subnet is
> --> > --> typically
> --> > --> > --> an IP subnet, and, even if it is common to have
> --> one subnet
> --> per
> --> > --> LAN,
> --> > --> > --> this is not the only possibility. Pragmatically
> --> IP subnets
> --> and
> --> > --> > --> Ethernet LAN are unrelated concepts.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, we are defining this term for use in this
> --> > --> document.  Does its
> --> > --> > use (not its definition) cause confusion or ambiguity?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            case, the subnet may or may not be
> --> equivalent to
> --> a
> --> > --> single
> --> > --> > -->            segment. Also a subnet may be
> --> referred to as a
> --> > --> broadcast
> --> > --> > -->            domain or LAN. By definition, all
> --> nodes within an
> --> > --> Ethernet
> --> > --> > -->            Subnet (broadcast domain or LAN) must have
L2
> --> > --> connectivity
> --> > --> > -->            with all other nodes in the same
> --> Ethernet subnet.
> --> > --> > -->
> --> > --> > -->         o  TRILL: Transparent Interconnect over Lots
> --> > --> of Links -
> --> > --> the
> --> > --> > -->            working group and working name for the
> --> > --> problem domain
> --> > --> to be
> --> > --> > -->            addressed in this document.
> --> > --> > -->
> --> > --> > -->         o  Unicast Forwarding: forwarding methods
> --> > --> that apply to
> --> > --> frames
> --> > --> > -->            with unicast destination MAC addresses.
> --> > --> > -->
> --> > --> > -->         o  Unknown Destination - a destination
> --> for which a
> --> > --> receiving
> --> > --> > -->            device has no filtering database entry.
> --> > --> Destination
> --> > --> (layer
> --> > --> > -->
> --> > --> > --> sgai 12> the stations receive the unknown
> --> unicast and have
> --> > --> filtering
> --> > --> > --> information, only the bridges don't. I propose to
> --> > --> replace device
> --> > --> with
> --> > --> > --> bridge.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, it is the intention to provide as broad a
> --> definition as
> --> > --> possible
> --> > --> > without introducing confusion or ambiguity.  An end node
> --> > --> (or station)
> --> > --> > has - in a sense - a filtering database (it's mine, or
> --> > --> it's for the
> --> > --> bit
> --> > --> > bucket).
> --> > --> >
> --> > --> > We need to explicitly include 802.1D forwarding devices
> --> > --> and RBridges.
> --> > --> >
> --> > --> > However, the definition should specify "forwarding
> --> device" - as
> --> > --> opposed
> --> > --> > to just "receiving device."
> --> > --> >
> --> > --> > I will change that.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            2) addresses are typically "learned"
> --> by (layer 2)
> --> > --> > forwarding
> --> > --> > -->            devices via a process commonly referred to
> --> > --> as "bridge
> --> > --> > learning".
> --> > --> > -->
> --> > --> > --> Sgai 13> in IEEE, the term used is "learning" instead
> --> > --> of "bridge
> --> > --> > learning"
> --> > --> > -->
> --> > --> >
> --> > --> > However, the term defined in this document is
> --> "bridge learning."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  VLAN: Virtual Local Area Network. VLANs in
> --> > --> general fall
> --> > --> > into
> --> > --> > -->            two categories: link (or port)
> --> specific VLANs and
> --> > --> tagged
> --> > --> > -->            VLANs. In the former case, all frames
> --> > --> forwarded and all
> --> > --> > -->            directly connected nodes are assumed to be
> --> > --> part of a
> --> > --> single
> --> > --> > -->            VLAN.  In the latter case, VLAN tagged
> --> > --> frames are used
> --> > --> to
> --> > --> > -->            distinguish which VLAN each frame is
intended
> --> for.
> --> > --> > -->
> --> > --> > --> Sgai 14> This definition is not completely correct, I
> --> prefer:
> --> > --> > -->
> --> > --> > --> VLAN technology introduces the following three
> --> basic types
> --> of
> --> > --> frame:
> --> > --> > --> a) Untagged frames;
> --> > --> > --> b) Priority-tagged frames; and
> --> > --> > --> c) VLAN-tagged frames.
> --> > --> > -->
> --> > --> > --> An untagged frame or a priority-tagged frame does not
> --> > --> carry any
> --> > --> > --> identification of the VLAN to which it belongs. Such
> --> > --> frames are
> --> > --> > --> classified as belonging to a particular VLAN based on
> --> > --> parameters
> --> > --> > --> associated with the receiving Port, or, through
> --> proprietary
> --> > --> extensions
> --> > --> > --> to IEEE 802.1Q standard, based on the data content of
> --> > --> the frame
> --> > --> (e.g.,
> --> > --> > --> MAC Address, layer 3 protocol ID, etc.).
> --> > --> > -->
> --> > --> > --> A VLAN-tagged frame carries an explicit
> --> > --> identification of the VLAN
> --> > --> to
> --> > --> > --> which it belongs; i.e., it carries a tag header
> --> that carries
> --> a
> --> > --> non-
> --> > --> > null
> --> > --> > --> VID. Such a frame is classified as belonging to a
> --> > --> particular VLAN
> --> > --> > based
> --> > --> > --> on the value of the VID that is included in the tag
> --> > --> header. The
> --> > --> > presence
> --> > --> > --> of the tag header carrying a non-null VID means that
> --> > --> some other
> --> > --> > device,
> --> > --> > --> either the originator of the frame or a
> --> VLAN-aware Bridge,
> --> has
> --> > --> mapped
> --> > --> > --> this frame into a VLAN and has inserted the
> --> appropriate VID.
> --> > --> > -->
> --> > --> >
> --> > --> > So, you're getting into the details of the
> --> technology and - in
> --> > --> particular
> --> > --> > the encapsulation.  I will expand the definition to
> --> include a
> --> > --> possibility
> --> > --> > that other criteria may be used to define a "VLAN port" -
> --> although
> --> > --> this is
> --> > --> > isomorphic to a logical model in which a device
> --> > --> implementation uses
> --> > --> some
> --> > --> > criteria to decide that a subset of the traffic received
> --> > --> on a specific
> --> > --> > physical port is to be forwarded as if received on a
> --> > --> specific logical
> --> > --> > port.
> --> > --> >
> --> > --> > The key point in this definition is that a VLAN is a
> --> > --> "Virtual LAN" -
> --> > --> > meaning
> --> > --> > it consists of a subset of the physical and L2
connectivity
> --> > --> corresponding
> --> > --> > to
> --> > --> > a "logical LAN."  The intent is to "rise above" the
> --> technological
> --> > --> > approaches
> --> > --> > and encapsulations to establish a generic definition that
> --> > --> is loosely
> --> > --> tied
> --> > --> > to
> --> > --> >
> --> > --> > ways that this generic definition is actually implemented.
> --> > --> >
> --> > --> > Again, bearing in mind the way that the term is
> --> defined, does
> --> the
> --> > --> usage of
> --> > --> > the term cause confusion or ambiguity?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Forwarding Table (CFT): the per-hop
> --> forwarding
> --> > --> table
> --> > --> > -->            populated by the RBridge Routing Protocol;
> --> > --> forwarding
> --> > --> > within
> --> > --> > -->            the CRED is based on a lookup of the
> --> CRED Transit
> --> > --> Header
> --> > --> > -->            (CTH) encapsulated within the
> --> outermost received
> --> L2
> --> > --> header.
> --> > --> > -->            The outermost L2 encapsulation in this
> --> > --> case includes
> --> > --> the
> --> > --> > -->            source MAC address of the immediate
> --> > --> upstream RBridge
> --> > --> > -->            transmitting the frame and destination MAC
> --> > --> address of
> --> > --> the
> --> > --> > -->            receiving RBridge for use in the unicast
> --> forwarding
> --> > --> case.
> --> > --> > -->
> --> > --> > --> Sgai 15> In section 7 of
> --> > --> > -->
> --> > -->
> --> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
> --> > --> > 00.txt
> --> > --> > --> we proposed that when two rbridges are
> --> connected by a point
> --> to
> --> > --> point
> --> > --> > --> link the outer MAC addresses may be set to a
> --> > --> predefined value in
> --> > --> > --> transmission and ignored in reception.
> --> > --> > -->
> --> > --> >
> --> > --> > I'm not sure how your proposal intends to determine that
> --> > --> a link is in
> --> > --> > fact point-to-point and does not just look that way.
> --> > --> >
> --> > --> > I prefer to use the same encapsulation in all cases where
it
> --> will
> --> > --> work.
> --> > --> >
> --> > --> > The optimization associated with using some form of
> --> > --> null-encapsulation
> --> > --> > is of dubious value, given that it may not be possible to
> --> > --> be certain a
> --> > --> > point-to-point link is - and will remain - in fact a
> --> > --> point-to-point
> --> > --> > link.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CFT-IRT: a forwarding table used for
> --> propagation
> --> of
> --> > --> > -->            broadcast, multicast or flooded
> --> frames along the
> --> > --> Ingress
> --> > --> > -->            RBridge Tree (IRT).
> --> > --> > -->
> --> > --> > --> Sgai 16> is it a forwarding table or is it a
> --> > --> filtering database.
> --> > --> Since
> --> > --> > --> the "miss" behavior is to flood, I see it as a
> --> > --> filtering database.
> --> > --> > -->
> --> > --> >
> --> > --> > What state was "miss" behavior from - Hawaii?  :-)
> --> > --> >
> --> > --> > It is analogous to a filtering database entry, but it is
not
> --> that.
> --> > --> >
> --> > --> > Clearly there are more things in this world than can be
> --> classified
> --> > --> > in this taxonomy.  However, given these choices, it is a
> --> > --> forwarding
> --> > --> > table.
> --> > --> >
> --> > --> > This is not a misbehavior, in that the same "base" tree
> --> > --> is used for
> --> > --> > broadcast and multicast traffic as well as flooded
> --> > --> traffic.  It may
> --> > --> > be arguable that flooding is a misbehavior, but I
> --> seem to recall
> --> > --> > that people still see it as a necessary evil.
> --> > --> >
> --> > --> > It is also not "miss" behavior (as in "cache miss") in
> --> > --> the multicast
> --> > --> > and broadcast case, either.
> --> > --> >
> --> > --> > I believe the definition is quite correct and easy to
> --> understand,
> --> > --> > provided you're not reading it with preconceived
> --> misconceptions
> --> > --> > about its meaning.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Transit Header (CTH): a 'shim'
> --> header that
> --> > --> > encapsulates
> --> > --> > -->            the ingress L2 frame and persists
> --> throughout the
> --> > --> transit of
> --> > --> > a
> --> > --> >
> --> > --> > -->            CRED, which is further encapsulated within
> --> > --> a hop-by-hop
> --> > --> L2
> --> > --> > -->            header (and trailer). The hop-by-hop L2
> --> > --> encapsulation
> --> > --> in
> --> > --> > this
> --> > --> >
> --> > --> > -->            case includes the source MAC address of
> --> > --> the immediate
> --> > --> > -->            upstream RBridge transmitting the frame
> --> > --> and destination
> --> > --> MAC
> --> > --> > -->            address of the receiving RBridge -
> --> at least in
> --> the
> --> > --> unicast
> --> > --> > -->            forwarding case.
> --> > --> > -->
> --> > --> > --> Sgai 17> is this true also for unknown unicast?
> --> > --> > -->
> --> > --> >
> --> > --> > That is something that will be (may be already)
> --> decided in the
> --> > --> protocol
> --> > --> > specification.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Transit Table (CTT): a table that maps
> --> ingress
> --> > --> frame
> --> > --> > L2
> --> > --> > -->            destinations to egress RBridge
> --> addresses, used to
> --> > --> determine
> --> > --> > -->            encapsulation of ingress frames for
> --> transit of
> --> the
> --> > --> CRED.
> --> > --> > -->
> --> > --> > -->         o  Cooperating RBridges - those RBridges
> --> > --> within a single
> --> > --> > -->            Ethernet Subnet (broadcast domain or LAN)
> --> > --> not having
> --> > --> been
> --> > --> > -->            configured to ignore each other. By
> --> default, all
> --> > --> RBridges
> --> > --> > -->            within a single Ethernet subnet will
> --> cooperate
> --> with
> --> > --> each
> --> > --> > -->            other. It is possible for implementations
> --> > --> to allow for
> --> > --> > -->            configuration that will restrict
> --> > --> "cooperation" between
> --> > --> an
> --> > --> > -->            RBridge and an apparent neighboring
> --> RBridge.  One
> --> > --> reason
> --> > --> > why
> --> > --> > -->            this might occur is if the trust model
> --> > --> that applies in
> --> > --> a
> --> > --> > -->            particular deployment imposes a need for
> --> > --> configuration
> --> > --> of
> --> > --> > -->            security information.  By default no such
> --> > --> configuration
> --> > --> is
> --> > --> > -->            required however - should it be used in
> --> > --> any specific
> --> > --> > scenario
> --> > --> > -->
> --> > --> > -->            - it is possible (either deliberately or
> --> > --> inadvertently)
> --> > --> to
> --> > --> > -->            configure neighboring RBridges so
> --> that they do
> --> not
> --> > --> > cooperate.
> --> > --> > -->
> --> > --> > -->            In the remainder of this document,
> --> all RBridges
> --> are
> --> > --> assumed
> --> > --> > -->            to be in a cooperating (default)
> --> configuration.
> --> > --> > -->
> --> > --> > --> Sgai 18> can RBridges cooperate in groups, e.g. four
> --> Rbridges
> --> > --> > connected
> --> > --> > --> to a LAN cooperating two and two?
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.  There may be reasons why this might be done
> --> deliberately,
> --> > --> however
> --> > --> > - even in the absence of any "proof of concept"
> --> > --> justification - it is
> --> > --> a
> --> > --> > really good idea to design the protocol to be robust in
> --> > --> cases where a
> --> > --> > set of RBridges may be (mis)configured in such a way as
> --> > --> to be unable
> --> > --> to
> --> > --> > discover each other.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Ingress RBridge Tree: a tree
> --> computed for each
> --> edge
> --> > --> RBridge
> --> > --> > -->            and potentially for each VLAN in which that
> --> RBridge
> --> > --> > -->
> --> > --> > --> sgai 19> why for each VLAN? I got the
> --> impression that there
> --> > --> > --> was a single tree that was pruned differently for
> --> > --> different VLANs.
> --> > --> > -->
> --> > --> >
> --> > --> > Pruning may also take place at the ingress, if - for
> --> > --> example - it has
> --> > --> a
> --> > --> > subset of interfaces that are not connected to any
> --> egress for
> --> > --> particular
> --> > --> > VLANs.  It is a small point but, in such cases, there is
in
> --> effect
> --> > --> more
> --> > --> > than one IRT even at the ingress.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            participates - for delivery of broadcast,
> --> > --> multicast and
> --> > --> > -->            flooded frames from that RBridge to all
> --> > --> relevant egress
> --> > --> > -->            RBridges. This is the point-to-multipoint
> --> > --> delivery tree
> --> > --> > used
> --> > --> > -->            by an ingress RBridge to deliver
> --> > --> multicast, broadcast
> --> > --> or
> --> > --> > -->            flooded traffic.
> --> > --> > -->
> --> > --> > --> Sgai 20> the current version of the proposal
> --> speaks about a
> --> > --> multicast
> --> > --> > --> address, not point-to-point.
> --> > --> > -->
> --> > --> >
> --> > --> > I did not say "point-to-point" (look again).
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  LPT: Learned Port Table. See
> --> Filtering Database.
> --> > --> > -->
> --> > --> > --> Sgai 21> not proper terminology, I would use
> --> > --> "filtering database"
> --> > --> > --> everywhere.
> --> > --> > -->
> --> > --> >
> --> > --> > I am happy to remove this if there is no objection
> --> to my doing
> --> so.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 22> I wired port is Ehernet, i.e. IEEE 802.3, a
> --> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (sgai 8) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 23> they learn because STP guarantees
> --> > --> symmetrical forwarding
> --> > --> > -->
> --> > --> >
> --> > --> > This (apparently) refers to the immeditately preceding
text:
> --> > --> >
> --> > --> >         Conventional bridges contain a learned port table
> --> > --> (LPT), or
> --> > --> >         filtering database, and a spanning tree table
> --> > --> (STT). The LPT
> --> > --> >         allows a bridge to avoid flooding all received
> --> > --> frames, as is
> --> > --> >         typical for a hub or repeater. The bridge learns
> --> > --> which nodes
> --> > --> are
> --> > --> >         accessible from a particular port by assuming
> --> > --> bi-directional
> --> > --> >         consistency:
> --> > --> >
> --> > --> > I'm not sure how picking at the peculiarities of
> --> STP behavior is
> --> > --> > relevant to this description.  STP results in a
> --> single spanning
> --> > --> > tree where each link is bi-directional.  This
> --> ensures that the
> --> > --> > MAC frames are forwarded in a bi-directionally consistent
> --> fashion.
> --> > --> >
> --> > --> > To replace this text with yours is to provide less
> --> information.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 24> active ports -> forwarding ports
> --> > --> > -->
> --> > --> >
> --> > --> > "Active ports" was the exact wording suggested to me.  In
> --> > --> context for
> --> > --> > this working group "active ports" is more meaningful than
> --> > --> "forwarding
> --> > --> > ports."  For people not used to STP-speak, "forwarding
> --> > --> port" might be
> --> > --> > used to discriminate from a "code port."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 25> there is no STT, there is a state associated
> --> > --> with each
> --> > --> port
> --> > --> > --> that can be: disabled, blocking, listening,
> --> learning, and
> --> > --> forwarding
> --> > --> > -->
> --> > --> >
> --> > --> > Other than the issue with terminology, is this text
> --> wrong?  I am
> --> > --> fairly
> --> > --> > sure that different implementations handle the "port
state"
> --> > --> information
> --> > --> > in different ways, and I am also reasonably sure that a
> --> > --> "table" such
> --> > --> as
> --> > --> > the one described here is one of the ways it might be
done.
> --> > --> >
> --> > --> > However, I agree with your assertion that this is the way
> --> > --> that it is
> --> > --> > usually talked about in an IEEE context, so -
> --> unless there are
> --> > --> specific
> --> > --> > objections - I can change the wording to be consistent
> --> > --> with what you
> --> > --> > suggest.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 26> disabled -> blocking
> --> > --> > -->
> --> > --> >
> --> > --> > I can make this change as well.  However, from the
> --> > --> perspective of what
> --> > --> > we are trying to do, "disabled" is potentially a more
> --> > --> correct term.
> --> > --> It
> --> > --> > is certainly more intuitively correct, outside of a
> --> > --> strictly IEEE/STP
> --> > --> > context.
> --> > --> >
> --> > --> > Symmetry is maintained in STP by blocking ports/links
> --> > --> bi-directionally.
> --> > --> > In such cases, a port is effectively disabled for bridges
> --> > --> at either
> --> > --> end
> --> > --> > of the link for which a port is blocked, is it not?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 27> I repeat a comment that I have made to other
> --> > --> documents: "
> --> > --> > --> The discussion about VLAN needs to be much more
> --> > --> extensive. It is
> --> > --> clear
> --> > --> > --> from the mailing list discussion that VLANs can be
> --> > --> used inside the
> --> > --> > --> packet or in the Ethernet encapsulation of TRILL.
> --> > --> These are two
> --> > --> > --> different kinds of VLANs and their requirement need
> --> > --> to be stated
> --> > --> > --> separately. Q in Q needs also to be discussed. I
> --> > --> propose to define
> --> > --> > inner
> --> > --> > --> and outer VLANs (with reference to the position of
> --> > --> the tag in the
> --> > --> > frame."
> --> > --> > --> Here I think we are talking about outer VLANs
> --> > --> > -->
> --> > --> >
> --> > --> > I responded to this in separate mail.  I wait to hear
> --> > --> other opinions
> --> > --> on
> --> > --> > this subject.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 28> IMO all RBridges must be ingress RBridges,
> --> > --> at least to
> --> > --> > support
> --> > --> > --> inband management, e.g. SNMP.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > In order to ensure symmetry with RBridges not
> --> > --> participating in STP,
> --> > --> there
> --> > --> > MUST be a designated RBridge that does all of the
> --> sending and
> --> > --> receiving
> --> > --> > of native encapsulated frames on a LAN segment.
> --> > --> >
> --> > --> > Any RBridge the loses the "Designated RBridge"
> --> election cannot
> --> be
> --> > --> either
> --> > --> > an ingress or an egress for that LAN segment.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 29> same as above
> --> > --> > -->
> --> > --> >
> --> > --> > Same as above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 30> I think the previous definition is not
needed.
> --> > --> > -->
> --> > --> >
> --> > --> > This appears to refer to:
> --> > --> >
> --> > --> >         o  Local RBridge - the RBridge that forms and
> --> > --> maintains the
> --> > --> CFT-
> --> > --> >            IRT entry (or entries) under discussion. The
> --> > --> local RBridge
> --> > --> >            may be an Ingress RBridge, or an egress
> --> RBridge with
> --> > --> respect
> --> > --> >            to any set of entries in the CFT-IRT.
> --> > --> >
> --> > --> > This defintion is needed.  It is subsequently used
> --> in at least 4
> --> > --> places.
> --> > --> > When discussing the behavior of a specific RBridge
> --> > --> relative to a peer,
> --> > --> > it is convenient to define the term "local RBridge."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 31> why is it zero or more, if an RBridge
> --> exists, it
> --> must
> --> > --> have
> --> > --> > --> a an IRT, I haven't seen any discussion to support
> --> > --> multiple IRTs.
> --> > --> > -->
> --> > --> >
> --> > --> > This was answered previously on the mailing list.
> --> > --> Briefly, zero or
> --> > --> > more is correct, given that an RBridge may not have
> --> > --> forwarding entries
> --> > --> > for frames it has received.  In these cases, a frame is
> --> > --> not forwarded.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 32> I don't understand this. Since the current
> --> > --> proposal uses
> --> > --> a
> --> > --> > --> multicast MAC address, what is needed is a bit map
> --> > --> for each IRT
> --> > --> that
> --> > --> > --> says which ports are blocking and which are
> --> > --> forwarding. You are
> --> > --> > --> basically building a ST using ISIS.
> --> > --> > -->
> --> > --> >
> --> > --> > This might be the case for a specific implementation.
> --> > --> Whether it is
> --> > --> > implemented as a "bit-mask" with "non-blocking"
> --> > --> (forwarding) ports, or
> --> > --> > is implemented as a full-blown table is largely dependent
on
> --> what
> --> > --> other
> --> > --> > information the local device requires in order to
> --> > --> properly forwad the
> --> > --> > frame.  If - for example - a device has multiple
> --> > --> different port types,
> --> > --> > it may need to have more information for each port (or
that
> --> > --> information
> --> > --> > may be added later on).
> --> > --> >
> --> > --> > All of these are implementation choices that are
> --> > --> logically represented
> --> > --> > by the table described here.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 33> I don't get the pair.
> --> > --> > -->
> --> > --> >
> --> > --> > Since this immediately follows:
> --> > --> >
> --> > --> >         Each entry would contain an indication of
> --> which single
> --> > --> interface
> --> > --> >         a broadcast, multicast or flooded frame would be
> --> > --> forwarded for
> --> > --> >         each (ingress RBridge, egress RBridge) pair.
> --> > --> >
> --> > --> > I don't get what you don't get.
> --> > --> >
> --> > --> > The pair refers to the tuple "(ingress RBridge, egress
> --> RBridge)."
> --> > --> >
> --> > --> > This might be the point at which your earlier point (Sgai
4)
> --> would
> --> > --> make
> --> > --> > sense to insert.  I had logically modeled this in my own
> --> > --> mind as two
> --> > --> > distinct "interfaces" (the reason I use this term, rather
> --> > --> thhan port),
> --> > --> > but I should clarify this.
> --> > --> >
> --> > --> > In any case, the entries are keyed by both ingress and
> --> > --> egress RBridge.
> --> > --> > While there will be entries for only those egress
> --> > --> RBridges where this
> --> > --> > local RBridge is on the shortest path (between the given
> --> > --> ingress and
> --> > --> > egress pair), there will be at most one entry per
> --> any ingress
> --> and
> --> > --> > egress pair.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 34> as a matter of fact each interface is
> --> > --> basically a set of
> --> > --> two
> --> > --> > --> interfaces, a regular one and a tunnel one, and the
> --> > --> > forwarding/blocking
> --> > --> > --> state may be different for the two.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > As per my response to your point (Sgai 28) above, not
> --> > --> every RBridge
> --> > --> has a
> --> > --> > "regular one" as you describe here.
> --> > --> >
> --> > --> > The forwarding/blocking state is not applicable as
> --> > --> RBridges don't do
> --> > --> STP.
> --> > --> >
> --> > --> > For the native interface, fowarding/blocking state is
> --> > --> analogous to the
> --> > --> > "Designated RBridge" election process.
> --> > --> >
> --> > --> > Since this point evidently applies to -
> --> > --> >
> --> > --> >
Entries
> --> would
> --> > --> also
> --> > --> >         contain any required encapsulation information,
> --> > --> etc. required
> --> > --> >         for forwarding on a given interface, and toward a
> --> > --> corresponding
> --> > --> >         specific egress RBridge.
> --> > --> >
> --> > --> > - your point, and my response, are related to the point
> --> > --> (and response)
> --> > --> > above (Sgai 33), and I will try to clarify this
> --> part as well.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 35> this protocol must be designed to avoid
> --> > --> transient loops,
> --> > --> > since
> --> > --> > --> transient loops of multicast/broadcast cause
> --> > --> broadcast storm that
> --> > --> are
> --> > --> > --> highly undesirable.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > The protocol needs to include a provision to prevent
> --> > --> _use_ of links
> --> > --> that
> --> > --> > may connect to transient loops.  Using a link-state
> --> > --> routing protocol
> --> > --> has
> --> > --> > clearly been demostrated to produce transient loops, but
> --> > --> the problem
> --> > --> you
> --> > --> > want to address has to do with using those links.
> --> > --> >
> --> > --> > A state-machine driven mechanism similar to STP might be
> --> > --> the approach
> --> > --> to
> --> > --> > use.
> --> > --> >
> --> > --> > Because we're incorporating TTL in the SHIM, however this
> --> > --> would need
> --> > --> to
> --> > --> > apply only to IRT traffic.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->
> --> > --> > --> Sgai 36> see my previous comment about VLANs
> --> > --> > -->
> --> > --> >
> --> > --> > See my previous responses.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 37> disabled -> blocking.
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (sgai 26) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 38> for multicast/broadcast we also need to
> --> > --> avoid transient
> --> > --> > loops.
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
> --> > --> processes, why
> --> > --> do
> --> > --> > we
> --> > --> > --> want to couple their timers?
> --> > --> > -->
> --> > --> >
> --> > --> > I am not suggesting "coupling their timers."  I am
> --> saying that
> --> the
> --> > --> value
> --> > --> > chosen for a timer (if one is used) to determine when it
> --> > --> is reasonable
> --> > --> to
> --> > --> > start RBridge peer discovery should take into
> --> account the time
> --> it
> --> > --> takes
> --> > --> > for the local spanning tree resolution.
> --> > --> >
> --> > --> > I feel the reason for this is self-evident but, just to
> --> > --> clarify, think
> --> > --> > about the process we're planning to use to determine
RBridge
> --> > --> nick-names.
> --> > --> > If we start this too early, we will be re-starting it
> --> > --> many times as we
> --> > --> > "hear from" new RBridge peers when the connecting links go
> --> active
> --> > --> after
> --> > --> > local bridges go to the forwarding state.  This would
> --> > --> apply only at
> --> > --> the
> --> > --> > system start up as - after that - you are quite correct
> --> > --> in asserting
> --> > --> it
> --> > --> > would be an ongoing process.
> --> > --> >
> --> > --> > Perhaps I should add some words to indicate that a delay
> --> > --> would not be
> --> > --> > necessary if the protocol mechanisms do not introduce
> --> > --> instability as a
> --> > --> > new peer is discovered.  So far, I have not seen any
> --> > --> indication that a
> --> > --> > "race-free" solution to accomplish this has been designed
> --> > --> - or talked
> --> > --> > about.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 40> there is also a requirement to time-out
learnt
> --> > --> information to
> --> > --> > --> maintain the filtering databases.
> --> > --> > -->
> --> > --> >
> --> > --> > There would be, if we were doing that.  Instead,
> --> we're adopting
> --> a
> --> > --> > link-state routing protocol and they tend to have
> --> that covered.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 41> periodically or on demand
> --> > --> > -->
> --> > --> >
> --> > --> > See the response to your point (Sgai 40) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 42> potentially there is an unencapsulated
> --> > --> interface for each
> --> > --> > --> physical interface of the RBridge. It is true that
> --> > --> you can model
> --> > --> all
> --> > --> > --> of them as a single separate logical interface, but
> --> > --> then we need
> --> > --> to
> --> > --> > --> replicate the frame according to a bitmask that tells
on
> --> which
> --> > --> > physical
> --> > --> > --> interface the RBridge is designated.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, your use of a "bitmask" is an implementation
> --> > --> choice as opposed
> --> > --> > to a logical model.
> --> > --> >
> --> > --> > As you observe, I do "model all of them as a single
> --> > --> separate logical
> --> > --> > interface" and if you want to "replicate the frame
> --> according to
> --> a
> --> > --> > bitmask that tells on which physical interface the
> --> RBridge is
> --> > --> > designated" - you're absolutely free to do so.
> --> > --> >
> --> > --> > Personally, I think this is far too much implementation
> --> > --> stuff for a
> --> > --> > protocol specification, let alone an architecture
document.
> --> > --> >
> --> > --> > -->
> --> > --> > --> Sgai 43> can we clarify that this means "drop BPDUs".
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.
> --> > --> >
> --> > --> > -- [snip --
> --> > -->
> -->

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 18:06:35 -0800
From: "Silvano Gai" <[email-masked]>
To: <[email-masked]>
Subject: [rbridge] Should we optimize the common case?
Status: RO
Content-Length: 1444

With 16 bit addresses the current TRILL overhead over Ethernet is 20
bytes. If we want to expand the RBridge addresses, it we will go to
22-24 bytes.

What customers are telling us is that they will deploy RBridges by
creating an RBridge backbone in which all the links will be 10GE.

They will connect regular bridges and host to the periphery of this
backbone. 

They will not mix backbone ports with access ports, because this screws
up management, traffic engineering, debugging, and troubleshooting.
Regular network design, easy to understand, is very important. Ports are
cheap, labor is expensive.

I am totally convinced that this will account for 90+ % of TRILL
deployment. 

I am wondering if it makes sense to have a solution highly optimized for
such an environment.

For example we can put the egress/ingress RBridge addresses in the outer
MAC addresses and define a TRILL shim header that contains 1 byte of hop
limit and 1 byte reserved. For this common case we will get:
1) overhead of 16 bytes (4 to 8 bytes lower)
2) nickname = MAC address, i.e no hash collision
3) zero-conf achieved

In the case we need to go over a shared media we will need to add
another Ethernet encapsulation to carry the next hop address, i.e. 14
bytes
- total overhead will be 30 bytes

Summarizing:
- current proposal 20-24 bytes overhead
- new proposal on point to point: 16 bytes
- new proposal on shared media: 30 bytes

Comments?

-- Silvano

From: "Gray, Eric" <[email-masked]>
To: [email-masked]
Date: Wed, 1 Nov 2006 17:59:31 -0500 
Subject: [rbridge] On Nick-Names
Status: RO
Content-Length: 903

Folks,

Another thing to consider in potentially reducing the size of 
the RBridge ID name space is that reducing the number of bits
also increases the probability of "name collisions" during the
process of nick-name negotiation - further complicating the
RBridge interactions by increasing the probability that "name
collisions" will result in multiple retries.

Last I heard, the protocol specification was going to spell
out how nick-names would be negotiated.  As I understand it,
the plan was to assert a nick-name based on some substring of
the MAC-derived system ID.  Since this is at least 48 bits
(with perhaps fewer bits relevantly significant), a reduction
to 19 bits was felt to introduce a collision probability that
is not too bad.

Do people feel that collisions are likely to remain rare if 
the name space is reduced to 16 bits?  IMO, that may be an
unreasonable assumption...

--
Eric

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 17:36:07 -0500 
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 7143

Silvano,

	Radia and I are currently having an off-line discussion 
about what your #3 below means.  I'll have to get back to you
on that.

	In the meantime, I have been assuming that we are using
a link state routing protocol - at least in part - because of
the built in shortest-path first algorithm.  This is implied 
in your #3.

	Assuming that one might be running IS-IS instances per
VLAN, IS-IS peers being used to support VLANs over RBridges 
do not need to compute Dijkstra (SPF) for all other RBridges.
Just those in the same VLANs, and part of the same LSDB.

 	Note that I am not saying everyone would do this, but -
if people did - then they would be trading RBridge IDs (as 
IS-IS instances) to achieve simplified per-VLAN LSDBs.

	By the way, "computing trees" is - IMO - not what is
being done.  It is only a way to view what is actually
being done.  Each IS-IS node has to know the shortest path
to all other IS-IS nodes in any case.  What it does in the
process of "constructing an IRT", is:

1)	compute this same information for all IS-IS instances 
	in the same LSDB,
2)	make a note of which RBridges it is on the shortest
	path between,
3)	create IRT entries for these RBridges

	This creates an analog of a point-to-multipoint tree 
because the RBridge can then retrieve all entries for any
frame based on the ingress RBridge ID in that frame (this
applies ONLY to multicast, broadcast and flooded frames).
The RBridge then forwards a copy of the received frame for
each of these entries.

	I think if you model it this way, you will find that 
the computational complexity is less than you think it is
- especially if the problem is broken up (by, for example,
using per-VLAN instancing).

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 5:02 PM
--> To: Gray, Eric; Russ White
--> Cc: Radia Perlman; [email-masked]
--> Subject: RE: [rbridge] New shim header proposal---without 
--> F-tag field
--> 
--> 
--> Eric, 
--> 
--> This has nothing to do with the connectivity.
--> I simply read:
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -protocol-00
--> .txt
--> 
--> tell me where I am wrong:
--> 1) there is one IRT per RBridge
--> 2) there is one ISIS LSA per RBridge, i.e. # of RBridge
--> 3) Each RBridge needs to compute Djikstra for all the IRTs, 
--> plus one for
--> the core instance, therefore the number of Djikstra 
--> computation is (# of
--> RBridge + 1)
--> 
--> The total CPU effort to compute Djikstra is therefore (# of 
--> Rbridge + 1)
--> on a LSA database # of Rbridges.
--> 
--> This has nothing to do with the connectivity/topology among the
--> RBridges.
--> 
--> You should like a lot the last proposal of Radia, because 
--> it elegantly
--> solves this problem for you.
--> 
--> -- Silvano
--> 
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 1:11 PM
--> > To: Silvano Gai; Russ White
--> > Cc: Gray, Eric; Radia Perlman; [email-masked]
--> > Subject: RE: [rbridge] New shim header proposal---without 
--> F-tag field
--> > 
--> > Silvano,
--> > 
--> > 	I did not actually say that we need to support half a
--> > million RBridges, I simply said that we may need to support
--> > more than 32K (or even 64K), consequently I do not support a
--> > reduction in the "name space" to 16 bits.
--> > 
--> > 	It would never work out to an order N^2 connectivity
--> > in any case, so this concern - IMO - comes under the heading
--> > of FUD.  If every port needed to be connected to every other
--> > port, then there would not be a need to have VLANs, and -
--> > hence - no need to have separate per-VLAN instances.  In a
--> > real world application where VLANs are used to connect large
--> > numbers of multi-port switches, only a few ports on a few
--> > switches typically end up connected to each individual VLAN.
--> > Some exceptions would occur, but they would be exceptions.
--> > Thus per-VLAN connectivity would be a sparse partial mesh, or
--> > VLANs would not be used.
--> > 
--> > 	This is in fact part of the justification for having
--> > per-VLAN IS-IS instances.  Trauma to part of the network is
--> > only going to impact on routing convergence for the IS-IS
--> > instances participating in affected VLANs.
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Wednesday, November 01, 2006 11:55 AM
--> > --> To: Russ White
--> > --> Cc: Gray, Eric; Radia Perlman; [email-masked]
--> > --> Subject: RE: [rbridge] New shim header proposal---without
--> > --> F-tag field
--> > -->
--> > -->
--> > --> What is a stretch is 32K trees of 32K nodes, which is what
--> > --> you need if
--> > --> you want to deploy the current TRILL proposal with 
--> 32K RBridges.
--> > -->
--> > --> Eric says that we need to accommodate half a million RBridges.
--> > --> Half a million tree of half a million nodes is unfeasible.
--> > -->
--> > --> If we want to support such a large number of Rbridges, we
--> > --> need to modify
--> > --> the current Trill proposal, reducing the number of trees
--> > --> that need to be
--> > --> computed.
--> > -->
--> > --> Agreed?
--> > -->
--> > --> -- Silvano
--> > -->
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Russ White [mailto:[email-masked]]
--> > --> > Sent: Wednesday, November 01, 2006 8:35 AM
--> > --> > To: Silvano Gai
--> > --> > Cc: Gray, Eric; Radia Perlman; [email-masked]
--> > --> > Subject: Re: [rbridge] New shim header proposal---without
--> > --> F-tag field
--> > --> >
--> > --> > -----BEGIN PGP SIGNED MESSAGE-----
--> > --> > Hash: SHA1
--> > --> >
--> > --> >
--> > --> > >> 	I don't think there is consensus yet that we
--> > --> only need 16 bits
--> > --> > >> for RBridge IDs.
--> > --> > >
--> > --> > > With 16 bits, using 1 bit to indicate unicast, we 
--> can have 32K
--> > --> switches.
--> > --> > > According to the current definition of TRILL, there is
--> > --> the need to
--> > --> run
--> > --> > > Djikstra on a database with 32K records, one time 
--> for the core
--> > --> instance
--> > --> > > and 32K times for the IRTs. This is clearly out of
--> > --> reach even for
--> > --> the
--> > --> > > most powerful CPU.
--> > --> >
--> > --> > ?? Perhaps 32k trees is a stretch, but 32k nodes in a
--> > --> tree? I don't
--> > --> > think that's really a stretch on today's processors, from
--> > --> the scaling
--> > --> > work I've seen done in IS-IS.
--> > --> >
--> > --> > :-)
--> > --> >
--> > --> > Russ
--> > --> >
--> > --> > - --
--> > --> > [email-masked] CCIE <>< Grace Alone
--> > --> >
--> > --> > -----BEGIN PGP SIGNATURE-----
--> > --> > Version: GnuPG v1.4.2.2 (MingW32)
--> > --> > Comment: Using GnuPG with Mozilla - 
--> http://enigmail.mozdev.org
--> > --> >
--> > --> > 
--> iD8DBQFFSMypER27sUhU9OQRAqLwAJ9FLN2YNP2mrB6i0ZcV1fxLzAT0hgCfYHYj
--> > --> > 6mJCA68nQLjCD8US9nRZZag=
--> > --> > =kwzq
--> > --> > -----END PGP SIGNATURE-----
--> > -->
--> 

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 14:16:32 -0800
From: "Silvano Gai" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between computation and optimality of delivery
Status: RO
Content-Length: 3055

Radia,

This is a great proposal,
I fully support it

-- Silvano

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
On
> Behalf Of Radia Perlman
> Sent: Wednesday, November 01, 2006 10:43 AM
> To: [email-masked]
> Subject: [rbridge] Compromise proposal---allowing tradeoff between
> computation and optimality of delivery
> 
> There is understandable nervousness about the need to compute
> per-ingress trees for every RBridge, and optimality of delivery.
> I actually was dubious about whether people *really* wanted
> to have to compute per-ingress trees.
> 
> Here's a proposal that will allow tradeoff between overhead of
> computation and optimality of delivery. If people really want
> they can have RBridges compute trees rooted at every RBridge. Or they
> can have all multicast delivered on a single shared tree. Or anything
in
> between.
> I'm arbitrarily picking the zero configuration option being a single
tree.
> 
> The new shim format allows the ingress RBridge to specify the
> distribution tree for multicast, by putting into the "egress RBridge"
> field a tree rooted at at the specified RBridge.
> 
> In this proposal, by default, the only tree that will be computed is a
> single shared
> tree rooted at the RBridge with smallest MAC address. Let's say that
> RBridge has nickname "71". By specifying 71 as egress RBridge in
> a multicast packet, the delivery path will be via the bidirectional
> tree rooted at 71.
> 
> An RBridge can be configured to demand that it, too, be the root of
> a tree, and it informs the other RBridges with a flag in its link
state
> packet.
> 
> So now we have a subset of RBridges that can be used as roots of
trees,
> because
> they have specified that in their link state packet.
> Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all
> have announced that they want to be roots of trees.
> 
> Then an ingress RBridge, say R2, with nickname 11, can send a
> multicast/unknown destination packet with "ingress"=11 (its own)
> and "egress"=11 (because it said it wanted to be a root). Or it could
> choose any of the other potential ones (15, 71, 222, 259).
> 
> Likewise, an ingress RBridge, say R3, with nickname 13, who has
> not requested to be the root of a tree, can specify only
> the trees 11, 15, 71, 222, 259. Note it cannot specify "13", since we
> are assuming it has not requested that all RBridges calculate a tree
> rooted at itself.
> 
> If no RBridges are configured to say they want to be the root,
> then only a single tree will get computed---the one rooted
> at 71.
> 
> So the zero configuration option is a single shared tree (still
filtered
> based on IP multicast announcements and VLANs) rooted at the RBridge
with
> smallest MAC address. But by configuration, more and more optimality
> can be introduced by having RBridges compute more trees.
> 
> Radia
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 14:14:40 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Last Call comment on: http://www.ietf.org/internet-drafts/draft-ietf-trill-prob-01.txt
Status: RO
Content-Length: 6903

Eric,

If you want to use node instead of station that is fine, I agree that
this is common.

I am against the term cache, because it is so overloaded, unless you
explain what it really means.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 11:59 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Last Call comment on:
http://www.ietf.org/internet-
> drafts/draft-ietf-trill-prob-01.txt
> 
> Silvano,
> 
> 	I think that - with some minor exceptions - these are quite
> reasonable terminology change proposals over-all.  In particular,
> the idea of using frames to represent L2 PDUs is one that has been
> suggested before.
> 
> 	I suspect that we will need to expand the definition, or give
> a definition, for the term "node" to indicate that this term is
> meant to include the conceptual idea of a "station" as defined for
> the IEEE.
> 
> 	On the term "cache," this is generally a well understood term
> in this context and whether or not filtering database is more correct
> is something that may have to be considered on a case-by-case basis.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Saturday, October 28, 2006 10:59 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Last Call comment on:
> --> http://www.ietf.org/internet-drafts/draft-ietf-trill-prob-01.txt
> -->
> -->
> --> Per Eric request, this is the terminology changes I
> --> propose, to align
> --> these documents with a layer two terminology:
> -->
> --> Packet -> frame
> --> In IEEE 802.1D the term packet means something at higher
> --> level (IP and
> --> above)
> -->
> --> Autolearning -> learning
> -->
> --> Cache -> filtering database
> --> The term filtering database is consistently used to
> --> indicate that a hit
> --> on the database limit the frame propagation, while a miss causes
> --> flooding (this is a different behavior from a forwarding
> --> database, where
> --> a miss causes a drop).
> -->
> --> I am not sure about the term "Port autolearning" used in
> --> the draft, can
> --> you clarify the meaning?
> -->
> --> IEEE speaks about stations, this may be the most
> --> controversial change,
> --> but we need to settle on a single term.
> --> Node -> station
> --> Endnode -> station
> --> Host -> station
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Friday, October 27, 2006 10:59 AM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] Last Call comment on:
> --> http://www.ietf.org/internet-
> --> > drafts/draft-ietf-trill-prob-01.txt
> --> >
> --> > Silvano, et al,
> --> >
> --> > 	 Please see below.
> --> >
> --> > -- [SNIP] --
> --> > --> I don't think it is acceptable to have temporary loop for
> --> broadcast
> --> > --> multicast, even if they are mitigated by TTL. An interlock
> --> mechanism
> --> > --> similar to ST must be used for multicast/broadcast.
> --> > -->
> --> > --> I ask for a strong requirement that says: "TRILL MUST avoid
> --> > --> multicast/broadcast storms"
> --> >
> --> > I completely agree with this and I have been assuming an
> --> "interlock"
> --> > function would be applied - especially for non-unicast or
unknown
> --> > frames.
> --> >
> --> > In retrospect, it is obvious that this should be
> --> explicitly spelled
> --> > out.
> --> >
> --> > -->
> --> > --> Sgai 2> ST provides symmetrical forwarding, i.e. the
> --> path from A
> --> to B
> --> > is
> --> > --> the reverse of the path from B to A. Is this a requirement
for
> --> TRILL?
> --> >
> --> > I believe this has certainly been assumed in discussions, but it
> --> > might not have been deemed necessary to explicitly include this
> --> > as a "requirement" in the PA&S document.  It is a behavior that
> --> > applies to existing 802.1D bridges and we are required to be
> --> > compatible with 802.1D bridges.
> --> >
> --> > -->
> --> > --> Sgai 3> the terminology used in this draft is not the
> --> one used in
> --> IEEE
> --> > --> standards. This makes it difficult to understand what
certain
> --> > sentences
> --> > --> really mean. Concepts like autolearning and caches
> --> are not IEEE
> --> > concepts.
> --> >
> --> > This observation has been made before.  Can you make specific
> --> > proposals for textual changes (replace "XYZ" with "LMNOP")?
> --> >
> --> > -->
> --> > --> Sgai 4> There is no mention of the applicability of other
> --> important
> --> > IEEE
> --> > --> standards/WG/Study Groups, e.g.
> --> > --> - 802.3ad-2000, Link Aggregation.
> --> > --> - 802.1ah - Provider Backbone Bridges
> --> > --> - 802.1aq - Shortest Path Bridging
> --> > --> - 802.1au - Congestion Notification
> --> > --> - 802.1ad - Provider Bridges
> --> > --> - 802.1AE - MAC Security
> --> > --> - 802.3ar - Congestion Management Task Force.
> --> > --> - 802.3as - Frame Expansion Task Force.
> --> > --> I think this document needs to clearly state the
> --> position of the
> --> WG
> --> > with
> --> > --> respect to these projects.
> --> > -->
> --> > --> Sgai 5> I also think there need to be a mention of the
> --> applicability
> --> > of
> --> > --> important industrial efforts:
> --> > --> - NIC Teaming
> --> > --> - uplinkfast
> --> > --> - split-MLT
> --> > --> - Q in Q
> --> > --> All these are widely deployed in all
> --> datacenters/enterprises. I
> --> think
> --> > --> this document needs to clearly state the position of
> --> the WG with
> --> > respect
> --> > --> to these de fact standards.
> --> >
> --> > Why?  Is it not sufficient to say that the solution must
> --> be compatible
> --> > with existing technologies without listing them all?
> --> >
> --> > -->
> --> > --> Sgai 6> Many customers look at TRILL as a backbone
> --> network. They
> --> would
> --> > --> like to connect their current switches to the TRILL
> --> backbone using
> --> > --> Etherchannel  and connecting the member links on different
> --> RBridges
> --> > for
> --> > --> High availability. Is this a requirement? In general
> --> which is the
> --> > --> relation between Etherchannel and TRILL?
> --> >
> --> > These are good questions, touching on at least one of the
> --> issues that
> --> > has been brought up previously (the "wiring closet problem").
> --> >
> --> > I am not sure that the WG has reached consensus on this.
> --> At present,
> --> > there appears to be a distinct "lean" toward simply
> --> listing the set
> --> > of existing deployment scenarios that may not be directly
> --> supported
> --> > using RBridges in a partial-deployment scenario.
> --> >
> --> > -->
> --> > --> Sgai 7> Does TRILL work properly if Ethernet is deployed
with
> --> Pause
> --> > --> enabled?
> --> > -- [SNIP] --
> -->

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 14:01:39 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Russ White" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 4521

Eric, 

This has nothing to do with the connectivity.
I simply read:
http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge-protocol-00
.txt

tell me where I am wrong:
1) there is one IRT per RBridge
2) there is one ISIS LSA per RBridge, i.e. # of RBridge
3) Each RBridge needs to compute Djikstra for all the IRTs, plus one for
the core instance, therefore the number of Djikstra computation is (# of
RBridge + 1)

The total CPU effort to compute Djikstra is therefore (# of Rbridge + 1)
on a LSA database # of Rbridges.

This has nothing to do with the connectivity/topology among the
RBridges.

You should like a lot the last proposal of Radia, because it elegantly
solves this problem for you.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 1:11 PM
> To: Silvano Gai; Russ White
> Cc: Gray, Eric; Radia Perlman; [email-masked]
> Subject: RE: [rbridge] New shim header proposal---without F-tag field
> 
> Silvano,
> 
> 	I did not actually say that we need to support half a
> million RBridges, I simply said that we may need to support
> more than 32K (or even 64K), consequently I do not support a
> reduction in the "name space" to 16 bits.
> 
> 	It would never work out to an order N^2 connectivity
> in any case, so this concern - IMO - comes under the heading
> of FUD.  If every port needed to be connected to every other
> port, then there would not be a need to have VLANs, and -
> hence - no need to have separate per-VLAN instances.  In a
> real world application where VLANs are used to connect large
> numbers of multi-port switches, only a few ports on a few
> switches typically end up connected to each individual VLAN.
> Some exceptions would occur, but they would be exceptions.
> Thus per-VLAN connectivity would be a sparse partial mesh, or
> VLANs would not be used.
> 
> 	This is in fact part of the justification for having
> per-VLAN IS-IS instances.  Trauma to part of the network is
> only going to impact on routing convergence for the IS-IS
> instances participating in affected VLANs.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 11:55 AM
> --> To: Russ White
> --> Cc: Gray, Eric; Radia Perlman; [email-masked]
> --> Subject: RE: [rbridge] New shim header proposal---without
> --> F-tag field
> -->
> -->
> --> What is a stretch is 32K trees of 32K nodes, which is what
> --> you need if
> --> you want to deploy the current TRILL proposal with 32K RBridges.
> -->
> --> Eric says that we need to accommodate half a million RBridges.
> --> Half a million tree of half a million nodes is unfeasible.
> -->
> --> If we want to support such a large number of Rbridges, we
> --> need to modify
> --> the current Trill proposal, reducing the number of trees
> --> that need to be
> --> computed.
> -->
> --> Agreed?
> -->
> --> -- Silvano
> -->
> -->
> --> > -----Original Message-----
> --> > From: Russ White [mailto:[email-masked]]
> --> > Sent: Wednesday, November 01, 2006 8:35 AM
> --> > To: Silvano Gai
> --> > Cc: Gray, Eric; Radia Perlman; [email-masked]
> --> > Subject: Re: [rbridge] New shim header proposal---without
> --> F-tag field
> --> >
> --> > -----BEGIN PGP SIGNED MESSAGE-----
> --> > Hash: SHA1
> --> >
> --> >
> --> > >> 	I don't think there is consensus yet that we
> --> only need 16 bits
> --> > >> for RBridge IDs.
> --> > >
> --> > > With 16 bits, using 1 bit to indicate unicast, we can have 32K
> --> switches.
> --> > > According to the current definition of TRILL, there is
> --> the need to
> --> run
> --> > > Djikstra on a database with 32K records, one time for the core
> --> instance
> --> > > and 32K times for the IRTs. This is clearly out of
> --> reach even for
> --> the
> --> > > most powerful CPU.
> --> >
> --> > ?? Perhaps 32k trees is a stretch, but 32k nodes in a
> --> tree? I don't
> --> > think that's really a stretch on today's processors, from
> --> the scaling
> --> > work I've seen done in IS-IS.
> --> >
> --> > :-)
> --> >
> --> > Russ
> --> >
> --> > - --
> --> > [email-masked] CCIE <>< Grace Alone
> --> >
> --> > -----BEGIN PGP SIGNATURE-----
> --> > Version: GnuPG v1.4.2.2 (MingW32)
> --> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> --> >
> --> > iD8DBQFFSMypER27sUhU9OQRAqLwAJ9FLN2YNP2mrB6i0ZcV1fxLzAT0hgCfYHYj
> --> > 6mJCA68nQLjCD8US9nRZZag=
> --> > =kwzq
> --> > -----END PGP SIGNATURE-----
> -->

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Russ White <[email-masked]>
Date: Wed, 1 Nov 2006 16:11:13 -0500 
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 3343

Silvano,

	I did not actually say that we need to support half a
million RBridges, I simply said that we may need to support
more than 32K (or even 64K), consequently I do not support a
reduction in the "name space" to 16 bits.

	It would never work out to an order N^2 connectivity 
in any case, so this concern - IMO - comes under the heading
of FUD.  If every port needed to be connected to every other
port, then there would not be a need to have VLANs, and -
hence - no need to have separate per-VLAN instances.  In a
real world application where VLANs are used to connect large
numbers of multi-port switches, only a few ports on a few 
switches typically end up connected to each individual VLAN.
Some exceptions would occur, but they would be exceptions.
Thus per-VLAN connectivity would be a sparse partial mesh, or
VLANs would not be used.

	This is in fact part of the justification for having
per-VLAN IS-IS instances.  Trauma to part of the network is
only going to impact on routing convergence for the IS-IS
instances participating in affected VLANs.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:55 AM
--> To: Russ White
--> Cc: Gray, Eric; Radia Perlman; [email-masked]
--> Subject: RE: [rbridge] New shim header proposal---without 
--> F-tag field
--> 
--> 
--> What is a stretch is 32K trees of 32K nodes, which is what 
--> you need if
--> you want to deploy the current TRILL proposal with 32K RBridges.
--> 
--> Eric says that we need to accommodate half a million RBridges.
--> Half a million tree of half a million nodes is unfeasible.
--> 
--> If we want to support such a large number of Rbridges, we 
--> need to modify
--> the current Trill proposal, reducing the number of trees 
--> that need to be
--> computed.
--> 
--> Agreed?
--> 
--> -- Silvano
--> 
--> 
--> > -----Original Message-----
--> > From: Russ White [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 8:35 AM
--> > To: Silvano Gai
--> > Cc: Gray, Eric; Radia Perlman; [email-masked]
--> > Subject: Re: [rbridge] New shim header proposal---without 
--> F-tag field
--> > 
--> > -----BEGIN PGP SIGNED MESSAGE-----
--> > Hash: SHA1
--> > 
--> > 
--> > >> 	I don't think there is consensus yet that we 
--> only need 16 bits
--> > >> for RBridge IDs.
--> > >
--> > > With 16 bits, using 1 bit to indicate unicast, we can have 32K
--> switches.
--> > > According to the current definition of TRILL, there is 
--> the need to
--> run
--> > > Djikstra on a database with 32K records, one time for the core
--> instance
--> > > and 32K times for the IRTs. This is clearly out of 
--> reach even for
--> the
--> > > most powerful CPU.
--> > 
--> > ?? Perhaps 32k trees is a stretch, but 32k nodes in a 
--> tree? I don't
--> > think that's really a stretch on today's processors, from 
--> the scaling
--> > work I've seen done in IS-IS.
--> > 
--> > :-)
--> > 
--> > Russ
--> > 
--> > - --
--> > [email-masked] CCIE <>< Grace Alone
--> > 
--> > -----BEGIN PGP SIGNATURE-----
--> > Version: GnuPG v1.4.2.2 (MingW32)
--> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> > 
--> > iD8DBQFFSMypER27sUhU9OQRAqLwAJ9FLN2YNP2mrB6i0ZcV1fxLzAT0hgCfYHYj
--> > 6mJCA68nQLjCD8US9nRZZag=
--> > =kwzq
--> > -----END PGP SIGNATURE-----
--> 

Date: Wed, 01 Nov 2006 12:35:08 -0800
From: Radia Perlman <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery
Status: RO
Content-Length: 7853

No. I'm talking about a bidirectional tree. Just like with the spanning 
tree computed by legacy bridges,
packets don't traverse links twice. A particular bridge B has a root 
port and other ports for which it is DB.
On the ports for which B is DB, B sends the frame and it travels further 
from the root on those paths.
It's only on the root port that the frame travels towards the root, and 
then when the root
receives the frame, it only sends the frame onto other ports (not the 
one it got it from).

Radia

Gray, Eric wrote:

>If you're assuming a shared tree with a common root (not in the sense
>that STP defines root, but in the sense that an IRT is computed from
>this root to all egress RBridges), then all multicast, broadcast and
>flooded traffic has first to be delivered to this "root" before it
>can be delivered anywhere else.
>
>Is that not what you mean?
>
>If it has to be delivered first to the root, then it is very likely 
>that frames will traverse a link going toward the root, and will use
>one or more of the same link(s) in being delivered to egress RBridges.
>
>--
>Eric
>
>--> -----Original Message-----
>--> From: [email-masked] [mailto:[email-masked]] 
>--> Sent: Wednesday, November 01, 2006 3:19 PM
>--> To: Gray, Eric
>--> Cc: [email-masked]
>--> Subject: Re: [rbridge] Compromise proposal---allowing 
>--> tradeoff between com putation and optimality of delivery
>--> 
>--> 1) Yeah, options are better avoided if possible. But 
>--> they're not too bad as long as there
>--> are reasonable defaults, and no way to screw up by setting 
>--> things differently at different RBridges.
>--> 
>--> 2) Traffic should not traverse any link more than once no 
>--> matter which tree is being used. Or am I confused?
>--> 
>--> 3) Right. Choosing which n RBridges get to be roots based 
>--> on MAC addresses is arbitrary. I just wanted
>--> a simple tie breaker so all the RBridges compute the same 
>--> trees. For DR election there's a priority
>--> field that is used as the most significant byte of the 
>--> address. We could do the same thing here. Rather than
>--> a flag saying "I want to be a root", there can be, say, a 1 
>--> byte TLV in the link state packet saying "my priority
>--> for being a tree root is x". If the TLV is not there at all 
>--> then it means "I don't want to be a root at all, unless
>--> there are no other volunteers and I happen to be the lowest 
>--> MAC address". Otherwise, the n RBridges
>--> with the highest ( root priority | MAC ) get chosen.
>--> 
>--> Radia
>--> 
>--> ----- Original Message -----
>--> From: "Gray, Eric" <[email-masked]>
>--> Date: Wednesday, November 1, 2006 11:51 am
>--> Subject: Re: [rbridge] Compromise proposal---allowing 
>--> tradeoff between	com putation and optimality of delivery
>--> 
>--> > Radia,
>--> > 
>--> > 	There are three problems with this proposal: 1) the general
>--> > problem associated with having options, 2) the fact that 
>--> it is not 
>--> > consistent with the idea of trying to utilize links more fully if 
>--> > the approach may require traffic to traverse the same links more
>--> > than one time, and 3) there is nothing about a low MAC 
>--> address that
>--> > has anything to do with the suitability of a particular RBridge to
>--> > act as the root for a shared tree. 
>--> > 
>--> > 	I think there are other ways to allow for an optional server
>--> > for broadcast/multicast/flooding distribution than to complicate
>--> > the TRILL protocol with optional implementation alternatives like
>--> > this proposal seems to suggest.  Part of the complication - at a
>--> > minimum - is the need to provide for a neogitation mechanism with
>--> > one or more tunable parameters for determing a primary, 
>--> and one or 
>--> > more secondary, roots for the shared tree.
>--> > 
>--> > --
>--> > Eric
>--> > 
>--> > --> -----Original Message-----
>--> > --> From: [email-masked] 
>--> > --> [[email-masked]] On Behalf Of Radia Perlman
>--> > --> Sent: Wednesday, November 01, 2006 1:43 PM
>--> > --> To: [email-masked]
>--> > --> Subject: [rbridge] Compromise proposal---allowing tradeoff 
>--> > --> between computation and optimality of delivery
>--> > --> 
>--> > --> There is understandable nervousness about the need to compute
>--> > --> per-ingress trees for every RBridge, and optimality 
>--> of delivery.
>--> > --> I actually was dubious about whether people *really* wanted
>--> > --> to have to compute per-ingress trees.
>--> > --> 
>--> > --> Here's a proposal that will allow tradeoff between overhead of
>--> > --> computation and optimality of delivery. If people really want
>--> > --> they can have RBridges compute trees rooted at every 
>--> > --> RBridge. Or they
>--> > --> can have all multicast delivered on a single shared tree. 
>--> > --> Or anything in 
>--> > --> between.
>--> > --> I'm arbitrarily picking the zero configuration option being 
>--> > --> a single tree.
>--> > --> 
>--> > --> The new shim format allows the ingress RBridge to specify the
>--> > --> distribution tree for multicast, by putting into the 
>--> > --> "egress RBridge"
>--> > --> field a tree rooted at at the specified RBridge.
>--> > --> 
>--> > --> In this proposal, by default, the only tree that will be 
>--> > --> computed is a 
>--> > --> single shared
>--> > --> tree rooted at the RBridge with smallest MAC address. 
>--> Let's say 
>--> > that--> RBridge has nickname "71". By specifying 71 as egress 
>--> > RBridge in
>--> > --> a multicast packet, the delivery path will be via the 
>--> > bidirectional--> tree rooted at 71.
>--> > --> 
>--> > --> An RBridge can be configured to demand that it, too, be the 
>--> > root of
>--> > --> a tree, and it informs the other RBridges with a flag in 
>--> > --> its link state
>--> > --> packet.
>--> > --> 
>--> > --> So now we have a subset of RBridges that can be used as 
>--> > --> roots of trees, 
>--> > --> because
>--> > --> they have specified that in their link state packet.
>--> > --> Let's say that RBridges with nicknames 11, 15, 71, 
>--> 222, and 259 
>--> > all--> have announced that they want to be roots of trees.
>--> > --> 
>--> > --> Then an ingress RBridge, say R2, with nickname 11, can send a
>--> > --> multicast/unknown destination packet with 
>--> "ingress"=11 (its own)
>--> > --> and "egress"=11 (because it said it wanted to be a root). 
>--> > --> Or it could
>--> > --> choose any of the other potential ones (15, 71, 222, 259).
>--> > --> 
>--> > --> Likewise, an ingress RBridge, say R3, with nickname 
>--> 13, who has
>--> > --> not requested to be the root of a tree, can specify only
>--> > --> the trees 11, 15, 71, 222, 259. Note it cannot specify 
>--> > --> "13", since we
>--> > --> are assuming it has not requested that all RBridges 
>--> > --> calculate a tree 
>--> > --> rooted at itself.
>--> > --> 
>--> > --> If no RBridges are configured to say they want to be the root,
>--> > --> then only a single tree will get computed---the one rooted
>--> > --> at 71.
>--> > --> 
>--> > --> So the zero configuration option is a single shared tree 
>--> > --> (still filtered
>--> > --> based on IP multicast announcements and VLANs) rooted at 
>--> > --> the RBridge with
>--> > --> smallest MAC address. But by configuration, more and more 
>--> > optimality--> can be introduced by having RBridges 
>--> compute more trees.
>--> > --> 
>--> > --> Radia
>--> > --> 
>--> > --> _______________________________________________
>--> > --> rbridge mailing list
>--> > --> [email-masked]
>--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
>--> > --> 
>--> > _______________________________________________
>--> > rbridge mailing list
>--> > [email-masked]
>--> > http://mailman.postel.org/mailman/listinfo/rbridge
>--> > 
>--> 
>  
>

From: "Gray, Eric" <[email-masked]>
To: [email-masked]
Date: Wed, 1 Nov 2006 15:24:15 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com	 putation and optimality of delivery
Status: RO
Content-Length: 7141

If you're assuming a shared tree with a common root (not in the sense
that STP defines root, but in the sense that an IRT is computed from
this root to all egress RBridges), then all multicast, broadcast and
flooded traffic has first to be delivered to this "root" before it
can be delivered anywhere else.

Is that not what you mean?

If it has to be delivered first to the root, then it is very likely 
that frames will traverse a link going toward the root, and will use
one or more of the same link(s) in being delivered to egress RBridges.

--
Eric

--> -----Original Message-----
--> From: [email-masked] [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 3:19 PM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Compromise proposal---allowing 
--> tradeoff between com putation and optimality of delivery
--> 
--> 1) Yeah, options are better avoided if possible. But 
--> they're not too bad as long as there
--> are reasonable defaults, and no way to screw up by setting 
--> things differently at different RBridges.
--> 
--> 2) Traffic should not traverse any link more than once no 
--> matter which tree is being used. Or am I confused?
--> 
--> 3) Right. Choosing which n RBridges get to be roots based 
--> on MAC addresses is arbitrary. I just wanted
--> a simple tie breaker so all the RBridges compute the same 
--> trees. For DR election there's a priority
--> field that is used as the most significant byte of the 
--> address. We could do the same thing here. Rather than
--> a flag saying "I want to be a root", there can be, say, a 1 
--> byte TLV in the link state packet saying "my priority
--> for being a tree root is x". If the TLV is not there at all 
--> then it means "I don't want to be a root at all, unless
--> there are no other volunteers and I happen to be the lowest 
--> MAC address". Otherwise, the n RBridges
--> with the highest ( root priority | MAC ) get chosen.
--> 
--> Radia
--> 
--> ----- Original Message -----
--> From: "Gray, Eric" <[email-masked]>
--> Date: Wednesday, November 1, 2006 11:51 am
--> Subject: Re: [rbridge] Compromise proposal---allowing 
--> tradeoff between	com putation and optimality of delivery
--> 
--> > Radia,
--> > 
--> > 	There are three problems with this proposal: 1) the general
--> > problem associated with having options, 2) the fact that 
--> it is not 
--> > consistent with the idea of trying to utilize links more fully if 
--> > the approach may require traffic to traverse the same links more
--> > than one time, and 3) there is nothing about a low MAC 
--> address that
--> > has anything to do with the suitability of a particular RBridge to
--> > act as the root for a shared tree. 
--> > 
--> > 	I think there are other ways to allow for an optional server
--> > for broadcast/multicast/flooding distribution than to complicate
--> > the TRILL protocol with optional implementation alternatives like
--> > this proposal seems to suggest.  Part of the complication - at a
--> > minimum - is the need to provide for a neogitation mechanism with
--> > one or more tunable parameters for determing a primary, 
--> and one or 
--> > more secondary, roots for the shared tree.
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked] 
--> > --> [[email-masked]] On Behalf Of Radia Perlman
--> > --> Sent: Wednesday, November 01, 2006 1:43 PM
--> > --> To: [email-masked]
--> > --> Subject: [rbridge] Compromise proposal---allowing tradeoff 
--> > --> between computation and optimality of delivery
--> > --> 
--> > --> There is understandable nervousness about the need to compute
--> > --> per-ingress trees for every RBridge, and optimality 
--> of delivery.
--> > --> I actually was dubious about whether people *really* wanted
--> > --> to have to compute per-ingress trees.
--> > --> 
--> > --> Here's a proposal that will allow tradeoff between overhead of
--> > --> computation and optimality of delivery. If people really want
--> > --> they can have RBridges compute trees rooted at every 
--> > --> RBridge. Or they
--> > --> can have all multicast delivered on a single shared tree. 
--> > --> Or anything in 
--> > --> between.
--> > --> I'm arbitrarily picking the zero configuration option being 
--> > --> a single tree.
--> > --> 
--> > --> The new shim format allows the ingress RBridge to specify the
--> > --> distribution tree for multicast, by putting into the 
--> > --> "egress RBridge"
--> > --> field a tree rooted at at the specified RBridge.
--> > --> 
--> > --> In this proposal, by default, the only tree that will be 
--> > --> computed is a 
--> > --> single shared
--> > --> tree rooted at the RBridge with smallest MAC address. 
--> Let's say 
--> > that--> RBridge has nickname "71". By specifying 71 as egress 
--> > RBridge in
--> > --> a multicast packet, the delivery path will be via the 
--> > bidirectional--> tree rooted at 71.
--> > --> 
--> > --> An RBridge can be configured to demand that it, too, be the 
--> > root of
--> > --> a tree, and it informs the other RBridges with a flag in 
--> > --> its link state
--> > --> packet.
--> > --> 
--> > --> So now we have a subset of RBridges that can be used as 
--> > --> roots of trees, 
--> > --> because
--> > --> they have specified that in their link state packet.
--> > --> Let's say that RBridges with nicknames 11, 15, 71, 
--> 222, and 259 
--> > all--> have announced that they want to be roots of trees.
--> > --> 
--> > --> Then an ingress RBridge, say R2, with nickname 11, can send a
--> > --> multicast/unknown destination packet with 
--> "ingress"=11 (its own)
--> > --> and "egress"=11 (because it said it wanted to be a root). 
--> > --> Or it could
--> > --> choose any of the other potential ones (15, 71, 222, 259).
--> > --> 
--> > --> Likewise, an ingress RBridge, say R3, with nickname 
--> 13, who has
--> > --> not requested to be the root of a tree, can specify only
--> > --> the trees 11, 15, 71, 222, 259. Note it cannot specify 
--> > --> "13", since we
--> > --> are assuming it has not requested that all RBridges 
--> > --> calculate a tree 
--> > --> rooted at itself.
--> > --> 
--> > --> If no RBridges are configured to say they want to be the root,
--> > --> then only a single tree will get computed---the one rooted
--> > --> at 71.
--> > --> 
--> > --> So the zero configuration option is a single shared tree 
--> > --> (still filtered
--> > --> based on IP multicast announcements and VLANs) rooted at 
--> > --> the RBridge with
--> > --> smallest MAC address. But by configuration, more and more 
--> > optimality--> can be introduced by having RBridges 
--> compute more trees.
--> > --> 
--> > --> Radia
--> > --> 
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > --> 
--> > _______________________________________________
--> > rbridge mailing list
--> > [email-masked]
--> > http://mailman.postel.org/mailman/listinfo/rbridge
--> > 
--> 

Date: Wed, 01 Nov 2006 12:19:11 -0800
From: [email-masked]
To: "Gray, Eric" <[email-masked]>
Priority: normal
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery
Status: RO
Content-Length: 5662

1) Yeah, options are better avoided if possible. But they're not too bad as long as there
are reasonable defaults, and no way to screw up by setting things differently at different RBridges.

2) Traffic should not traverse any link more than once no matter which tree is being used. Or am I confused?

3) Right. Choosing which n RBridges get to be roots based on MAC addresses is arbitrary. I just wanted
a simple tie breaker so all the RBridges compute the same trees. For DR election there's a priority
field that is used as the most significant byte of the address. We could do the same thing here. Rather than
a flag saying "I want to be a root", there can be, say, a 1 byte TLV in the link state packet saying "my priority
for being a tree root is x". If the TLV is not there at all then it means "I don't want to be a root at all, unless
there are no other volunteers and I happen to be the lowest MAC address". Otherwise, the n RBridges
with the highest ( root priority | MAC ) get chosen.

Radia

----- Original Message -----
From: "Gray, Eric" <[email-masked]>
Date: Wednesday, November 1, 2006 11:51 am
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between	com putation and optimality of delivery

> Radia,
> 
> 	There are three problems with this proposal: 1) the general
> problem associated with having options, 2) the fact that it is not 
> consistent with the idea of trying to utilize links more fully if 
> the approach may require traffic to traverse the same links more
> than one time, and 3) there is nothing about a low MAC address that
> has anything to do with the suitability of a particular RBridge to
> act as the root for a shared tree. 
> 
> 	I think there are other ways to allow for an optional server
> for broadcast/multicast/flooding distribution than to complicate
> the TRILL protocol with optional implementation alternatives like
> this proposal seems to suggest.  Part of the complication - at a
> minimum - is the need to provide for a neogitation mechanism with
> one or more tunable parameters for determing a primary, and one or 
> more secondary, roots for the shared tree.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: [email-masked] 
> --> [[email-masked]] On Behalf Of Radia Perlman
> --> Sent: Wednesday, November 01, 2006 1:43 PM
> --> To: [email-masked]
> --> Subject: [rbridge] Compromise proposal---allowing tradeoff 
> --> between computation and optimality of delivery
> --> 
> --> There is understandable nervousness about the need to compute
> --> per-ingress trees for every RBridge, and optimality of delivery.
> --> I actually was dubious about whether people *really* wanted
> --> to have to compute per-ingress trees.
> --> 
> --> Here's a proposal that will allow tradeoff between overhead of
> --> computation and optimality of delivery. If people really want
> --> they can have RBridges compute trees rooted at every 
> --> RBridge. Or they
> --> can have all multicast delivered on a single shared tree. 
> --> Or anything in 
> --> between.
> --> I'm arbitrarily picking the zero configuration option being 
> --> a single tree.
> --> 
> --> The new shim format allows the ingress RBridge to specify the
> --> distribution tree for multicast, by putting into the 
> --> "egress RBridge"
> --> field a tree rooted at at the specified RBridge.
> --> 
> --> In this proposal, by default, the only tree that will be 
> --> computed is a 
> --> single shared
> --> tree rooted at the RBridge with smallest MAC address. Let's say 
> that--> RBridge has nickname "71". By specifying 71 as egress 
> RBridge in
> --> a multicast packet, the delivery path will be via the 
> bidirectional--> tree rooted at 71.
> --> 
> --> An RBridge can be configured to demand that it, too, be the 
> root of
> --> a tree, and it informs the other RBridges with a flag in 
> --> its link state
> --> packet.
> --> 
> --> So now we have a subset of RBridges that can be used as 
> --> roots of trees, 
> --> because
> --> they have specified that in their link state packet.
> --> Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 
> all--> have announced that they want to be roots of trees.
> --> 
> --> Then an ingress RBridge, say R2, with nickname 11, can send a
> --> multicast/unknown destination packet with "ingress"=11 (its own)
> --> and "egress"=11 (because it said it wanted to be a root). 
> --> Or it could
> --> choose any of the other potential ones (15, 71, 222, 259).
> --> 
> --> Likewise, an ingress RBridge, say R3, with nickname 13, who has
> --> not requested to be the root of a tree, can specify only
> --> the trees 11, 15, 71, 222, 259. Note it cannot specify 
> --> "13", since we
> --> are assuming it has not requested that all RBridges 
> --> calculate a tree 
> --> rooted at itself.
> --> 
> --> If no RBridges are configured to say they want to be the root,
> --> then only a single tree will get computed---the one rooted
> --> at 71.
> --> 
> --> So the zero configuration option is a single shared tree 
> --> (still filtered
> --> based on IP multicast announcements and VLANs) rooted at 
> --> the RBridge with
> --> smallest MAC address. But by configuration, more and more 
> optimality--> can be introduced by having RBridges compute more trees.
> --> 
> --> Radia
> --> 
> --> _______________________________________________
> --> rbridge mailing list
> --> [email-masked]
> --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 

Date: Wed, 01 Nov 2006 12:05:23 -0800
From: Radia Perlman <[email-masked]>
To: "Sanjay Sane (sanjays)" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between computation and optimality of delivery
Status: RO
Content-Length: 5492

If the header already has "ingress" and "egress" RBridge nicknames for 
unicast, then there
doesn't seem to be a reason to try to have a different nickname to 
identify the tree.
Using the already computed nickname seems simplest.

As for Ayan's questions:
a) can we assume that the list of trees is ordered and consistent:

Yes---that's the idea. The tree is specified by who is the root, and 
there needs to be deterministic
tie breakers so all RBridges calculate the same tree.

b) is it possible to have a TLV that indicates how many trees an RBridge 
is willing to compute

That seems like a good idea, though there needs to be some reasonable 
default so that RBridges
work reasonably well with zero configuration. Should the default be 1 
tree? Or 100?

So to make your proposal clear---each RBridge announces in its link 
state packet "I can support
n trees". The number of trees allowed would be the smallest n announced 
by any RBridge. If
more than n RBridges ask to be roots of trees, then the n RBridges with 
smallest MAC addresses
are roots.

There are other alternatives, similar to the "overloaded" flag. An 
RBridge that can't support
as many trees as requested could set a "overloaded with multicast trees" 
flag, and then
other RBridges could compute trees avoiding that guy. But this seems 
more complicated than
just doing what you suggest.

Radia

Sanjay Sane (sanjays) wrote:

>This proposal sounds good to me, with one exception. 
>
>If we don't expect the number of trees to be equal to the number of
>rbridges, why have the tree identifier from the same number-space as of
>rbridge-nickname ? 
>
>Rbridge nickname space is 16 bits = 64K combinations. Its not practical
>to scale to these many "trees". If the "tree-identifier" space is
>different (say 10 bits - max 1k combinations) than the rbridge nickname
>space, hardware resources can be optimized. 
>
>To optimize the fields in the shim header, its ok to carry this
>tree-identifier in the egress rbridge id field (as per your latest SHIM
>header proposal). 
>
>Yes, this would mean another "dynamic assignment" process to assign the
>"tree-identifier". Whichever rbridge is configured/chosen to become the
>root of a tree, first participates in the "dynamic assignment" process,
>gets itself assigned a "tree-identifier", and then informs the other
>RBridges with some information in its link state packet - indicating 2
>things
>1. flag suggesting it wants to be a root of a tree 
>2. "tree-identifier" to be used for the tree computed with itself as the
>root. 
>
>-Sanjay
>
>
>
>-----Original Message-----
>From: [email-masked] [mailto:[email-masked]] On
>Behalf Of Radia Perlman
>Sent: Wednesday, November 01, 2006 10:43 AM
>To: [email-masked]
>Subject: [rbridge] Compromise proposal---allowing tradeoff between
>computation and optimality of delivery
>
>There is understandable nervousness about the need to compute
>per-ingress trees for every RBridge, and optimality of delivery.
>I actually was dubious about whether people *really* wanted to have to
>compute per-ingress trees.
>
>Here's a proposal that will allow tradeoff between overhead of
>computation and optimality of delivery. If people really want they can
>have RBridges compute trees rooted at every RBridge. Or they can have
>all multicast delivered on a single shared tree. Or anything in between.
>I'm arbitrarily picking the zero configuration option being a single
>tree.
>
>The new shim format allows the ingress RBridge to specify the
>distribution tree for multicast, by putting into the "egress RBridge"
>field a tree rooted at at the specified RBridge.
>
>In this proposal, by default, the only tree that will be computed is a
>single shared tree rooted at the RBridge with smallest MAC address.
>Let's say that RBridge has nickname "71". By specifying 71 as egress
>RBridge in a multicast packet, the delivery path will be via the
>bidirectional tree rooted at 71.
>
>An RBridge can be configured to demand that it, too, be the root of a
>tree, and it informs the other RBridges with a flag in its link state
>packet.
>
>So now we have a subset of RBridges that can be used as roots of trees,
>because they have specified that in their link state packet.
>Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all have
>announced that they want to be roots of trees.
>
>Then an ingress RBridge, say R2, with nickname 11, can send a
>multicast/unknown destination packet with "ingress"=11 (its own) and
>"egress"=11 (because it said it wanted to be a root). Or it could choose
>any of the other potential ones (15, 71, 222, 259).
>
>Likewise, an ingress RBridge, say R3, with nickname 13, who has not
>requested to be the root of a tree, can specify only the trees 11, 15,
>71, 222, 259. Note it cannot specify "13", since we are assuming it has
>not requested that all RBridges calculate a tree rooted at itself.
>
>If no RBridges are configured to say they want to be the root, then only
>a single tree will get computed---the one rooted at 71.
>
>So the zero configuration option is a single shared tree (still filtered
>based on IP multicast announcements and VLANs) rooted at the RBridge
>with smallest MAC address. But by configuration, more and more
>optimality can be introduced by having RBridges compute more trees.
>
>Radia
>
>_______________________________________________
>rbridge mailing list
>[email-masked]
>http://mailman.postel.org/mailman/listinfo/rbridge
>  
>

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 14:58:38 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Last Call comment on: http://www.ietf.org/internet-	drafts/draft-ietf-trill-prob-01.txt
Status: RO
Content-Length: 6086

Silvano,

	I think that - with some minor exceptions - these are quite 
reasonable terminology change proposals over-all.  In particular, 
the idea of using frames to represent L2 PDUs is one that has been 
suggested before. 

	I suspect that we will need to expand the definition, or give
a definition, for the term "node" to indicate that this term is 
meant to include the conceptual idea of a "station" as defined for
the IEEE.

	On the term "cache," this is generally a well understood term
in this context and whether or not filtering database is more correct
is something that may have to be considered on a case-by-case basis.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Saturday, October 28, 2006 10:59 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Last Call comment on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-prob-01.txt
--> 
--> 
--> Per Eric request, this is the terminology changes I 
--> propose, to align
--> these documents with a layer two terminology:
--> 
--> Packet -> frame
--> In IEEE 802.1D the term packet means something at higher 
--> level (IP and
--> above)
--> 
--> Autolearning -> learning
--> 
--> Cache -> filtering database
--> The term filtering database is consistently used to 
--> indicate that a hit
--> on the database limit the frame propagation, while a miss causes
--> flooding (this is a different behavior from a forwarding 
--> database, where
--> a miss causes a drop).
--> 
--> I am not sure about the term "Port autolearning" used in 
--> the draft, can
--> you clarify the meaning?
--> 
--> IEEE speaks about stations, this may be the most 
--> controversial change,
--> but we need to settle on a single term.
--> Node -> station
--> Endnode -> station
--> Host -> station
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Friday, October 27, 2006 10:59 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Last Call comment on:
--> http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-prob-01.txt
--> > 
--> > Silvano, et al,
--> > 
--> > 	 Please see below.
--> > 
--> > -- [SNIP] --
--> > --> I don't think it is acceptable to have temporary loop for
--> broadcast
--> > --> multicast, even if they are mitigated by TTL. An interlock
--> mechanism
--> > --> similar to ST must be used for multicast/broadcast.
--> > -->
--> > --> I ask for a strong requirement that says: "TRILL MUST avoid
--> > --> multicast/broadcast storms"
--> > 
--> > I completely agree with this and I have been assuming an 
--> "interlock"
--> > function would be applied - especially for non-unicast or unknown
--> > frames.
--> > 
--> > In retrospect, it is obvious that this should be 
--> explicitly spelled
--> > out.
--> > 
--> > -->
--> > --> Sgai 2> ST provides symmetrical forwarding, i.e. the 
--> path from A
--> to B
--> > is
--> > --> the reverse of the path from B to A. Is this a requirement for
--> TRILL?
--> > 
--> > I believe this has certainly been assumed in discussions, but it
--> > might not have been deemed necessary to explicitly include this
--> > as a "requirement" in the PA&S document.  It is a behavior that
--> > applies to existing 802.1D bridges and we are required to be
--> > compatible with 802.1D bridges.
--> > 
--> > -->
--> > --> Sgai 3> the terminology used in this draft is not the 
--> one used in
--> IEEE
--> > --> standards. This makes it difficult to understand what certain
--> > sentences
--> > --> really mean. Concepts like autolearning and caches 
--> are not IEEE
--> > concepts.
--> > 
--> > This observation has been made before.  Can you make specific
--> > proposals for textual changes (replace "XYZ" with "LMNOP")?
--> > 
--> > -->
--> > --> Sgai 4> There is no mention of the applicability of other
--> important
--> > IEEE
--> > --> standards/WG/Study Groups, e.g.
--> > --> - 802.3ad-2000, Link Aggregation.
--> > --> - 802.1ah - Provider Backbone Bridges
--> > --> - 802.1aq - Shortest Path Bridging
--> > --> - 802.1au - Congestion Notification
--> > --> - 802.1ad - Provider Bridges
--> > --> - 802.1AE - MAC Security
--> > --> - 802.3ar - Congestion Management Task Force.
--> > --> - 802.3as - Frame Expansion Task Force.
--> > --> I think this document needs to clearly state the 
--> position of the
--> WG
--> > with
--> > --> respect to these projects.
--> > -->
--> > --> Sgai 5> I also think there need to be a mention of the
--> applicability
--> > of
--> > --> important industrial efforts:
--> > --> - NIC Teaming
--> > --> - uplinkfast
--> > --> - split-MLT
--> > --> - Q in Q
--> > --> All these are widely deployed in all 
--> datacenters/enterprises. I
--> think
--> > --> this document needs to clearly state the position of 
--> the WG with
--> > respect
--> > --> to these de fact standards.
--> > 
--> > Why?  Is it not sufficient to say that the solution must 
--> be compatible
--> > with existing technologies without listing them all?
--> > 
--> > -->
--> > --> Sgai 6> Many customers look at TRILL as a backbone 
--> network. They
--> would
--> > --> like to connect their current switches to the TRILL 
--> backbone using
--> > --> Etherchannel  and connecting the member links on different
--> RBridges
--> > for
--> > --> High availability. Is this a requirement? In general 
--> which is the
--> > --> relation between Etherchannel and TRILL?
--> > 
--> > These are good questions, touching on at least one of the 
--> issues that
--> > has been brought up previously (the "wiring closet problem").
--> > 
--> > I am not sure that the WG has reached consensus on this.  
--> At present,
--> > there appears to be a distinct "lean" toward simply 
--> listing the set
--> > of existing deployment scenarios that may not be directly 
--> supported
--> > using RBridges in a partial-deployment scenario.
--> > 
--> > -->
--> > --> Sgai 7> Does TRILL work properly if Ethernet is deployed with
--> Pause
--> > --> enabled?
--> > -- [SNIP] --
--> 

From: "Gray, Eric" <[email-masked]>
To: Radia Perlman <[email-masked]>
Date: Wed, 1 Nov 2006 14:51:34 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between com	putation and optimality of delivery
Status: RO
Content-Length: 4078

Radia,

	There are three problems with this proposal: 1) the general
problem associated with having options, 2) the fact that it is not 
consistent with the idea of trying to utilize links more fully if 
the approach may require traffic to traverse the same links more
than one time, and 3) there is nothing about a low MAC address that
has anything to do with the suitability of a particular RBridge to
act as the root for a shared tree. 

	I think there are other ways to allow for an optional server
for broadcast/multicast/flooding distribution than to complicate
the TRILL protocol with optional implementation alternatives like
this proposal seems to suggest.  Part of the complication - at a
minimum - is the need to provide for a neogitation mechanism with
one or more tunable parameters for determing a primary, and one or 
more secondary, roots for the shared tree.

--
Eric

--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On Behalf Of Radia Perlman
--> Sent: Wednesday, November 01, 2006 1:43 PM
--> To: [email-masked]
--> Subject: [rbridge] Compromise proposal---allowing tradeoff 
--> between computation and optimality of delivery
--> 
--> There is understandable nervousness about the need to compute
--> per-ingress trees for every RBridge, and optimality of delivery.
--> I actually was dubious about whether people *really* wanted
--> to have to compute per-ingress trees.
--> 
--> Here's a proposal that will allow tradeoff between overhead of
--> computation and optimality of delivery. If people really want
--> they can have RBridges compute trees rooted at every 
--> RBridge. Or they
--> can have all multicast delivered on a single shared tree. 
--> Or anything in 
--> between.
--> I'm arbitrarily picking the zero configuration option being 
--> a single tree.
--> 
--> The new shim format allows the ingress RBridge to specify the
--> distribution tree for multicast, by putting into the 
--> "egress RBridge"
--> field a tree rooted at at the specified RBridge.
--> 
--> In this proposal, by default, the only tree that will be 
--> computed is a 
--> single shared
--> tree rooted at the RBridge with smallest MAC address. Let's say that
--> RBridge has nickname "71". By specifying 71 as egress RBridge in
--> a multicast packet, the delivery path will be via the bidirectional
--> tree rooted at 71.
--> 
--> An RBridge can be configured to demand that it, too, be the root of
--> a tree, and it informs the other RBridges with a flag in 
--> its link state
--> packet.
--> 
--> So now we have a subset of RBridges that can be used as 
--> roots of trees, 
--> because
--> they have specified that in their link state packet.
--> Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all
--> have announced that they want to be roots of trees.
--> 
--> Then an ingress RBridge, say R2, with nickname 11, can send a
--> multicast/unknown destination packet with "ingress"=11 (its own)
--> and "egress"=11 (because it said it wanted to be a root). 
--> Or it could
--> choose any of the other potential ones (15, 71, 222, 259).
--> 
--> Likewise, an ingress RBridge, say R3, with nickname 13, who has
--> not requested to be the root of a tree, can specify only
--> the trees 11, 15, 71, 222, 259. Note it cannot specify 
--> "13", since we
--> are assuming it has not requested that all RBridges 
--> calculate a tree 
--> rooted at itself.
--> 
--> If no RBridges are configured to say they want to be the root,
--> then only a single tree will get computed---the one rooted
--> at 71.
--> 
--> So the zero configuration option is a single shared tree 
--> (still filtered
--> based on IP multicast announcements and VLANs) rooted at 
--> the RBridge with
--> smallest MAC address. But by configuration, more and more optimality
--> can be introduced by having RBridges compute more trees.
--> 
--> Radia
--> 
--> _______________________________________________
--> rbridge mailing list
--> [email-masked]
--> http://mailman.postel.org/mailman/listinfo/rbridge
--> 

From: "Gray, Eric" <[email-masked]>
To: "Wadekar, Manoj K" <[email-masked]>
Date: Wed, 1 Nov 2006 14:30:22 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:http://www.ietf.org/internet-drafts/dr		aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 3497

Manoj,

	Note that the proposed revision does not refer to 802, but
offers 802.3 and 802.1Q as specific examples of intentionally 
included "Ethernet-like" technologies.

	Actually, after looking into some IETF-related references, 
I'm not convinced I am "re-defining" the term Ethernet.  What I am
doing, that might be a little unusual, is being specific about how
I am using the term.

	Look, for example, at my reference [10].  This reference is
from 1982, and remains reasonably accurate in part because it does
not attempt to narrow the scope of what it means by "Ethernet."

	An alternative approach is to not define Ethernet in this 
document at all, and replace every instance of the word "Ethernet"
with "Ethernet-like."  I am not very comfortable with that as it
leads to very cumbersome wording, so I would very likely remove
the word "Ethernet" entirely in every case where I feel this can
be done.

	Another alternative is to remove the definition entirely and
continue to use the word "Ethernet" - relying on the fact that a
reasonable person would interpret this in the most general sense.

	In that sense, trying to avoid cumbersome wording has to be
weighed against removing information content.

	As a question for clarification, do you disagree with the
current definition of 802?  I got that directly from comments in
the last round of reviews.

--
Eric

--> -----Original Message-----
--> From: Wadekar, Manoj K [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 1:00 PM
--> To: Gray, Eric; Silvano Gai
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments 
--> on:http://www.ietf.org/internet-drafts/dr 
--> aft-ietf-trill-rbridge-arch-01.txt
--> 
--> Hi Eric,
--> 
--> 	802 is definitely not Ethernet. 802.3 defined Ethernet MAC and
--> Phy functionality. 802.1 (not only Q) defines bridging functionality -
--> not only for Ethernet, for Wireless (802.11, 802.16 etc), for RPR
--> (802.17) - many underlying technologies. 
--> 
--> 	So, trying to define "Ethernet" in a document like this is not
--> only incorrect, it can be very misleading and confusing.
--> 
--> Thanks,
--> - Manoj
--> 
--> -----Original Message-----
--> From: [email-masked] 
--> [mailto:[email-masked]] On
--> Behalf Of Gray, Eric
--> Sent: Wednesday, November 01, 2006 9:46 AM
--> To: Silvano Gai
--> Cc: [email-masked]
--> Subject: Re: [rbridge] Comments
--> on:http://www.ietf.org/internet-drafts/dr
--> aft-ietf-trill-rbridge-arch-01.txt
--> 
--> Silvano,
--> 
--> 	I think that there may be a compromise we can arrive at here.
--> 
--> 	I propose changing the defintion of "Ethernet" to read:
--> 
--> 'Ethernet: In this document the term "Ethernet" is used to represent
-->  Ethernet-like and/or Ethernet-equivalent technologies - explicitly
-->  including 802.3 [802.3 ref], 802.1Q [802.Q ref] and other closely 
-->  related LAN technologies, and NOT explicitly excluding any other 
-->  Ethernet-like and/or Ethernet-equivalent technology that exists, or
-->  may be developed in the future.'
--> 
--> 	Using this definition should clarify that I am not necessarily
--> using the term in the way that some people may feel it 
--> should be used,
--> while clearly stating what I am using the term to mean.  This should
--> also reduce your concern that I am apprently equating Ethernet and 
--> 802 in general.  It also satisfies my intention to be inclusive.
--> 
--> 	How does this sound?
--> 
--> --
--> Eric
--> 
-- [snip] --

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 11:22:49 -0800
From: "Sanjay Sane \(sanjays\)" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between computation and optimality of delivery
Status: RO
Content-Length: 3991

This proposal sounds good to me, with one exception. 

If we don't expect the number of trees to be equal to the number of
rbridges, why have the tree identifier from the same number-space as of
rbridge-nickname ? 

Rbridge nickname space is 16 bits = 64K combinations. Its not practical
to scale to these many "trees". If the "tree-identifier" space is
different (say 10 bits - max 1k combinations) than the rbridge nickname
space, hardware resources can be optimized. 

To optimize the fields in the shim header, its ok to carry this
tree-identifier in the egress rbridge id field (as per your latest SHIM
header proposal). 

Yes, this would mean another "dynamic assignment" process to assign the
"tree-identifier". Whichever rbridge is configured/chosen to become the
root of a tree, first participates in the "dynamic assignment" process,
gets itself assigned a "tree-identifier", and then informs the other
RBridges with some information in its link state packet - indicating 2
things
1. flag suggesting it wants to be a root of a tree 
2. "tree-identifier" to be used for the tree computed with itself as the
root. 

-Sanjay

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Wednesday, November 01, 2006 10:43 AM
To: [email-masked]
Subject: [rbridge] Compromise proposal---allowing tradeoff between
computation and optimality of delivery

There is understandable nervousness about the need to compute
per-ingress trees for every RBridge, and optimality of delivery.
I actually was dubious about whether people *really* wanted to have to
compute per-ingress trees.

Here's a proposal that will allow tradeoff between overhead of
computation and optimality of delivery. If people really want they can
have RBridges compute trees rooted at every RBridge. Or they can have
all multicast delivered on a single shared tree. Or anything in between.
I'm arbitrarily picking the zero configuration option being a single
tree.

The new shim format allows the ingress RBridge to specify the
distribution tree for multicast, by putting into the "egress RBridge"
field a tree rooted at at the specified RBridge.

In this proposal, by default, the only tree that will be computed is a
single shared tree rooted at the RBridge with smallest MAC address.
Let's say that RBridge has nickname "71". By specifying 71 as egress
RBridge in a multicast packet, the delivery path will be via the
bidirectional tree rooted at 71.

An RBridge can be configured to demand that it, too, be the root of a
tree, and it informs the other RBridges with a flag in its link state
packet.

So now we have a subset of RBridges that can be used as roots of trees,
because they have specified that in their link state packet.
Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all have
announced that they want to be roots of trees.

Then an ingress RBridge, say R2, with nickname 11, can send a
multicast/unknown destination packet with "ingress"=11 (its own) and
"egress"=11 (because it said it wanted to be a root). Or it could choose
any of the other potential ones (15, 71, 222, 259).

Likewise, an ingress RBridge, say R3, with nickname 13, who has not
requested to be the root of a tree, can specify only the trees 11, 15,
71, 222, 259. Note it cannot specify "13", since we are assuming it has
not requested that all RBridges calculate a tree rooted at itself.

If no RBridges are configured to say they want to be the root, then only
a single tree will get computed---the one rooted at 71.

So the zero configuration option is a single shared tree (still filtered
based on IP multicast announcements and VLANs) rooted at the RBridge
with smallest MAC address. But by configuration, more and more
optimality can be introduced by having RBridges compute more trees.

Radia

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 11:21:38 -0800
From: "Ayan Banerjee \(ayabaner\)" <[email-masked]>
To: "Radia Perlman" <[email-masked]>, <[email-masked]>
Subject: Re: [rbridge] Compromise proposal---allowing tradeoff between computation and optimality of delivery
Status: RO
Content-Length: 3337

Radia,

In this case could we assume that this list of trees to be computed will
be ordered and consistent across all nodes (say on MAC address or
priority)? 

Given the above, is it possible to have another TLV that states how many
trees (or the roots of trees) a node is "willing" to compute based on
its resource constraints. This will eliminate interoperability issues
across next-generation rbridges which may be more capable and deployed
with older rbridges. 

Thanks,
Ayan 

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Radia Perlman
Sent: Wednesday, November 01, 2006 10:43 AM
To: [email-masked]
Subject: [rbridge] Compromise proposal---allowing tradeoff between
computation and optimality of delivery

There is understandable nervousness about the need to compute
per-ingress trees for every RBridge, and optimality of delivery.
I actually was dubious about whether people *really* wanted to have to
compute per-ingress trees.

Here's a proposal that will allow tradeoff between overhead of
computation and optimality of delivery. If people really want they can
have RBridges compute trees rooted at every RBridge. Or they can have
all multicast delivered on a single shared tree. Or anything in between.
I'm arbitrarily picking the zero configuration option being a single
tree.

The new shim format allows the ingress RBridge to specify the
distribution tree for multicast, by putting into the "egress RBridge"
field a tree rooted at at the specified RBridge.

In this proposal, by default, the only tree that will be computed is a
single shared tree rooted at the RBridge with smallest MAC address.
Let's say that RBridge has nickname "71". By specifying 71 as egress
RBridge in a multicast packet, the delivery path will be via the
bidirectional tree rooted at 71.

An RBridge can be configured to demand that it, too, be the root of a
tree, and it informs the other RBridges with a flag in its link state
packet.

So now we have a subset of RBridges that can be used as roots of trees,
because they have specified that in their link state packet.
Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all have
announced that they want to be roots of trees.

Then an ingress RBridge, say R2, with nickname 11, can send a
multicast/unknown destination packet with "ingress"=11 (its own) and
"egress"=11 (because it said it wanted to be a root). Or it could choose
any of the other potential ones (15, 71, 222, 259).

Likewise, an ingress RBridge, say R3, with nickname 13, who has not
requested to be the root of a tree, can specify only the trees 11, 15,
71, 222, 259. Note it cannot specify "13", since we are assuming it has
not requested that all RBridges calculate a tree rooted at itself.

If no RBridges are configured to say they want to be the root, then only
a single tree will get computed---the one rooted at 71.

So the zero configuration option is a single shared tree (still filtered
based on IP multicast announcements and VLANs) rooted at the RBridge
with smallest MAC address. But by configuration, more and more
optimality can be introduced by having RBridges compute more trees.

Radia

_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 14:06:35 -0500
From: "Eastlake III Donald-LDE008" <[email-masked]>
To: "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 3207

Personally, I'm reluctant to go below 18 bits. We don't want to
necessarily allocate the values too densely, we don't really know what
future heuristics will come along, etc.

How would I handle the ingress trees if there were N Rbridges for some
large N (like 500,000) if I had to? The first idea that comes to mind is
to adopt a heuristic to select a subset of the Rbridges, say about
SQRT(N) (which would be 708 in this case), perhaps on the basis of the
richness of their connectivity and other heuristic factors. Then I'd
compute trees just for those Rbridges and, using the marvelous
capability you have successfully argued for, have frames that need
multicast/broadcast distribution directed to that much smaller number of
trees rather than the tree rooted at the Rbridge where they are
encapsulated.

Donald

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]]
--> Sent: Wednesday, November 01, 2006 11:55 AM
--> To: Russ White
--> Cc: Gray, Eric; Radia Perlman; [email-masked]
--> Subject: RE: [rbridge] New shim header proposal---without F-tag 
--> field
--> 
--> 
--> What is a stretch is 32K trees of 32K nodes, which is what you need 
--> if you want to deploy the current TRILL proposal with 32K RBridges.
--> 
--> Eric says that we need to accommodate half a million RBridges.
--> Half a million tree of half a million nodes is unfeasible.
--> 
--> If we want to support such a large number of Rbridges, we need to 
--> modify the current Trill proposal, reducing the number of trees that

--> need to be computed.
--> 
--> Agreed?
--> 
--> -- Silvano
--> 
--> 
--> > -----Original Message-----
--> > From: Russ White [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 8:35 AM
--> > To: Silvano Gai
--> > Cc: Gray, Eric; Radia Perlman; [email-masked]
--> > Subject: Re: [rbridge] New shim header proposal---without
--> F-tag field
--> > 
--> > -----BEGIN PGP SIGNED MESSAGE-----
--> > Hash: SHA1
--> > 
--> > 
--> > >> 	I don't think there is consensus yet that we
--> only need 16 bits
--> > >> for RBridge IDs.
--> > >
--> > > With 16 bits, using 1 bit to indicate unicast, we can have 32K
--> switches.
--> > > According to the current definition of TRILL, there is
--> the need to
--> run
--> > > Djikstra on a database with 32K records, one time for the core
--> instance
--> > > and 32K times for the IRTs. This is clearly out of
--> reach even for
--> the
--> > > most powerful CPU.
--> > 
--> > ?? Perhaps 32k trees is a stretch, but 32k nodes in a
--> tree? I don't
--> > think that's really a stretch on today's processors, from
--> the scaling
--> > work I've seen done in IS-IS.
--> > 
--> > :-)
--> > 
--> > Russ
--> > 
--> > - --
--> > [email-masked] CCIE <>< Grace Alone
--> > 
--> > -----BEGIN PGP SIGNATURE-----
--> > Version: GnuPG v1.4.2.2 (MingW32)
--> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> > 
--> > iD8DBQFFSMypER27sUhU9OQRAqLwAJ9FLN2YNP2mrB6i0ZcV1fxLzAT0hgCfYHYj
--> > 6mJCA68nQLjCD8US9nRZZag=
--> > =kwzq
--> > -----END PGP SIGNATURE-----
--> 
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 10:44:58 -0800
From: "Anoop Ghanwani" <[email-masked]>
To: "Wadekar, Manoj K" <[email-masked]>, "Gray, Eric" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:http://www.ietf.org/internet-drafts/dr aft-ietf-trill-rbridge-arch-01.txt (terminology)
Status: RO
Content-Length: 46460

I tend to agree with what Manoj and Silvano are
saying.  Overloading existing terminology can only
lead to confusion.

Anoop

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Wadekar, Manoj K
> Sent: Wednesday, November 01, 2006 10:00 AM
> To: Gray, Eric; Silvano Gai
> Cc: [email-masked]
> Subject: Re: [rbridge] Comments 
> on:http://www.ietf.org/internet-drafts/dr 
> aft-ietf-trill-rbridge-arch-01.txt
> 
> Hi Eric,
> 
> 	802 is definitely not Ethernet. 802.3 defined Ethernet 
> MAC and Phy functionality. 802.1 (not only Q) defines 
> bridging functionality - not only for Ethernet, for Wireless 
> (802.11, 802.16 etc), for RPR
> (802.17) - many underlying technologies. 
> 
> 	So, trying to define "Ethernet" in a document like this 
> is not only incorrect, it can be very misleading and confusing.
> 
> Thanks,
> - Manoj
> 
> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Gray, Eric
> Sent: Wednesday, November 01, 2006 9:46 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: Re: [rbridge] Comments
> on:http://www.ietf.org/internet-drafts/dr
> aft-ietf-trill-rbridge-arch-01.txt
> 
> Silvano,
> 
> 	I think that there may be a compromise we can arrive at here.
> 
> 	I propose changing the defintion of "Ethernet" to read:
> 
> 'Ethernet: In this document the term "Ethernet" is used to 
> represent  Ethernet-like and/or Ethernet-equivalent 
> technologies - explicitly  including 802.3 [802.3 ref], 
> 802.1Q [802.Q ref] and other closely  related LAN 
> technologies, and NOT explicitly excluding any other  
> Ethernet-like and/or Ethernet-equivalent technology that 
> exists, or  may be developed in the future.'
> 
> 	Using this definition should clarify that I am not 
> necessarily using the term in the way that some people may 
> feel it should be used, while clearly stating what I am using 
> the term to mean.  This should also reduce your concern that 
> I am apprently equating Ethernet and
> 802 in general.  It also satisfies my intention to be inclusive.
> 
> 	How does this sound?
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 1:21 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Comments on: 
> --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> -arch-01.txt
> --> 
> --> 
> --> Eric,
> --> 
> --> I disagree.
> --> 
> --> I don't think it is wise for TRILL to redefine the term Ethernet.
> --> Ethernet is a term that has a well known meaning in the industry.
> --> The original definition is:
> --> Digital Equipment Corporation, Intel, Xerox, The 
> Ethernet, Version 
> --> 2.0, November 1982.
> --> Which has been then standardized by IEEE 802.3.
> --> 
> --> To speak about other IEEE 802 standards that are alive and used, 
> --> IEEE
> --> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet Ring 
> --> Working) have nothing to do with Ethernet.
> --> 
> --> -- Silvano
> --> 
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Tuesday, October 31, 2006 2:44 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] Comments on: 
> http://www.ietf.org/internet- 
> --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> > 
> --> > Silvano,
> --> > 
> --> > 	To be perfectly frank, I am unaware of any 
> reason not to include 
> --> > token ring or any other obsolete form of "Ethernet equivalent
> --> technology"
> --> > - this is one of the reason to focus on the SHIM as
> --> separate from any
> --> > specific encapsulation above or below the SHIM.
> --> > 
> --> > 	If you want to check it against all 802 
> activities, that's fine.
> --> > I would suggest, however, that even though people are
> --> realistically
> --> not
> --> > going to implement most of the hairy/scary versions in an
> --> RBridge, I
> --> do
> --> > not know of a good reason to exclude them at this point.  
> --> In abstract,
> --> > it is certainly possible that people will be able to work out
> --> specifics
> --> > of implementation - if and when they decide to do so.
> --> > 
> --> > 	After all, we (the industry) have been building 
> translation
> --> bridges
> --> > for these technologies for decades.
> --> > 
> --> > 	However, I am open to scoping the architecture 
> to apply only to
> --> a
> --> > limited subset of 802 technologies, if that is what would
> --> make people
> --> > happy...
> --> > 
> --> > --
> --> > Eric
> --> > 
> --> > --> -----Original Message-----
> --> > --> From: Silvano Gai [mailto:[email-masked]]
> --> > --> Sent: Tuesday, October 31, 2006 5:34 PM
> --> > --> To: Gray, Eric
> --> > --> Cc: [email-masked]
> --> > --> Subject: RE: [rbridge] Comments on:
> --> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> > --> -arch-01.txt
> --> > -->
> --> > -->
> --> > --> Eric,
> --> > -->
> --> > --> A quick reply:
> --> > --> Are you telling me that the term Ethernet includes 
> Token Ring,
> --> Token
> --> > --> Bus, DQDB?
> --> > -->
> --> > --> This is what you are doing when you say that Ethernet
> --> is IEEE 802
> --> > --> instead of IEEE 802.3.
> --> > -->
> --> > --> This is NOT a terminology issue. If the term Ethernet means
> --> > --> 802 I need
> --> > --> to check the operation of TRILL against all the 802
> --> technologies.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> > -----Original Message-----
> --> > --> > From: Gray, Eric [mailto:[email-masked]]
> --> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
> --> > --> > To: Silvano Gai
> --> > --> > Cc: [email-masked]
> --> > --> > Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-
> --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> > --> >
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 4> an RBridge must be also able to send
> --> two copies of a
> --> > --> > --> unicast/multicast/broadcast packet on the same
> --> port when it
> --> > --> > --> acts as a designated RBridge (one copy is
> --> encapsulated, the
> --> > --> > --> other not).
> --> > --> > -->
> --> > --> >
> --> > --> > This, I think, refers to the immediately preceding
> --> text in the
> --> > --> > architecture:
> --> > --> >
> --> > --> >         Forwarding information is derived from the
> --> combination
> --> of
> --> > --> >         attached MAC address learning, snooping of
> --> > --> multicast-related
> --> > --> >         protocols (e.g. - IGMP), and routing
> --> > --> advertisements and path
> --> > --> >         computations using the link-state routing 
> protocol.
> --> > --> >
> --> > --> > While your comment is a reasonable one - although
> --> potentially
> --> > --> > implementation specific - it does not appear to
> --> have any bearing
> --> > --> > on this text.
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 5> here there is some confusion between
> --> 802 and 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > This  refers (I believe) to the immeditately 
> preceding text:
> --> > --> >
> --> > --> >         The following terminology is defined in
> --> other documents.
> --> A
> --> > --> brief
> --> > --> >         definition is included in this section for
> --> > --> convenience and -
> --> > --> in
> --> > --> >         some cases - to remove any ambiguity in how the
> --> > --> term may be
> --> > --> used
> --> > --> >         in this document, as well as derivative documents
> --> > --> intended to
> --> > --> >         specify components, protocol, behavior and
> --> encapsulation
> --> > --> >         relative to the architecture specified in
> --> this document.
> --> > --> >
> --> > --> >         o  802: IEEE Specification for the Ethernet
> --> architecture,
> --> > --> i.e.,
> --> > --> >            including hubs and bridges.
> --> > --> >
> --> > --> > In this text, I explicitly state that these terms
> --> are defined
> --> > --> elsewhere.
> --> > --> > I am also trying to use the most generic definition
> --> of Ethernet
> --> > --> possible.
> --> > --> >
> --> > --> > The reason for this is that the problem statement does
> --> > --> not restrict
> --> > --> the
> --> > --> > solution to 802.3.
> --> > --> >
> --> > --> > There is some confusion in referring to 802.3 in
> --> any case: we
> --> > --> explicitly
> --> > --> > want to include 802.1Q - as well as all of its
> --> variations and
> --> > --> extensions.
> --> > --> >
> --> > --> > Consequently, we define the term Ethernet in the broadest
> --> possible
> --> > --> sense.
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > -->        o  Bridge Spanning Tree (BST): an Ethernet (L2,
> --> 802.1D)
> --> > --> > -->           forwarding protocol based on the topology
> --> > --> of a spanning
> --> > --> > tree.
> --> > --> > -->
> --> > --> > --> Sgai 6> I have never seen the acronym BST,
> --> everyone use STP.
> --> > --> > -->
> --> > --> >
> --> > --> > I do not know if this term is used in any of the other
> --> documents,
> --> > --> > but it is not used in this one.  Unless someone
> --> objects, I am
> --> only
> --> > --> > too happy to remove it from this document.
> --> > --> >
> --> > --> > From a historical perspective, this was defined this way
> --> > --> originally
> --> > --> > because we were re-using the term spanning tree instead
> --> > --> of IRT.  It
> --> > --> > was causing amazing communication difficulties, so
> --> we came up
> --> with
> --> > --> > the term IRT.  Now we don't need to differentiate BST.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (Sgai 5) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
> --> > --> multiple ports
> --> > --> which
> --> > --> > -->
> --> > --> > --> sgai 8> for Hub is better to reference 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (Sgai 5) above.  By the
> --> > --> definition we
> --> > --> > provide in this document, Ethernet is defined
> --> broadly to include
> --> > --> > 802 technologies.  This is reasonable, because 
> the term was
> --> stolen
> --> > --> > by IEEE from a technology stolen from a satellite
> --> communication
> --> > --> > protocol.  Ironic that 802.3 does not include 
> wireless, all
> --> things
> --> > --> > considered.  Certainly the term "Ethernet" should...
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Node: a device with an L2 (MAC) address
> --> > --> that sources
> --> > --> and/or
> --> > --> > -->            sinks L2 frames.
> --> > --> > -->
> --> > --> > --> Sgai 9> The IEEE term is "station".
> --> > --> > -->
> --> > --> >
> --> > --> > However, we in the IETF are more familiar with the
> --> term "node."
> --> > --> >
> --> > --> > This is hardly a significant issue.  if people agree that
> --> > --> we should
> --> > --> > use the term "station" as opposed to "node", then I will
> --> > --> change it.
> --> > --> >
> --> > --> > Note that we should be consistent in this usage, if we
> --> > --> decide to do
> --> > --> > yet another terminology evolution.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Segment: an Ethernet link, either a single
> --> physical
> --> > --> link or
> --> > --> > -->            emulation thereof (e.g., via hubs) or a
> --> > --> logical link or
> --> > --> > -->            emulation thereof (e.g., via bridges).
> --> > --> > -->
> --> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
> --> > --> > -->
> --> > --> >
> --> > --> > I agree, however this is the definition we agreed on here.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Subnet, Ethernet: a single segment,
> --> or a set of
> --> > --> segments
> --> > --> > -->            interconnected by a CRED (see
> --> section 2.2); in
> --> the
> --> > --> latter
> --> > --> > -->
> --> > --> > --> sgai 11> There is no concept of subnet in IEEE. 
> --> Subnet is
> --> > --> typically
> --> > --> > --> an IP subnet, and, even if it is common to have
> --> one subnet
> --> per
> --> > --> LAN,
> --> > --> > --> this is not the only possibility. Pragmatically
> --> IP subnets
> --> and
> --> > --> > --> Ethernet LAN are unrelated concepts.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, we are defining this term for use in this
> --> > --> document.  Does its
> --> > --> > use (not its definition) cause confusion or ambiguity?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            case, the subnet may or may not be
> --> equivalent to
> --> a
> --> > --> single
> --> > --> > -->            segment. Also a subnet may be
> --> referred to as a
> --> > --> broadcast
> --> > --> > -->            domain or LAN. By definition, all
> --> nodes within an
> --> > --> Ethernet
> --> > --> > -->            Subnet (broadcast domain or LAN) 
> must have L2
> --> > --> connectivity
> --> > --> > -->            with all other nodes in the same
> --> Ethernet subnet.
> --> > --> > -->
> --> > --> > -->         o  TRILL: Transparent Interconnect over Lots
> --> > --> of Links -
> --> > --> the
> --> > --> > -->            working group and working name for the
> --> > --> problem domain
> --> > --> to be
> --> > --> > -->            addressed in this document.
> --> > --> > -->
> --> > --> > -->         o  Unicast Forwarding: forwarding methods
> --> > --> that apply to
> --> > --> frames
> --> > --> > -->            with unicast destination MAC addresses.
> --> > --> > -->
> --> > --> > -->         o  Unknown Destination - a destination
> --> for which a
> --> > --> receiving
> --> > --> > -->            device has no filtering database entry.
> --> > --> Destination
> --> > --> (layer
> --> > --> > -->
> --> > --> > --> sgai 12> the stations receive the unknown
> --> unicast and have
> --> > --> filtering
> --> > --> > --> information, only the bridges don't. I propose to
> --> > --> replace device
> --> > --> with
> --> > --> > --> bridge.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, it is the intention to provide as broad a
> --> definition as
> --> > --> possible
> --> > --> > without introducing confusion or ambiguity.  An end node
> --> > --> (or station)
> --> > --> > has - in a sense - a filtering database (it's mine, or
> --> > --> it's for the
> --> > --> bit
> --> > --> > bucket).
> --> > --> >
> --> > --> > We need to explicitly include 802.1D forwarding devices
> --> > --> and RBridges.
> --> > --> >
> --> > --> > However, the definition should specify "forwarding
> --> device" - as
> --> > --> opposed
> --> > --> > to just "receiving device."
> --> > --> >
> --> > --> > I will change that.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            2) addresses are typically "learned" 
> --> by (layer 2)
> --> > --> > forwarding
> --> > --> > -->            devices via a process commonly referred to
> --> > --> as "bridge
> --> > --> > learning".
> --> > --> > -->
> --> > --> > --> Sgai 13> in IEEE, the term used is "learning" instead
> --> > --> of "bridge
> --> > --> > learning"
> --> > --> > -->
> --> > --> >
> --> > --> > However, the term defined in this document is
> --> "bridge learning."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  VLAN: Virtual Local Area Network. VLANs in
> --> > --> general fall
> --> > --> > into
> --> > --> > -->            two categories: link (or port)
> --> specific VLANs and
> --> > --> tagged
> --> > --> > -->            VLANs. In the former case, all frames
> --> > --> forwarded and all
> --> > --> > -->            directly connected nodes are assumed to be
> --> > --> part of a
> --> > --> single
> --> > --> > -->            VLAN.  In the latter case, VLAN tagged
> --> > --> frames are used
> --> > --> to
> --> > --> > -->            distinguish which VLAN each frame 
> is intended
> --> for.
> --> > --> > -->
> --> > --> > --> Sgai 14> This definition is not completely correct, I
> --> prefer:
> --> > --> > -->
> --> > --> > --> VLAN technology introduces the following three
> --> basic types
> --> of
> --> > --> frame:
> --> > --> > --> a) Untagged frames;
> --> > --> > --> b) Priority-tagged frames; and
> --> > --> > --> c) VLAN-tagged frames.
> --> > --> > -->
> --> > --> > --> An untagged frame or a priority-tagged frame does not
> --> > --> carry any
> --> > --> > --> identification of the VLAN to which it belongs. Such
> --> > --> frames are
> --> > --> > --> classified as belonging to a particular VLAN based on
> --> > --> parameters
> --> > --> > --> associated with the receiving Port, or, through
> --> proprietary
> --> > --> extensions
> --> > --> > --> to IEEE 802.1Q standard, based on the data content of
> --> > --> the frame
> --> > --> (e.g.,
> --> > --> > --> MAC Address, layer 3 protocol ID, etc.).
> --> > --> > -->
> --> > --> > --> A VLAN-tagged frame carries an explicit
> --> > --> identification of the VLAN
> --> > --> to
> --> > --> > --> which it belongs; i.e., it carries a tag header
> --> that carries
> --> a
> --> > --> non-
> --> > --> > null
> --> > --> > --> VID. Such a frame is classified as belonging to a
> --> > --> particular VLAN
> --> > --> > based
> --> > --> > --> on the value of the VID that is included in the tag
> --> > --> header. The
> --> > --> > presence
> --> > --> > --> of the tag header carrying a non-null VID means that
> --> > --> some other
> --> > --> > device,
> --> > --> > --> either the originator of the frame or a
> --> VLAN-aware Bridge,
> --> has
> --> > --> mapped
> --> > --> > --> this frame into a VLAN and has inserted the
> --> appropriate VID.
> --> > --> > -->
> --> > --> >
> --> > --> > So, you're getting into the details of the
> --> technology and - in
> --> > --> particular
> --> > --> > the encapsulation.  I will expand the definition to
> --> include a
> --> > --> possibility
> --> > --> > that other criteria may be used to define a "VLAN port" -
> --> although
> --> > --> this is
> --> > --> > isomorphic to a logical model in which a device
> --> > --> implementation uses
> --> > --> some
> --> > --> > criteria to decide that a subset of the traffic received
> --> > --> on a specific
> --> > --> > physical port is to be forwarded as if received on a
> --> > --> specific logical
> --> > --> > port.
> --> > --> >
> --> > --> > The key point in this definition is that a VLAN is a
> --> > --> "Virtual LAN" -
> --> > --> > meaning
> --> > --> > it consists of a subset of the physical and L2 
> connectivity
> --> > --> corresponding
> --> > --> > to
> --> > --> > a "logical LAN."  The intent is to "rise above" the
> --> technological
> --> > --> > approaches
> --> > --> > and encapsulations to establish a generic definition that
> --> > --> is loosely
> --> > --> tied
> --> > --> > to
> --> > --> >
> --> > --> > ways that this generic definition is actually implemented.
> --> > --> >
> --> > --> > Again, bearing in mind the way that the term is
> --> defined, does
> --> the
> --> > --> usage of
> --> > --> > the term cause confusion or ambiguity?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Forwarding Table (CFT): the per-hop
> --> forwarding
> --> > --> table
> --> > --> > -->            populated by the RBridge Routing Protocol;
> --> > --> forwarding
> --> > --> > within
> --> > --> > -->            the CRED is based on a lookup of the
> --> CRED Transit
> --> > --> Header
> --> > --> > -->            (CTH) encapsulated within the
> --> outermost received
> --> L2
> --> > --> header.
> --> > --> > -->            The outermost L2 encapsulation in this
> --> > --> case includes
> --> > --> the
> --> > --> > -->            source MAC address of the immediate
> --> > --> upstream RBridge
> --> > --> > -->            transmitting the frame and destination MAC
> --> > --> address of
> --> > --> the
> --> > --> > -->            receiving RBridge for use in the unicast
> --> forwarding
> --> > --> case.
> --> > --> > -->
> --> > --> > --> Sgai 15> In section 7 of
> --> > --> > -->
> --> > --> 
> --> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
> --> > --> > 00.txt
> --> > --> > --> we proposed that when two rbridges are
> --> connected by a point
> --> to
> --> > --> point
> --> > --> > --> link the outer MAC addresses may be set to a
> --> > --> predefined value in
> --> > --> > --> transmission and ignored in reception.
> --> > --> > -->
> --> > --> >
> --> > --> > I'm not sure how your proposal intends to determine that
> --> > --> a link is in
> --> > --> > fact point-to-point and does not just look that way.
> --> > --> >
> --> > --> > I prefer to use the same encapsulation in all 
> cases where it
> --> will
> --> > --> work.
> --> > --> >
> --> > --> > The optimization associated with using some form of
> --> > --> null-encapsulation
> --> > --> > is of dubious value, given that it may not be possible to
> --> > --> be certain a
> --> > --> > point-to-point link is - and will remain - in fact a
> --> > --> point-to-point
> --> > --> > link.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CFT-IRT: a forwarding table used for
> --> propagation
> --> of
> --> > --> > -->            broadcast, multicast or flooded
> --> frames along the
> --> > --> Ingress
> --> > --> > -->            RBridge Tree (IRT).
> --> > --> > -->
> --> > --> > --> Sgai 16> is it a forwarding table or is it a
> --> > --> filtering database.
> --> > --> Since
> --> > --> > --> the "miss" behavior is to flood, I see it as a
> --> > --> filtering database.
> --> > --> > -->
> --> > --> >
> --> > --> > What state was "miss" behavior from - Hawaii?  :-)
> --> > --> >
> --> > --> > It is analogous to a filtering database entry, 
> but it is not
> --> that.
> --> > --> >
> --> > --> > Clearly there are more things in this world than can be
> --> classified
> --> > --> > in this taxonomy.  However, given these choices, it is a
> --> > --> forwarding
> --> > --> > table.
> --> > --> >
> --> > --> > This is not a misbehavior, in that the same "base" tree
> --> > --> is used for
> --> > --> > broadcast and multicast traffic as well as flooded
> --> > --> traffic.  It may
> --> > --> > be arguable that flooding is a misbehavior, but I
> --> seem to recall
> --> > --> > that people still see it as a necessary evil.
> --> > --> >
> --> > --> > It is also not "miss" behavior (as in "cache miss") in
> --> > --> the multicast
> --> > --> > and broadcast case, either.
> --> > --> >
> --> > --> > I believe the definition is quite correct and easy to
> --> understand,
> --> > --> > provided you're not reading it with preconceived
> --> misconceptions
> --> > --> > about its meaning.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Transit Header (CTH): a 'shim' 
> --> header that
> --> > --> > encapsulates
> --> > --> > -->            the ingress L2 frame and persists
> --> throughout the
> --> > --> transit of
> --> > --> > a
> --> > --> >
> --> > --> > -->            CRED, which is further encapsulated within
> --> > --> a hop-by-hop
> --> > --> L2
> --> > --> > -->            header (and trailer). The hop-by-hop L2
> --> > --> encapsulation
> --> > --> in
> --> > --> > this
> --> > --> >
> --> > --> > -->            case includes the source MAC address of
> --> > --> the immediate
> --> > --> > -->            upstream RBridge transmitting the frame
> --> > --> and destination
> --> > --> MAC
> --> > --> > -->            address of the receiving RBridge -
> --> at least in
> --> the
> --> > --> unicast
> --> > --> > -->            forwarding case.
> --> > --> > -->
> --> > --> > --> Sgai 17> is this true also for unknown unicast?
> --> > --> > -->
> --> > --> >
> --> > --> > That is something that will be (may be already)
> --> decided in the
> --> > --> protocol
> --> > --> > specification.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Transit Table (CTT): a table that maps
> --> ingress
> --> > --> frame
> --> > --> > L2
> --> > --> > -->            destinations to egress RBridge
> --> addresses, used to
> --> > --> determine
> --> > --> > -->            encapsulation of ingress frames for
> --> transit of
> --> the
> --> > --> CRED.
> --> > --> > -->
> --> > --> > -->         o  Cooperating RBridges - those RBridges
> --> > --> within a single
> --> > --> > -->            Ethernet Subnet (broadcast domain or LAN)
> --> > --> not having
> --> > --> been
> --> > --> > -->            configured to ignore each other. By
> --> default, all
> --> > --> RBridges
> --> > --> > -->            within a single Ethernet subnet will
> --> cooperate
> --> with
> --> > --> each
> --> > --> > -->            other. It is possible for implementations
> --> > --> to allow for
> --> > --> > -->            configuration that will restrict
> --> > --> "cooperation" between
> --> > --> an
> --> > --> > -->            RBridge and an apparent neighboring
> --> RBridge.  One
> --> > --> reason
> --> > --> > why
> --> > --> > -->            this might occur is if the trust model
> --> > --> that applies in
> --> > --> a
> --> > --> > -->            particular deployment imposes a need for
> --> > --> configuration
> --> > --> of
> --> > --> > -->            security information.  By default no such
> --> > --> configuration
> --> > --> is
> --> > --> > -->            required however - should it be used in
> --> > --> any specific
> --> > --> > scenario
> --> > --> > -->
> --> > --> > -->            - it is possible (either deliberately or
> --> > --> inadvertently)
> --> > --> to
> --> > --> > -->            configure neighboring RBridges so
> --> that they do
> --> not
> --> > --> > cooperate.
> --> > --> > -->
> --> > --> > -->            In the remainder of this document,
> --> all RBridges
> --> are
> --> > --> assumed
> --> > --> > -->            to be in a cooperating (default)
> --> configuration.
> --> > --> > -->
> --> > --> > --> Sgai 18> can RBridges cooperate in groups, e.g. four
> --> Rbridges
> --> > --> > connected
> --> > --> > --> to a LAN cooperating two and two?
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.  There may be reasons why this might be done
> --> deliberately,
> --> > --> however
> --> > --> > - even in the absence of any "proof of concept"
> --> > --> justification - it is
> --> > --> a
> --> > --> > really good idea to design the protocol to be robust in
> --> > --> cases where a
> --> > --> > set of RBridges may be (mis)configured in such a way as
> --> > --> to be unable
> --> > --> to
> --> > --> > discover each other.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Ingress RBridge Tree: a tree
> --> computed for each
> --> edge
> --> > --> RBridge
> --> > --> > -->            and potentially for each VLAN in which that
> --> RBridge
> --> > --> > -->
> --> > --> > --> sgai 19> why for each VLAN? I got the
> --> impression that there
> --> > --> > --> was a single tree that was pruned differently for
> --> > --> different VLANs.
> --> > --> > -->
> --> > --> >
> --> > --> > Pruning may also take place at the ingress, if - for
> --> > --> example - it has
> --> > --> a
> --> > --> > subset of interfaces that are not connected to any
> --> egress for
> --> > --> particular
> --> > --> > VLANs.  It is a small point but, in such cases, 
> there is in
> --> effect
> --> > --> more
> --> > --> > than one IRT even at the ingress.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            participates - for delivery of broadcast,
> --> > --> multicast and
> --> > --> > -->            flooded frames from that RBridge to all
> --> > --> relevant egress
> --> > --> > -->            RBridges. This is the point-to-multipoint
> --> > --> delivery tree
> --> > --> > used
> --> > --> > -->            by an ingress RBridge to deliver
> --> > --> multicast, broadcast
> --> > --> or
> --> > --> > -->            flooded traffic.
> --> > --> > -->
> --> > --> > --> Sgai 20> the current version of the proposal
> --> speaks about a
> --> > --> multicast
> --> > --> > --> address, not point-to-point.
> --> > --> > -->
> --> > --> >
> --> > --> > I did not say "point-to-point" (look again).
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  LPT: Learned Port Table. See
> --> Filtering Database.
> --> > --> > -->
> --> > --> > --> Sgai 21> not proper terminology, I would use
> --> > --> "filtering database"
> --> > --> > --> everywhere.
> --> > --> > -->
> --> > --> >
> --> > --> > I am happy to remove this if there is no objection
> --> to my doing
> --> so.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 22> I wired port is Ehernet, i.e. IEEE 802.3, a 
> --> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (sgai 8) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 23> they learn because STP guarantees
> --> > --> symmetrical forwarding
> --> > --> > -->
> --> > --> >
> --> > --> > This (apparently) refers to the immeditately 
> preceding text:
> --> > --> >
> --> > --> >         Conventional bridges contain a learned port table
> --> > --> (LPT), or
> --> > --> >         filtering database, and a spanning tree table
> --> > --> (STT). The LPT
> --> > --> >         allows a bridge to avoid flooding all received
> --> > --> frames, as is
> --> > --> >         typical for a hub or repeater. The bridge learns
> --> > --> which nodes
> --> > --> are
> --> > --> >         accessible from a particular port by assuming
> --> > --> bi-directional
> --> > --> >         consistency:
> --> > --> >
> --> > --> > I'm not sure how picking at the peculiarities of
> --> STP behavior is
> --> > --> > relevant to this description.  STP results in a
> --> single spanning
> --> > --> > tree where each link is bi-directional.  This
> --> ensures that the
> --> > --> > MAC frames are forwarded in a bi-directionally consistent
> --> fashion.
> --> > --> >
> --> > --> > To replace this text with yours is to provide less
> --> information.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 24> active ports -> forwarding ports
> --> > --> > -->
> --> > --> >
> --> > --> > "Active ports" was the exact wording suggested to me.  In
> --> > --> context for
> --> > --> > this working group "active ports" is more meaningful than
> --> > --> "forwarding
> --> > --> > ports."  For people not used to STP-speak, "forwarding
> --> > --> port" might be
> --> > --> > used to discriminate from a "code port."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 25> there is no STT, there is a state associated
> --> > --> with each
> --> > --> port
> --> > --> > --> that can be: disabled, blocking, listening,
> --> learning, and
> --> > --> forwarding
> --> > --> > -->
> --> > --> >
> --> > --> > Other than the issue with terminology, is this text
> --> wrong?  I am
> --> > --> fairly
> --> > --> > sure that different implementations handle the 
> "port state"
> --> > --> information
> --> > --> > in different ways, and I am also reasonably sure that a
> --> > --> "table" such
> --> > --> as
> --> > --> > the one described here is one of the ways it 
> might be done.
> --> > --> >
> --> > --> > However, I agree with your assertion that this is the way
> --> > --> that it is
> --> > --> > usually talked about in an IEEE context, so -
> --> unless there are
> --> > --> specific
> --> > --> > objections - I can change the wording to be consistent
> --> > --> with what you
> --> > --> > suggest.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 26> disabled -> blocking
> --> > --> > -->
> --> > --> >
> --> > --> > I can make this change as well.  However, from the
> --> > --> perspective of what
> --> > --> > we are trying to do, "disabled" is potentially a more
> --> > --> correct term.
> --> > --> It
> --> > --> > is certainly more intuitively correct, outside of a
> --> > --> strictly IEEE/STP
> --> > --> > context.
> --> > --> >
> --> > --> > Symmetry is maintained in STP by blocking ports/links
> --> > --> bi-directionally.
> --> > --> > In such cases, a port is effectively disabled for bridges
> --> > --> at either
> --> > --> end
> --> > --> > of the link for which a port is blocked, is it not?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 27> I repeat a comment that I have made to other
> --> > --> documents: "
> --> > --> > --> The discussion about VLAN needs to be much more
> --> > --> extensive. It is
> --> > --> clear
> --> > --> > --> from the mailing list discussion that VLANs can be
> --> > --> used inside the
> --> > --> > --> packet or in the Ethernet encapsulation of TRILL.
> --> > --> These are two
> --> > --> > --> different kinds of VLANs and their requirement need
> --> > --> to be stated
> --> > --> > --> separately. Q in Q needs also to be discussed. I
> --> > --> propose to define
> --> > --> > inner
> --> > --> > --> and outer VLANs (with reference to the position of
> --> > --> the tag in the
> --> > --> > frame."
> --> > --> > --> Here I think we are talking about outer VLANs
> --> > --> > -->
> --> > --> >
> --> > --> > I responded to this in separate mail.  I wait to hear
> --> > --> other opinions
> --> > --> on
> --> > --> > this subject.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 28> IMO all RBridges must be ingress RBridges,
> --> > --> at least to
> --> > --> > support
> --> > --> > --> inband management, e.g. SNMP.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > In order to ensure symmetry with RBridges not
> --> > --> participating in STP,
> --> > --> there
> --> > --> > MUST be a designated RBridge that does all of the
> --> sending and
> --> > --> receiving
> --> > --> > of native encapsulated frames on a LAN segment.
> --> > --> >
> --> > --> > Any RBridge the loses the "Designated RBridge" 
> --> election cannot
> --> be
> --> > --> either
> --> > --> > an ingress or an egress for that LAN segment.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 29> same as above
> --> > --> > -->
> --> > --> >
> --> > --> > Same as above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 30> I think the previous definition is 
> not needed.
> --> > --> > -->
> --> > --> >
> --> > --> > This appears to refer to:
> --> > --> >
> --> > --> >         o  Local RBridge - the RBridge that forms and
> --> > --> maintains the
> --> > --> CFT-
> --> > --> >            IRT entry (or entries) under discussion. The
> --> > --> local RBridge
> --> > --> >            may be an Ingress RBridge, or an egress
> --> RBridge with
> --> > --> respect
> --> > --> >            to any set of entries in the CFT-IRT.
> --> > --> >
> --> > --> > This defintion is needed.  It is subsequently used
> --> in at least 4
> --> > --> places.
> --> > --> > When discussing the behavior of a specific RBridge
> --> > --> relative to a peer,
> --> > --> > it is convenient to define the term "local RBridge."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 31> why is it zero or more, if an RBridge
> --> exists, it
> --> must
> --> > --> have
> --> > --> > --> a an IRT, I haven't seen any discussion to support
> --> > --> multiple IRTs.
> --> > --> > -->
> --> > --> >
> --> > --> > This was answered previously on the mailing list.
> --> > --> Briefly, zero or
> --> > --> > more is correct, given that an RBridge may not have
> --> > --> forwarding entries
> --> > --> > for frames it has received.  In these cases, a frame is
> --> > --> not forwarded.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 32> I don't understand this. Since the current
> --> > --> proposal uses
> --> > --> a
> --> > --> > --> multicast MAC address, what is needed is a bit map
> --> > --> for each IRT
> --> > --> that
> --> > --> > --> says which ports are blocking and which are
> --> > --> forwarding. You are
> --> > --> > --> basically building a ST using ISIS.
> --> > --> > -->
> --> > --> >
> --> > --> > This might be the case for a specific implementation.
> --> > --> Whether it is
> --> > --> > implemented as a "bit-mask" with "non-blocking"
> --> > --> (forwarding) ports, or
> --> > --> > is implemented as a full-blown table is largely 
> dependent on
> --> what
> --> > --> other
> --> > --> > information the local device requires in order to
> --> > --> properly forwad the
> --> > --> > frame.  If - for example - a device has multiple
> --> > --> different port types,
> --> > --> > it may need to have more information for each 
> port (or that
> --> > --> information
> --> > --> > may be added later on).
> --> > --> >
> --> > --> > All of these are implementation choices that are
> --> > --> logically represented
> --> > --> > by the table described here.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 33> I don't get the pair.
> --> > --> > -->
> --> > --> >
> --> > --> > Since this immediately follows:
> --> > --> >
> --> > --> >         Each entry would contain an indication of
> --> which single
> --> > --> interface
> --> > --> >         a broadcast, multicast or flooded frame would be
> --> > --> forwarded for
> --> > --> >         each (ingress RBridge, egress RBridge) pair.
> --> > --> >
> --> > --> > I don't get what you don't get.
> --> > --> >
> --> > --> > The pair refers to the tuple "(ingress RBridge, egress
> --> RBridge)."
> --> > --> >
> --> > --> > This might be the point at which your earlier 
> point (Sgai 4)
> --> would
> --> > --> make
> --> > --> > sense to insert.  I had logically modeled this in my own
> --> > --> mind as two
> --> > --> > distinct "interfaces" (the reason I use this term, rather
> --> > --> thhan port),
> --> > --> > but I should clarify this.
> --> > --> >
> --> > --> > In any case, the entries are keyed by both ingress and
> --> > --> egress RBridge.
> --> > --> > While there will be entries for only those egress
> --> > --> RBridges where this
> --> > --> > local RBridge is on the shortest path (between the given
> --> > --> ingress and
> --> > --> > egress pair), there will be at most one entry per
> --> any ingress
> --> and
> --> > --> > egress pair.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 34> as a matter of fact each interface is
> --> > --> basically a set of
> --> > --> two
> --> > --> > --> interfaces, a regular one and a tunnel one, and the
> --> > --> > forwarding/blocking
> --> > --> > --> state may be different for the two.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > As per my response to your point (Sgai 28) above, not
> --> > --> every RBridge
> --> > --> has a
> --> > --> > "regular one" as you describe here.
> --> > --> >
> --> > --> > The forwarding/blocking state is not applicable as
> --> > --> RBridges don't do
> --> > --> STP.
> --> > --> >
> --> > --> > For the native interface, fowarding/blocking state is
> --> > --> analogous to the
> --> > --> > "Designated RBridge" election process.
> --> > --> >
> --> > --> > Since this point evidently applies to -
> --> > --> >
> --> > --> >                                                   
>    Entries
> --> would
> --> > --> also
> --> > --> >         contain any required encapsulation information,
> --> > --> etc. required
> --> > --> >         for forwarding on a given interface, and toward a
> --> > --> corresponding
> --> > --> >         specific egress RBridge.
> --> > --> >
> --> > --> > - your point, and my response, are related to the point
> --> > --> (and response)
> --> > --> > above (Sgai 33), and I will try to clarify this
> --> part as well.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 35> this protocol must be designed to avoid
> --> > --> transient loops,
> --> > --> > since
> --> > --> > --> transient loops of multicast/broadcast cause
> --> > --> broadcast storm that
> --> > --> are
> --> > --> > --> highly undesirable.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > The protocol needs to include a provision to prevent
> --> > --> _use_ of links
> --> > --> that
> --> > --> > may connect to transient loops.  Using a link-state
> --> > --> routing protocol
> --> > --> has
> --> > --> > clearly been demostrated to produce transient loops, but
> --> > --> the problem
> --> > --> you
> --> > --> > want to address has to do with using those links.
> --> > --> >
> --> > --> > A state-machine driven mechanism similar to STP might be
> --> > --> the approach
> --> > --> to
> --> > --> > use.
> --> > --> >
> --> > --> > Because we're incorporating TTL in the SHIM, however this
> --> > --> would need
> --> > --> to
> --> > --> > apply only to IRT traffic.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->
> --> > --> > --> Sgai 36> see my previous comment about VLANs
> --> > --> > -->
> --> > --> >
> --> > --> > See my previous responses.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 37> disabled -> blocking.
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (sgai 26) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 38> for multicast/broadcast we also need to
> --> > --> avoid transient
> --> > --> > loops.
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
> --> > --> processes, why
> --> > --> do
> --> > --> > we
> --> > --> > --> want to couple their timers?
> --> > --> > -->
> --> > --> >
> --> > --> > I am not suggesting "coupling their timers."  I am
> --> saying that
> --> the
> --> > --> value
> --> > --> > chosen for a timer (if one is used) to determine when it
> --> > --> is reasonable
> --> > --> to
> --> > --> > start RBridge peer discovery should take into
> --> account the time
> --> it
> --> > --> takes
> --> > --> > for the local spanning tree resolution.
> --> > --> >
> --> > --> > I feel the reason for this is self-evident but, just to
> --> > --> clarify, think
> --> > --> > about the process we're planning to use to 
> determine RBridge
> --> > --> nick-names.
> --> > --> > If we start this too early, we will be re-starting it
> --> > --> many times as we
> --> > --> > "hear from" new RBridge peers when the connecting links go
> --> active
> --> > --> after
> --> > --> > local bridges go to the forwarding state.  This would
> --> > --> apply only at
> --> > --> the
> --> > --> > system start up as - after that - you are quite correct
> --> > --> in asserting
> --> > --> it
> --> > --> > would be an ongoing process.
> --> > --> >
> --> > --> > Perhaps I should add some words to indicate that a delay
> --> > --> would not be
> --> > --> > necessary if the protocol mechanisms do not introduce
> --> > --> instability as a
> --> > --> > new peer is discovered.  So far, I have not seen any
> --> > --> indication that a
> --> > --> > "race-free" solution to accomplish this has been designed
> --> > --> - or talked
> --> > --> > about.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 40> there is also a requirement to 
> time-out learnt
> --> > --> information to
> --> > --> > --> maintain the filtering databases.
> --> > --> > -->
> --> > --> >
> --> > --> > There would be, if we were doing that.  Instead,
> --> we're adopting
> --> a
> --> > --> > link-state routing protocol and they tend to have
> --> that covered.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 41> periodically or on demand
> --> > --> > -->
> --> > --> >
> --> > --> > See the response to your point (Sgai 40) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 42> potentially there is an unencapsulated
> --> > --> interface for each
> --> > --> > --> physical interface of the RBridge. It is true that
> --> > --> you can model
> --> > --> all
> --> > --> > --> of them as a single separate logical interface, but
> --> > --> then we need
> --> > --> to
> --> > --> > --> replicate the frame according to a bitmask 
> that tells on
> --> which
> --> > --> > physical
> --> > --> > --> interface the RBridge is designated.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, your use of a "bitmask" is an implementation
> --> > --> choice as opposed
> --> > --> > to a logical model.
> --> > --> >
> --> > --> > As you observe, I do "model all of them as a single
> --> > --> separate logical
> --> > --> > interface" and if you want to "replicate the frame
> --> according to
> --> a
> --> > --> > bitmask that tells on which physical interface the
> --> RBridge is
> --> > --> > designated" - you're absolutely free to do so.
> --> > --> >
> --> > --> > Personally, I think this is far too much implementation
> --> > --> stuff for a
> --> > --> > protocol specification, let alone an architecture 
> document.
> --> > --> >
> --> > --> > -->
> --> > --> > --> Sgai 43> can we clarify that this means "drop BPDUs".
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.
> --> > --> >
> --> > --> > -- [snip --
> --> > -->
> --> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 
> _______________________________________________
> rbridge mailing list
> [email-masked]
> http://mailman.postel.org/mailman/listinfo/rbridge
> 
> 

Date: Wed, 01 Nov 2006 10:43:11 -0800
From: Radia Perlman <[email-masked]>
To: [email-masked]
Subject: [rbridge] Compromise proposal---allowing tradeoff between computation and optimality of delivery
Status: RO
Content-Length: 2422

There is understandable nervousness about the need to compute
per-ingress trees for every RBridge, and optimality of delivery.
I actually was dubious about whether people *really* wanted
to have to compute per-ingress trees.

Here's a proposal that will allow tradeoff between overhead of
computation and optimality of delivery. If people really want
they can have RBridges compute trees rooted at every RBridge. Or they
can have all multicast delivered on a single shared tree. Or anything in 
between.
I'm arbitrarily picking the zero configuration option being a single tree.

The new shim format allows the ingress RBridge to specify the
distribution tree for multicast, by putting into the "egress RBridge"
field a tree rooted at at the specified RBridge.

In this proposal, by default, the only tree that will be computed is a 
single shared
tree rooted at the RBridge with smallest MAC address. Let's say that
RBridge has nickname "71". By specifying 71 as egress RBridge in
a multicast packet, the delivery path will be via the bidirectional
tree rooted at 71.

An RBridge can be configured to demand that it, too, be the root of
a tree, and it informs the other RBridges with a flag in its link state
packet.

So now we have a subset of RBridges that can be used as roots of trees, 
because
they have specified that in their link state packet.
Let's say that RBridges with nicknames 11, 15, 71, 222, and 259 all
have announced that they want to be roots of trees.

Then an ingress RBridge, say R2, with nickname 11, can send a
multicast/unknown destination packet with "ingress"=11 (its own)
and "egress"=11 (because it said it wanted to be a root). Or it could
choose any of the other potential ones (15, 71, 222, 259).

Likewise, an ingress RBridge, say R3, with nickname 13, who has
not requested to be the root of a tree, can specify only
the trees 11, 15, 71, 222, 259. Note it cannot specify "13", since we
are assuming it has not requested that all RBridges calculate a tree 
rooted at itself.

If no RBridges are configured to say they want to be the root,
then only a single tree will get computed---the one rooted
at 71.

So the zero configuration option is a single shared tree (still filtered
based on IP multicast announcements and VLANs) rooted at the RBridge with
smallest MAC address. But by configuration, more and more optimality
can be introduced by having RBridges compute more trees.

Radia

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 10:03:14 -0800
From: "Wadekar, Manoj K" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 6451

For Data Center networks, increasing bisectional bandwidth is very
important and "load splitting between multiple paths" is important to
achieve this. L2 ECMP is logical way of doing it. This is how I read as
well.

What is the alternative? I think multiple trees rooted at each node and
using shortest path to the destination is a limited approach as compared
to L2 ECMP.

Thanks,
- Manoj

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Gray, Eric
Sent: Wednesday, November 01, 2006 9:32 AM
To: Silvano Gai
Cc: [email-masked]
Subject: Re: [rbridge] Comments
on:http://www.ietf.org/internet-drafts/dr
aft-ietf-trill-rbridge-arch-01.txt

Silvano,

	Let's leave-off restating our cases, and simply let others 
comment on what they think is meant by this phrase in the charter.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 12:22 PM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
-arch-01.txt
--> 
--> Eric,
--> 
--> If the sentence "load-splitting among multiple paths", does not mean
--> Layer 2 ECMP, what does it mean?
--> 
--> How can I split the load among multiple paths, without doing
--> multipathing?
--> 
--> To split the load, I need at least two paths, If they are not Equal
--> Cost, what are they?
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 9:09 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	There is a difference.  I've been participating in this working
--> > group for some time, and I have not heard anyone suggest 
--> using L2 ECMP
--> > is what the charter means by "load-splitting among 
--> multiple paths."
--> > 
--> > 	However, I agree we need to be fair.  Consequently, let's ask
--> > other people to weigh in on this issue.  You assert that 
--> the charter
--> > means to include L2 ECMP as an explicit requirement of 
--> the TRILL work.
--> > I assert that it does not.
--> > 
--> > 	What do other people say?
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Wednesday, November 01, 2006 11:29 AM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > --> Eric,
--> > -->
--> > --> When I propose something that is not in the charter, it is
--> > --> out of scope
--> > --> because not in the charter; when I propose something 
--> that is in
--> the
--> > --> charter, it is out of scope because "this is not what 
--> the charter
--> is
--> > --> meant to
--> > --> describe."
--> > -->
--> > --> Let's be fair!
--> > -->
--> > --> IMHO, if TRILL does not support Layer 2 ECMP, it is not
--> > --> interesting at
--> > --> all for us. All the interest in replacing Spanning Tree is
--> > --> to get Layer
--> > --> 2 ECMP.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Wednesday, November 01, 2006 8:20 AM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> > Silvano,
--> > --> >
--> > --> > 	As I said in my other reply, this is not what the
--> charter is
--> > --> meant
--> > --> > to
--> > --> > describe.
--> > --> >
--> > --> > --
--> > --> > Eric
--> > --> >
--> > --> > --> -----Original Message-----
--> > --> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> > --> Sent: Wednesday, November 01, 2006 1:08 AM
--> > --> > --> To: Gray, Eric
--> > --> > --> Cc: [email-masked]
--> > --> > --> Subject: RE: [rbridge] Comments on:
--> > --> > --> 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> > --> -arch-01.txt
--> > --> > -->
--> > --> > -->
--> > --> > --> Eric,
--> > --> > -->
--> > --> > --> The charter says:
--> > --> > --> "load-splitting among multiple paths"
--> > --> > --> The pragmatic way to achieve this is to 
--> implement Layer 2
--> ECMP
--> > --> > -->
--> > --> > --> -- Silvano
--> > --> > -->
--> > --> > -->
--> > --> > --> > -----Original Message-----
--> > --> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > --> > Sent: Tuesday, October 31, 2006 9:25 AM
--> > --> > --> > To: Silvano Gai
--> > --> > --> > Cc: [email-masked]
--> > --> > --> > Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-
--> > --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> > --> >
--> > --> > --> > Silvano,
--> > --> > --> >
--> > --> > --> > 	See below...
--> > --> > --> >
--> > --> > --> > --
--> > --> > --> > Eric
--> > --> > --> >
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 2> I think we should explicitly 
--> mention layer 2
--> > --> > --> multipath.
--> > --> > --> > -->
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > What do you mean by layer 2 multipath?
--> > --> > --> >
--> > --> > --> > Do you mean "link bundling" or something else?
--> > --> > --> >
--> > --> > --> > Are we trying now to apply ECMP to routing 
--> advertisements
--> > --> > --> for layer
--> > --> > --> > two reachability?  That's a big step, particularly
--> > --> when we need
--> > --> to
--> > --> > --> > retain compatibility with existing 802.1 bridges.
--> > --> > --> >
--> > --> > --> > I don't recall seeing anything about this in 
--> the problem
--> > --> statement
--> > --> > --> > document, so I don't know of any reason why we should
--> > --> > --> include it in
--> > --> > --> > the architecture.
--> > --> > --> >
--> > --> > --> > --
--> > --> > --> > Eric
--> > --> > -->
--> > -->
--> 
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 10:03:12 -0800
From: "Caitlin Bestler" <[email-masked]>
To: "Joel M. Halpern" <[email-masked]>, [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr aft-ietf-trill-rbridge-arch-01.t xt
Status: RO
Content-Length: 940

[email-masked] wrote:
> With regard to the multiple path support, my understanding of
> the charter was that it was intended to permit the usage of
> multiple paths by traffic from different places.  I.e. to
> lift the restriction of STP to a single tree for the entire bridged
> network. I did not think that it meant that traffic from a given
> ingress to a given egress was supposed to be able to use
> multiple paths, although I can see how a reader would get that.
> 

My take is that RBridges should not break any existing scheme that
spreads traffic across multiple paths, and I cannot think of any
way in which it might do so.

It is concievable that RBridges *could* be specced to load balance
traffic between any two rbridges, but it would be challenging to
do so in a way that maintained in-order delivery. Therefore I 
think most people would agree that such functionality should
not be part of the base protocol.

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 10:00:19 -0800
From: "Wadekar, Manoj K" <[email-masked]>
To: "Gray, Eric" <[email-masked]>, "Silvano Gai" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 43168

Hi Eric,

	802 is definitely not Ethernet. 802.3 defined Ethernet MAC and
Phy functionality. 802.1 (not only Q) defines bridging functionality -
not only for Ethernet, for Wireless (802.11, 802.16 etc), for RPR
(802.17) - many underlying technologies. 

	So, trying to define "Ethernet" in a document like this is not
only incorrect, it can be very misleading and confusing.

Thanks,
- Manoj

-----Original Message-----
From: [email-masked] [mailto:[email-masked]] On
Behalf Of Gray, Eric
Sent: Wednesday, November 01, 2006 9:46 AM
To: Silvano Gai
Cc: [email-masked]
Subject: Re: [rbridge] Comments
on:http://www.ietf.org/internet-drafts/dr
aft-ietf-trill-rbridge-arch-01.txt

Silvano,

	I think that there may be a compromise we can arrive at here.

	I propose changing the defintion of "Ethernet" to read:

'Ethernet: In this document the term "Ethernet" is used to represent
 Ethernet-like and/or Ethernet-equivalent technologies - explicitly
 including 802.3 [802.3 ref], 802.1Q [802.Q ref] and other closely 
 related LAN technologies, and NOT explicitly excluding any other 
 Ethernet-like and/or Ethernet-equivalent technology that exists, or
 may be developed in the future.'

	Using this definition should clarify that I am not necessarily
using the term in the way that some people may feel it should be used,
while clearly stating what I am using the term to mean.  This should
also reduce your concern that I am apprently equating Ethernet and 
802 in general.  It also satisfies my intention to be inclusive.

	How does this sound?

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 1:21 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> 
--> Eric,
--> 
--> I disagree.
--> 
--> I don't think it is wise for TRILL to redefine the term Ethernet.
--> Ethernet is a term that has a well known meaning in the industry.
--> The original definition is:
--> Digital Equipment Corporation, Intel, Xerox, The Ethernet, 
--> Version 2.0,
--> November 1982.
--> Which has been then standardized by IEEE 802.3.
--> 
--> To speak about other IEEE 802 standards that are alive and 
--> used, IEEE
--> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet 
--> Ring Working)
--> have nothing to do with Ethernet.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Tuesday, October 31, 2006 2:44 PM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	To be perfectly frank, I am unaware of any reason not to include
--> > token ring or any other obsolete form of "Ethernet equivalent
--> technology"
--> > - this is one of the reason to focus on the SHIM as 
--> separate from any
--> > specific encapsulation above or below the SHIM.
--> > 
--> > 	If you want to check it against all 802 activities, that's fine.
--> > I would suggest, however, that even though people are 
--> realistically
--> not
--> > going to implement most of the hairy/scary versions in an 
--> RBridge, I
--> do
--> > not know of a good reason to exclude them at this point.  
--> In abstract,
--> > it is certainly possible that people will be able to work out
--> specifics
--> > of implementation - if and when they decide to do so.
--> > 
--> > 	After all, we (the industry) have been building translation
--> bridges
--> > for these technologies for decades.
--> > 
--> > 	However, I am open to scoping the architecture to apply only to
--> a
--> > limited subset of 802 technologies, if that is what would 
--> make people
--> > happy...
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Tuesday, October 31, 2006 5:34 PM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > -->
--> > --> Eric,
--> > -->
--> > --> A quick reply:
--> > --> Are you telling me that the term Ethernet includes Token Ring,
--> Token
--> > --> Bus, DQDB?
--> > -->
--> > --> This is what you are doing when you say that Ethernet 
--> is IEEE 802
--> > --> instead of IEEE 802.3.
--> > -->
--> > --> This is NOT a terminology issue. If the term Ethernet means
--> > --> 802 I need
--> > --> to check the operation of TRILL against all the 802 
--> technologies.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 4> an RBridge must be also able to send 
--> two copies of a
--> > --> > --> unicast/multicast/broadcast packet on the same 
--> port when it
--> > --> > --> acts as a designated RBridge (one copy is 
--> encapsulated, the
--> > --> > --> other not).
--> > --> > -->
--> > --> >
--> > --> > This, I think, refers to the immediately preceding 
--> text in the
--> > --> > architecture:
--> > --> >
--> > --> >         Forwarding information is derived from the 
--> combination
--> of
--> > --> >         attached MAC address learning, snooping of
--> > --> multicast-related
--> > --> >         protocols (e.g. - IGMP), and routing
--> > --> advertisements and path
--> > --> >         computations using the link-state routing protocol.
--> > --> >
--> > --> > While your comment is a reasonable one - although 
--> potentially
--> > --> > implementation specific - it does not appear to 
--> have any bearing
--> > --> > on this text.
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 5> here there is some confusion between 
--> 802 and 802.3
--> > --> > -->
--> > --> >
--> > --> > This  refers (I believe) to the immeditately preceding text:
--> > --> >
--> > --> >         The following terminology is defined in 
--> other documents.
--> A
--> > --> brief
--> > --> >         definition is included in this section for
--> > --> convenience and -
--> > --> in
--> > --> >         some cases - to remove any ambiguity in how the
--> > --> term may be
--> > --> used
--> > --> >         in this document, as well as derivative documents
--> > --> intended to
--> > --> >         specify components, protocol, behavior and 
--> encapsulation
--> > --> >         relative to the architecture specified in 
--> this document.
--> > --> >
--> > --> >         o  802: IEEE Specification for the Ethernet
--> architecture,
--> > --> i.e.,
--> > --> >            including hubs and bridges.
--> > --> >
--> > --> > In this text, I explicitly state that these terms 
--> are defined
--> > --> elsewhere.
--> > --> > I am also trying to use the most generic definition 
--> of Ethernet
--> > --> possible.
--> > --> >
--> > --> > The reason for this is that the problem statement does
--> > --> not restrict
--> > --> the
--> > --> > solution to 802.3.
--> > --> >
--> > --> > There is some confusion in referring to 802.3 in 
--> any case: we
--> > --> explicitly
--> > --> > want to include 802.1Q - as well as all of its 
--> variations and
--> > --> extensions.
--> > --> >
--> > --> > Consequently, we define the term Ethernet in the broadest
--> possible
--> > --> sense.
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > -->        o  Bridge Spanning Tree (BST): an Ethernet (L2,
--> 802.1D)
--> > --> > -->           forwarding protocol based on the topology
--> > --> of a spanning
--> > --> > tree.
--> > --> > -->
--> > --> > --> Sgai 6> I have never seen the acronym BST, 
--> everyone use STP.
--> > --> > -->
--> > --> >
--> > --> > I do not know if this term is used in any of the other
--> documents,
--> > --> > but it is not used in this one.  Unless someone 
--> objects, I am
--> only
--> > --> > too happy to remove it from this document.
--> > --> >
--> > --> > From a historical perspective, this was defined this way
--> > --> originally
--> > --> > because we were re-using the term spanning tree instead
--> > --> of IRT.  It
--> > --> > was causing amazing communication difficulties, so 
--> we came up
--> with
--> > --> > the term IRT.  Now we don't need to differentiate BST.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (Sgai 5) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
--> > --> multiple ports
--> > --> which
--> > --> > -->
--> > --> > --> sgai 8> for Hub is better to reference 802.3
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (Sgai 5) above.  By the
--> > --> definition we
--> > --> > provide in this document, Ethernet is defined 
--> broadly to include
--> > --> > 802 technologies.  This is reasonable, because the term was
--> stolen
--> > --> > by IEEE from a technology stolen from a satellite 
--> communication
--> > --> > protocol.  Ironic that 802.3 does not include wireless, all
--> things
--> > --> > considered.  Certainly the term "Ethernet" should...
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Node: a device with an L2 (MAC) address
--> > --> that sources
--> > --> and/or
--> > --> > -->            sinks L2 frames.
--> > --> > -->
--> > --> > --> Sgai 9> The IEEE term is "station".
--> > --> > -->
--> > --> >
--> > --> > However, we in the IETF are more familiar with the 
--> term "node."
--> > --> >
--> > --> > This is hardly a significant issue.  if people agree that
--> > --> we should
--> > --> > use the term "station" as opposed to "node", then I will
--> > --> change it.
--> > --> >
--> > --> > Note that we should be consistent in this usage, if we
--> > --> decide to do
--> > --> > yet another terminology evolution.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Segment: an Ethernet link, either a single
--> physical
--> > --> link or
--> > --> > -->            emulation thereof (e.g., via hubs) or a
--> > --> logical link or
--> > --> > -->            emulation thereof (e.g., via bridges).
--> > --> > -->
--> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
--> > --> > -->
--> > --> >
--> > --> > I agree, however this is the definition we agreed on here.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Subnet, Ethernet: a single segment, 
--> or a set of
--> > --> segments
--> > --> > -->            interconnected by a CRED (see 
--> section 2.2); in
--> the
--> > --> latter
--> > --> > -->
--> > --> > --> sgai 11> There is no concept of subnet in IEEE. 
--> Subnet is
--> > --> typically
--> > --> > --> an IP subnet, and, even if it is common to have 
--> one subnet
--> per
--> > --> LAN,
--> > --> > --> this is not the only possibility. Pragmatically 
--> IP subnets
--> and
--> > --> > --> Ethernet LAN are unrelated concepts.
--> > --> > -->
--> > --> >
--> > --> > Again, we are defining this term for use in this
--> > --> document.  Does its
--> > --> > use (not its definition) cause confusion or ambiguity?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            case, the subnet may or may not be 
--> equivalent to
--> a
--> > --> single
--> > --> > -->            segment. Also a subnet may be 
--> referred to as a
--> > --> broadcast
--> > --> > -->            domain or LAN. By definition, all 
--> nodes within an
--> > --> Ethernet
--> > --> > -->            Subnet (broadcast domain or LAN) must have L2
--> > --> connectivity
--> > --> > -->            with all other nodes in the same 
--> Ethernet subnet.
--> > --> > -->
--> > --> > -->         o  TRILL: Transparent Interconnect over Lots
--> > --> of Links -
--> > --> the
--> > --> > -->            working group and working name for the
--> > --> problem domain
--> > --> to be
--> > --> > -->            addressed in this document.
--> > --> > -->
--> > --> > -->         o  Unicast Forwarding: forwarding methods
--> > --> that apply to
--> > --> frames
--> > --> > -->            with unicast destination MAC addresses.
--> > --> > -->
--> > --> > -->         o  Unknown Destination - a destination 
--> for which a
--> > --> receiving
--> > --> > -->            device has no filtering database entry.
--> > --> Destination
--> > --> (layer
--> > --> > -->
--> > --> > --> sgai 12> the stations receive the unknown 
--> unicast and have
--> > --> filtering
--> > --> > --> information, only the bridges don't. I propose to
--> > --> replace device
--> > --> with
--> > --> > --> bridge.
--> > --> > -->
--> > --> >
--> > --> > Again, it is the intention to provide as broad a 
--> definition as
--> > --> possible
--> > --> > without introducing confusion or ambiguity.  An end node
--> > --> (or station)
--> > --> > has - in a sense - a filtering database (it's mine, or
--> > --> it's for the
--> > --> bit
--> > --> > bucket).
--> > --> >
--> > --> > We need to explicitly include 802.1D forwarding devices
--> > --> and RBridges.
--> > --> >
--> > --> > However, the definition should specify "forwarding 
--> device" - as
--> > --> opposed
--> > --> > to just "receiving device."
--> > --> >
--> > --> > I will change that.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            2) addresses are typically "learned" 
--> by (layer 2)
--> > --> > forwarding
--> > --> > -->            devices via a process commonly referred to
--> > --> as "bridge
--> > --> > learning".
--> > --> > -->
--> > --> > --> Sgai 13> in IEEE, the term used is "learning" instead
--> > --> of "bridge
--> > --> > learning"
--> > --> > -->
--> > --> >
--> > --> > However, the term defined in this document is 
--> "bridge learning."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  VLAN: Virtual Local Area Network. VLANs in
--> > --> general fall
--> > --> > into
--> > --> > -->            two categories: link (or port) 
--> specific VLANs and
--> > --> tagged
--> > --> > -->            VLANs. In the former case, all frames
--> > --> forwarded and all
--> > --> > -->            directly connected nodes are assumed to be
--> > --> part of a
--> > --> single
--> > --> > -->            VLAN.  In the latter case, VLAN tagged
--> > --> frames are used
--> > --> to
--> > --> > -->            distinguish which VLAN each frame is intended
--> for.
--> > --> > -->
--> > --> > --> Sgai 14> This definition is not completely correct, I
--> prefer:
--> > --> > -->
--> > --> > --> VLAN technology introduces the following three 
--> basic types
--> of
--> > --> frame:
--> > --> > --> a) Untagged frames;
--> > --> > --> b) Priority-tagged frames; and
--> > --> > --> c) VLAN-tagged frames.
--> > --> > -->
--> > --> > --> An untagged frame or a priority-tagged frame does not
--> > --> carry any
--> > --> > --> identification of the VLAN to which it belongs. Such
--> > --> frames are
--> > --> > --> classified as belonging to a particular VLAN based on
--> > --> parameters
--> > --> > --> associated with the receiving Port, or, through 
--> proprietary
--> > --> extensions
--> > --> > --> to IEEE 802.1Q standard, based on the data content of
--> > --> the frame
--> > --> (e.g.,
--> > --> > --> MAC Address, layer 3 protocol ID, etc.).
--> > --> > -->
--> > --> > --> A VLAN-tagged frame carries an explicit
--> > --> identification of the VLAN
--> > --> to
--> > --> > --> which it belongs; i.e., it carries a tag header 
--> that carries
--> a
--> > --> non-
--> > --> > null
--> > --> > --> VID. Such a frame is classified as belonging to a
--> > --> particular VLAN
--> > --> > based
--> > --> > --> on the value of the VID that is included in the tag
--> > --> header. The
--> > --> > presence
--> > --> > --> of the tag header carrying a non-null VID means that
--> > --> some other
--> > --> > device,
--> > --> > --> either the originator of the frame or a 
--> VLAN-aware Bridge,
--> has
--> > --> mapped
--> > --> > --> this frame into a VLAN and has inserted the 
--> appropriate VID.
--> > --> > -->
--> > --> >
--> > --> > So, you're getting into the details of the 
--> technology and - in
--> > --> particular
--> > --> > the encapsulation.  I will expand the definition to 
--> include a
--> > --> possibility
--> > --> > that other criteria may be used to define a "VLAN port" -
--> although
--> > --> this is
--> > --> > isomorphic to a logical model in which a device
--> > --> implementation uses
--> > --> some
--> > --> > criteria to decide that a subset of the traffic received
--> > --> on a specific
--> > --> > physical port is to be forwarded as if received on a
--> > --> specific logical
--> > --> > port.
--> > --> >
--> > --> > The key point in this definition is that a VLAN is a
--> > --> "Virtual LAN" -
--> > --> > meaning
--> > --> > it consists of a subset of the physical and L2 connectivity
--> > --> corresponding
--> > --> > to
--> > --> > a "logical LAN."  The intent is to "rise above" the
--> technological
--> > --> > approaches
--> > --> > and encapsulations to establish a generic definition that
--> > --> is loosely
--> > --> tied
--> > --> > to
--> > --> >
--> > --> > ways that this generic definition is actually implemented.
--> > --> >
--> > --> > Again, bearing in mind the way that the term is 
--> defined, does
--> the
--> > --> usage of
--> > --> > the term cause confusion or ambiguity?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Forwarding Table (CFT): the per-hop
--> forwarding
--> > --> table
--> > --> > -->            populated by the RBridge Routing Protocol;
--> > --> forwarding
--> > --> > within
--> > --> > -->            the CRED is based on a lookup of the 
--> CRED Transit
--> > --> Header
--> > --> > -->            (CTH) encapsulated within the 
--> outermost received
--> L2
--> > --> header.
--> > --> > -->            The outermost L2 encapsulation in this
--> > --> case includes
--> > --> the
--> > --> > -->            source MAC address of the immediate
--> > --> upstream RBridge
--> > --> > -->            transmitting the frame and destination MAC
--> > --> address of
--> > --> the
--> > --> > -->            receiving RBridge for use in the unicast
--> forwarding
--> > --> case.
--> > --> > -->
--> > --> > --> Sgai 15> In section 7 of
--> > --> > -->
--> > --> 
--> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
--> > --> > 00.txt
--> > --> > --> we proposed that when two rbridges are 
--> connected by a point
--> to
--> > --> point
--> > --> > --> link the outer MAC addresses may be set to a
--> > --> predefined value in
--> > --> > --> transmission and ignored in reception.
--> > --> > -->
--> > --> >
--> > --> > I'm not sure how your proposal intends to determine that
--> > --> a link is in
--> > --> > fact point-to-point and does not just look that way.
--> > --> >
--> > --> > I prefer to use the same encapsulation in all cases where it
--> will
--> > --> work.
--> > --> >
--> > --> > The optimization associated with using some form of
--> > --> null-encapsulation
--> > --> > is of dubious value, given that it may not be possible to
--> > --> be certain a
--> > --> > point-to-point link is - and will remain - in fact a
--> > --> point-to-point
--> > --> > link.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CFT-IRT: a forwarding table used for 
--> propagation
--> of
--> > --> > -->            broadcast, multicast or flooded 
--> frames along the
--> > --> Ingress
--> > --> > -->            RBridge Tree (IRT).
--> > --> > -->
--> > --> > --> Sgai 16> is it a forwarding table or is it a
--> > --> filtering database.
--> > --> Since
--> > --> > --> the "miss" behavior is to flood, I see it as a
--> > --> filtering database.
--> > --> > -->
--> > --> >
--> > --> > What state was "miss" behavior from - Hawaii?  :-)
--> > --> >
--> > --> > It is analogous to a filtering database entry, but it is not
--> that.
--> > --> >
--> > --> > Clearly there are more things in this world than can be
--> classified
--> > --> > in this taxonomy.  However, given these choices, it is a
--> > --> forwarding
--> > --> > table.
--> > --> >
--> > --> > This is not a misbehavior, in that the same "base" tree
--> > --> is used for
--> > --> > broadcast and multicast traffic as well as flooded
--> > --> traffic.  It may
--> > --> > be arguable that flooding is a misbehavior, but I 
--> seem to recall
--> > --> > that people still see it as a necessary evil.
--> > --> >
--> > --> > It is also not "miss" behavior (as in "cache miss") in
--> > --> the multicast
--> > --> > and broadcast case, either.
--> > --> >
--> > --> > I believe the definition is quite correct and easy to
--> understand,
--> > --> > provided you're not reading it with preconceived 
--> misconceptions
--> > --> > about its meaning.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Transit Header (CTH): a 'shim' 
--> header that
--> > --> > encapsulates
--> > --> > -->            the ingress L2 frame and persists 
--> throughout the
--> > --> transit of
--> > --> > a
--> > --> >
--> > --> > -->            CRED, which is further encapsulated within
--> > --> a hop-by-hop
--> > --> L2
--> > --> > -->            header (and trailer). The hop-by-hop L2
--> > --> encapsulation
--> > --> in
--> > --> > this
--> > --> >
--> > --> > -->            case includes the source MAC address of
--> > --> the immediate
--> > --> > -->            upstream RBridge transmitting the frame
--> > --> and destination
--> > --> MAC
--> > --> > -->            address of the receiving RBridge - 
--> at least in
--> the
--> > --> unicast
--> > --> > -->            forwarding case.
--> > --> > -->
--> > --> > --> Sgai 17> is this true also for unknown unicast?
--> > --> > -->
--> > --> >
--> > --> > That is something that will be (may be already) 
--> decided in the
--> > --> protocol
--> > --> > specification.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Transit Table (CTT): a table that maps
--> ingress
--> > --> frame
--> > --> > L2
--> > --> > -->            destinations to egress RBridge 
--> addresses, used to
--> > --> determine
--> > --> > -->            encapsulation of ingress frames for 
--> transit of
--> the
--> > --> CRED.
--> > --> > -->
--> > --> > -->         o  Cooperating RBridges - those RBridges
--> > --> within a single
--> > --> > -->            Ethernet Subnet (broadcast domain or LAN)
--> > --> not having
--> > --> been
--> > --> > -->            configured to ignore each other. By 
--> default, all
--> > --> RBridges
--> > --> > -->            within a single Ethernet subnet will 
--> cooperate
--> with
--> > --> each
--> > --> > -->            other. It is possible for implementations
--> > --> to allow for
--> > --> > -->            configuration that will restrict
--> > --> "cooperation" between
--> > --> an
--> > --> > -->            RBridge and an apparent neighboring 
--> RBridge.  One
--> > --> reason
--> > --> > why
--> > --> > -->            this might occur is if the trust model
--> > --> that applies in
--> > --> a
--> > --> > -->            particular deployment imposes a need for
--> > --> configuration
--> > --> of
--> > --> > -->            security information.  By default no such
--> > --> configuration
--> > --> is
--> > --> > -->            required however - should it be used in
--> > --> any specific
--> > --> > scenario
--> > --> > -->
--> > --> > -->            - it is possible (either deliberately or
--> > --> inadvertently)
--> > --> to
--> > --> > -->            configure neighboring RBridges so 
--> that they do
--> not
--> > --> > cooperate.
--> > --> > -->
--> > --> > -->            In the remainder of this document, 
--> all RBridges
--> are
--> > --> assumed
--> > --> > -->            to be in a cooperating (default) 
--> configuration.
--> > --> > -->
--> > --> > --> Sgai 18> can RBridges cooperate in groups, e.g. four
--> Rbridges
--> > --> > connected
--> > --> > --> to a LAN cooperating two and two?
--> > --> > -->
--> > --> >
--> > --> > Yes.  There may be reasons why this might be done 
--> deliberately,
--> > --> however
--> > --> > - even in the absence of any "proof of concept"
--> > --> justification - it is
--> > --> a
--> > --> > really good idea to design the protocol to be robust in
--> > --> cases where a
--> > --> > set of RBridges may be (mis)configured in such a way as
--> > --> to be unable
--> > --> to
--> > --> > discover each other.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Ingress RBridge Tree: a tree 
--> computed for each
--> edge
--> > --> RBridge
--> > --> > -->            and potentially for each VLAN in which that
--> RBridge
--> > --> > -->
--> > --> > --> sgai 19> why for each VLAN? I got the 
--> impression that there
--> > --> > --> was a single tree that was pruned differently for
--> > --> different VLANs.
--> > --> > -->
--> > --> >
--> > --> > Pruning may also take place at the ingress, if - for
--> > --> example - it has
--> > --> a
--> > --> > subset of interfaces that are not connected to any 
--> egress for
--> > --> particular
--> > --> > VLANs.  It is a small point but, in such cases, there is in
--> effect
--> > --> more
--> > --> > than one IRT even at the ingress.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            participates - for delivery of broadcast,
--> > --> multicast and
--> > --> > -->            flooded frames from that RBridge to all
--> > --> relevant egress
--> > --> > -->            RBridges. This is the point-to-multipoint
--> > --> delivery tree
--> > --> > used
--> > --> > -->            by an ingress RBridge to deliver
--> > --> multicast, broadcast
--> > --> or
--> > --> > -->            flooded traffic.
--> > --> > -->
--> > --> > --> Sgai 20> the current version of the proposal 
--> speaks about a
--> > --> multicast
--> > --> > --> address, not point-to-point.
--> > --> > -->
--> > --> >
--> > --> > I did not say "point-to-point" (look again).
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  LPT: Learned Port Table. See 
--> Filtering Database.
--> > --> > -->
--> > --> > --> Sgai 21> not proper terminology, I would use
--> > --> "filtering database"
--> > --> > --> everywhere.
--> > --> > -->
--> > --> >
--> > --> > I am happy to remove this if there is no objection 
--> to my doing
--> so.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 22> I wired port is Ehernet, i.e. IEEE 802.3, a
--> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (sgai 8) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 23> they learn because STP guarantees
--> > --> symmetrical forwarding
--> > --> > -->
--> > --> >
--> > --> > This (apparently) refers to the immeditately preceding text:
--> > --> >
--> > --> >         Conventional bridges contain a learned port table
--> > --> (LPT), or
--> > --> >         filtering database, and a spanning tree table
--> > --> (STT). The LPT
--> > --> >         allows a bridge to avoid flooding all received
--> > --> frames, as is
--> > --> >         typical for a hub or repeater. The bridge learns
--> > --> which nodes
--> > --> are
--> > --> >         accessible from a particular port by assuming
--> > --> bi-directional
--> > --> >         consistency:
--> > --> >
--> > --> > I'm not sure how picking at the peculiarities of 
--> STP behavior is
--> > --> > relevant to this description.  STP results in a 
--> single spanning
--> > --> > tree where each link is bi-directional.  This 
--> ensures that the
--> > --> > MAC frames are forwarded in a bi-directionally consistent
--> fashion.
--> > --> >
--> > --> > To replace this text with yours is to provide less 
--> information.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 24> active ports -> forwarding ports
--> > --> > -->
--> > --> >
--> > --> > "Active ports" was the exact wording suggested to me.  In
--> > --> context for
--> > --> > this working group "active ports" is more meaningful than
--> > --> "forwarding
--> > --> > ports."  For people not used to STP-speak, "forwarding
--> > --> port" might be
--> > --> > used to discriminate from a "code port."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 25> there is no STT, there is a state associated
--> > --> with each
--> > --> port
--> > --> > --> that can be: disabled, blocking, listening, 
--> learning, and
--> > --> forwarding
--> > --> > -->
--> > --> >
--> > --> > Other than the issue with terminology, is this text 
--> wrong?  I am
--> > --> fairly
--> > --> > sure that different implementations handle the "port state"
--> > --> information
--> > --> > in different ways, and I am also reasonably sure that a
--> > --> "table" such
--> > --> as
--> > --> > the one described here is one of the ways it might be done.
--> > --> >
--> > --> > However, I agree with your assertion that this is the way
--> > --> that it is
--> > --> > usually talked about in an IEEE context, so - 
--> unless there are
--> > --> specific
--> > --> > objections - I can change the wording to be consistent
--> > --> with what you
--> > --> > suggest.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 26> disabled -> blocking
--> > --> > -->
--> > --> >
--> > --> > I can make this change as well.  However, from the
--> > --> perspective of what
--> > --> > we are trying to do, "disabled" is potentially a more
--> > --> correct term.
--> > --> It
--> > --> > is certainly more intuitively correct, outside of a
--> > --> strictly IEEE/STP
--> > --> > context.
--> > --> >
--> > --> > Symmetry is maintained in STP by blocking ports/links
--> > --> bi-directionally.
--> > --> > In such cases, a port is effectively disabled for bridges
--> > --> at either
--> > --> end
--> > --> > of the link for which a port is blocked, is it not?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 27> I repeat a comment that I have made to other
--> > --> documents: "
--> > --> > --> The discussion about VLAN needs to be much more
--> > --> extensive. It is
--> > --> clear
--> > --> > --> from the mailing list discussion that VLANs can be
--> > --> used inside the
--> > --> > --> packet or in the Ethernet encapsulation of TRILL.
--> > --> These are two
--> > --> > --> different kinds of VLANs and their requirement need
--> > --> to be stated
--> > --> > --> separately. Q in Q needs also to be discussed. I
--> > --> propose to define
--> > --> > inner
--> > --> > --> and outer VLANs (with reference to the position of
--> > --> the tag in the
--> > --> > frame."
--> > --> > --> Here I think we are talking about outer VLANs
--> > --> > -->
--> > --> >
--> > --> > I responded to this in separate mail.  I wait to hear
--> > --> other opinions
--> > --> on
--> > --> > this subject.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 28> IMO all RBridges must be ingress RBridges,
--> > --> at least to
--> > --> > support
--> > --> > --> inband management, e.g. SNMP.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > In order to ensure symmetry with RBridges not
--> > --> participating in STP,
--> > --> there
--> > --> > MUST be a designated RBridge that does all of the 
--> sending and
--> > --> receiving
--> > --> > of native encapsulated frames on a LAN segment.
--> > --> >
--> > --> > Any RBridge the loses the "Designated RBridge" 
--> election cannot
--> be
--> > --> either
--> > --> > an ingress or an egress for that LAN segment.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 29> same as above
--> > --> > -->
--> > --> >
--> > --> > Same as above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 30> I think the previous definition is not needed.
--> > --> > -->
--> > --> >
--> > --> > This appears to refer to:
--> > --> >
--> > --> >         o  Local RBridge - the RBridge that forms and
--> > --> maintains the
--> > --> CFT-
--> > --> >            IRT entry (or entries) under discussion. The
--> > --> local RBridge
--> > --> >            may be an Ingress RBridge, or an egress 
--> RBridge with
--> > --> respect
--> > --> >            to any set of entries in the CFT-IRT.
--> > --> >
--> > --> > This defintion is needed.  It is subsequently used 
--> in at least 4
--> > --> places.
--> > --> > When discussing the behavior of a specific RBridge
--> > --> relative to a peer,
--> > --> > it is convenient to define the term "local RBridge."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 31> why is it zero or more, if an RBridge 
--> exists, it
--> must
--> > --> have
--> > --> > --> a an IRT, I haven't seen any discussion to support
--> > --> multiple IRTs.
--> > --> > -->
--> > --> >
--> > --> > This was answered previously on the mailing list.
--> > --> Briefly, zero or
--> > --> > more is correct, given that an RBridge may not have
--> > --> forwarding entries
--> > --> > for frames it has received.  In these cases, a frame is
--> > --> not forwarded.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 32> I don't understand this. Since the current
--> > --> proposal uses
--> > --> a
--> > --> > --> multicast MAC address, what is needed is a bit map
--> > --> for each IRT
--> > --> that
--> > --> > --> says which ports are blocking and which are
--> > --> forwarding. You are
--> > --> > --> basically building a ST using ISIS.
--> > --> > -->
--> > --> >
--> > --> > This might be the case for a specific implementation.
--> > --> Whether it is
--> > --> > implemented as a "bit-mask" with "non-blocking"
--> > --> (forwarding) ports, or
--> > --> > is implemented as a full-blown table is largely dependent on
--> what
--> > --> other
--> > --> > information the local device requires in order to
--> > --> properly forwad the
--> > --> > frame.  If - for example - a device has multiple
--> > --> different port types,
--> > --> > it may need to have more information for each port (or that
--> > --> information
--> > --> > may be added later on).
--> > --> >
--> > --> > All of these are implementation choices that are
--> > --> logically represented
--> > --> > by the table described here.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 33> I don't get the pair.
--> > --> > -->
--> > --> >
--> > --> > Since this immediately follows:
--> > --> >
--> > --> >         Each entry would contain an indication of 
--> which single
--> > --> interface
--> > --> >         a broadcast, multicast or flooded frame would be
--> > --> forwarded for
--> > --> >         each (ingress RBridge, egress RBridge) pair.
--> > --> >
--> > --> > I don't get what you don't get.
--> > --> >
--> > --> > The pair refers to the tuple "(ingress RBridge, egress
--> RBridge)."
--> > --> >
--> > --> > This might be the point at which your earlier point (Sgai 4)
--> would
--> > --> make
--> > --> > sense to insert.  I had logically modeled this in my own
--> > --> mind as two
--> > --> > distinct "interfaces" (the reason I use this term, rather
--> > --> thhan port),
--> > --> > but I should clarify this.
--> > --> >
--> > --> > In any case, the entries are keyed by both ingress and
--> > --> egress RBridge.
--> > --> > While there will be entries for only those egress
--> > --> RBridges where this
--> > --> > local RBridge is on the shortest path (between the given
--> > --> ingress and
--> > --> > egress pair), there will be at most one entry per 
--> any ingress
--> and
--> > --> > egress pair.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 34> as a matter of fact each interface is
--> > --> basically a set of
--> > --> two
--> > --> > --> interfaces, a regular one and a tunnel one, and the
--> > --> > forwarding/blocking
--> > --> > --> state may be different for the two.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > As per my response to your point (Sgai 28) above, not
--> > --> every RBridge
--> > --> has a
--> > --> > "regular one" as you describe here.
--> > --> >
--> > --> > The forwarding/blocking state is not applicable as
--> > --> RBridges don't do
--> > --> STP.
--> > --> >
--> > --> > For the native interface, fowarding/blocking state is
--> > --> analogous to the
--> > --> > "Designated RBridge" election process.
--> > --> >
--> > --> > Since this point evidently applies to -
--> > --> >
--> > --> >                                                      Entries
--> would
--> > --> also
--> > --> >         contain any required encapsulation information,
--> > --> etc. required
--> > --> >         for forwarding on a given interface, and toward a
--> > --> corresponding
--> > --> >         specific egress RBridge.
--> > --> >
--> > --> > - your point, and my response, are related to the point
--> > --> (and response)
--> > --> > above (Sgai 33), and I will try to clarify this 
--> part as well.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 35> this protocol must be designed to avoid
--> > --> transient loops,
--> > --> > since
--> > --> > --> transient loops of multicast/broadcast cause
--> > --> broadcast storm that
--> > --> are
--> > --> > --> highly undesirable.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > The protocol needs to include a provision to prevent
--> > --> _use_ of links
--> > --> that
--> > --> > may connect to transient loops.  Using a link-state
--> > --> routing protocol
--> > --> has
--> > --> > clearly been demostrated to produce transient loops, but
--> > --> the problem
--> > --> you
--> > --> > want to address has to do with using those links.
--> > --> >
--> > --> > A state-machine driven mechanism similar to STP might be
--> > --> the approach
--> > --> to
--> > --> > use.
--> > --> >
--> > --> > Because we're incorporating TTL in the SHIM, however this
--> > --> would need
--> > --> to
--> > --> > apply only to IRT traffic.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->
--> > --> > --> Sgai 36> see my previous comment about VLANs
--> > --> > -->
--> > --> >
--> > --> > See my previous responses.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 37> disabled -> blocking.
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (sgai 26) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 38> for multicast/broadcast we also need to
--> > --> avoid transient
--> > --> > loops.
--> > --> > -->
--> > --> >
--> > --> > Yes.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
--> > --> processes, why
--> > --> do
--> > --> > we
--> > --> > --> want to couple their timers?
--> > --> > -->
--> > --> >
--> > --> > I am not suggesting "coupling their timers."  I am 
--> saying that
--> the
--> > --> value
--> > --> > chosen for a timer (if one is used) to determine when it
--> > --> is reasonable
--> > --> to
--> > --> > start RBridge peer discovery should take into 
--> account the time
--> it
--> > --> takes
--> > --> > for the local spanning tree resolution.
--> > --> >
--> > --> > I feel the reason for this is self-evident but, just to
--> > --> clarify, think
--> > --> > about the process we're planning to use to determine RBridge
--> > --> nick-names.
--> > --> > If we start this too early, we will be re-starting it
--> > --> many times as we
--> > --> > "hear from" new RBridge peers when the connecting links go
--> active
--> > --> after
--> > --> > local bridges go to the forwarding state.  This would
--> > --> apply only at
--> > --> the
--> > --> > system start up as - after that - you are quite correct
--> > --> in asserting
--> > --> it
--> > --> > would be an ongoing process.
--> > --> >
--> > --> > Perhaps I should add some words to indicate that a delay
--> > --> would not be
--> > --> > necessary if the protocol mechanisms do not introduce
--> > --> instability as a
--> > --> > new peer is discovered.  So far, I have not seen any
--> > --> indication that a
--> > --> > "race-free" solution to accomplish this has been designed
--> > --> - or talked
--> > --> > about.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 40> there is also a requirement to time-out learnt
--> > --> information to
--> > --> > --> maintain the filtering databases.
--> > --> > -->
--> > --> >
--> > --> > There would be, if we were doing that.  Instead, 
--> we're adopting
--> a
--> > --> > link-state routing protocol and they tend to have 
--> that covered.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 41> periodically or on demand
--> > --> > -->
--> > --> >
--> > --> > See the response to your point (Sgai 40) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 42> potentially there is an unencapsulated
--> > --> interface for each
--> > --> > --> physical interface of the RBridge. It is true that
--> > --> you can model
--> > --> all
--> > --> > --> of them as a single separate logical interface, but
--> > --> then we need
--> > --> to
--> > --> > --> replicate the frame according to a bitmask that tells on
--> which
--> > --> > physical
--> > --> > --> interface the RBridge is designated.
--> > --> > -->
--> > --> >
--> > --> > Again, your use of a "bitmask" is an implementation
--> > --> choice as opposed
--> > --> > to a logical model.
--> > --> >
--> > --> > As you observe, I do "model all of them as a single
--> > --> separate logical
--> > --> > interface" and if you want to "replicate the frame 
--> according to
--> a
--> > --> > bitmask that tells on which physical interface the 
--> RBridge is
--> > --> > designated" - you're absolutely free to do so.
--> > --> >
--> > --> > Personally, I think this is far too much implementation
--> > --> stuff for a
--> > --> > protocol specification, let alone an architecture document.
--> > --> >
--> > --> > -->
--> > --> > --> Sgai 43> can we clarify that this means "drop BPDUs".
--> > --> > -->
--> > --> >
--> > --> > Yes.
--> > --> >
--> > --> > -- [snip --
--> > -->
--> 
_______________________________________________
rbridge mailing list
[email-masked]
http://mailman.postel.org/mailman/listinfo/rbridge

Date: Wed, 01 Nov 2006 12:45:31 -0500
To: [email-masked]
From: "Joel M. Halpern" <[email-masked]>
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.t xt
Status: RO
Content-Length: 464

With regard to the multiple path support, my understanding of the 
charter was that it was intended to permit the usage of multiple 
paths by traffic from different places.  I.e. to lift the restriction 
of STP to a single tree for the entire bridged network.
I did not think that it meant that traffic from a given ingress to a 
given egress was supposed to be able to use multiple paths, although 
I can see how a reader would get that.

Yours,
Joel M. Halpern

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 12:45:33 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 42323

Silvano,

	I think that there may be a compromise we can arrive at here.

	I propose changing the defintion of "Ethernet" to read:

'Ethernet: In this document the term "Ethernet" is used to represent
 Ethernet-like and/or Ethernet-equivalent technologies - explicitly
 including 802.3 [802.3 ref], 802.1Q [802.Q ref] and other closely 
 related LAN technologies, and NOT explicitly excluding any other 
 Ethernet-like and/or Ethernet-equivalent technology that exists, or
 may be developed in the future.'

	Using this definition should clarify that I am not necessarily
using the term in the way that some people may feel it should be used,
while clearly stating what I am using the term to mean.  This should
also reduce your concern that I am apprently equating Ethernet and 
802 in general.  It also satisfies my intention to be inclusive.

	How does this sound?

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 1:21 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> 
--> Eric,
--> 
--> I disagree.
--> 
--> I don't think it is wise for TRILL to redefine the term Ethernet.
--> Ethernet is a term that has a well known meaning in the industry.
--> The original definition is:
--> Digital Equipment Corporation, Intel, Xerox, The Ethernet, 
--> Version 2.0,
--> November 1982.
--> Which has been then standardized by IEEE 802.3.
--> 
--> To speak about other IEEE 802 standards that are alive and 
--> used, IEEE
--> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet 
--> Ring Working)
--> have nothing to do with Ethernet.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Tuesday, October 31, 2006 2:44 PM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	To be perfectly frank, I am unaware of any reason not to include
--> > token ring or any other obsolete form of "Ethernet equivalent
--> technology"
--> > - this is one of the reason to focus on the SHIM as 
--> separate from any
--> > specific encapsulation above or below the SHIM.
--> > 
--> > 	If you want to check it against all 802 activities, that's fine.
--> > I would suggest, however, that even though people are 
--> realistically
--> not
--> > going to implement most of the hairy/scary versions in an 
--> RBridge, I
--> do
--> > not know of a good reason to exclude them at this point.  
--> In abstract,
--> > it is certainly possible that people will be able to work out
--> specifics
--> > of implementation - if and when they decide to do so.
--> > 
--> > 	After all, we (the industry) have been building translation
--> bridges
--> > for these technologies for decades.
--> > 
--> > 	However, I am open to scoping the architecture to apply only to
--> a
--> > limited subset of 802 technologies, if that is what would 
--> make people
--> > happy...
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Tuesday, October 31, 2006 5:34 PM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > -->
--> > --> Eric,
--> > -->
--> > --> A quick reply:
--> > --> Are you telling me that the term Ethernet includes Token Ring,
--> Token
--> > --> Bus, DQDB?
--> > -->
--> > --> This is what you are doing when you say that Ethernet 
--> is IEEE 802
--> > --> instead of IEEE 802.3.
--> > -->
--> > --> This is NOT a terminology issue. If the term Ethernet means
--> > --> 802 I need
--> > --> to check the operation of TRILL against all the 802 
--> technologies.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 4> an RBridge must be also able to send 
--> two copies of a
--> > --> > --> unicast/multicast/broadcast packet on the same 
--> port when it
--> > --> > --> acts as a designated RBridge (one copy is 
--> encapsulated, the
--> > --> > --> other not).
--> > --> > -->
--> > --> >
--> > --> > This, I think, refers to the immediately preceding 
--> text in the
--> > --> > architecture:
--> > --> >
--> > --> >         Forwarding information is derived from the 
--> combination
--> of
--> > --> >         attached MAC address learning, snooping of
--> > --> multicast-related
--> > --> >         protocols (e.g. - IGMP), and routing
--> > --> advertisements and path
--> > --> >         computations using the link-state routing protocol.
--> > --> >
--> > --> > While your comment is a reasonable one - although 
--> potentially
--> > --> > implementation specific - it does not appear to 
--> have any bearing
--> > --> > on this text.
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 5> here there is some confusion between 
--> 802 and 802.3
--> > --> > -->
--> > --> >
--> > --> > This  refers (I believe) to the immeditately preceding text:
--> > --> >
--> > --> >         The following terminology is defined in 
--> other documents.
--> A
--> > --> brief
--> > --> >         definition is included in this section for
--> > --> convenience and -
--> > --> in
--> > --> >         some cases - to remove any ambiguity in how the
--> > --> term may be
--> > --> used
--> > --> >         in this document, as well as derivative documents
--> > --> intended to
--> > --> >         specify components, protocol, behavior and 
--> encapsulation
--> > --> >         relative to the architecture specified in 
--> this document.
--> > --> >
--> > --> >         o  802: IEEE Specification for the Ethernet
--> architecture,
--> > --> i.e.,
--> > --> >            including hubs and bridges.
--> > --> >
--> > --> > In this text, I explicitly state that these terms 
--> are defined
--> > --> elsewhere.
--> > --> > I am also trying to use the most generic definition 
--> of Ethernet
--> > --> possible.
--> > --> >
--> > --> > The reason for this is that the problem statement does
--> > --> not restrict
--> > --> the
--> > --> > solution to 802.3.
--> > --> >
--> > --> > There is some confusion in referring to 802.3 in 
--> any case: we
--> > --> explicitly
--> > --> > want to include 802.1Q - as well as all of its 
--> variations and
--> > --> extensions.
--> > --> >
--> > --> > Consequently, we define the term Ethernet in the broadest
--> possible
--> > --> sense.
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > -->        o  Bridge Spanning Tree (BST): an Ethernet (L2,
--> 802.1D)
--> > --> > -->           forwarding protocol based on the topology
--> > --> of a spanning
--> > --> > tree.
--> > --> > -->
--> > --> > --> Sgai 6> I have never seen the acronym BST, 
--> everyone use STP.
--> > --> > -->
--> > --> >
--> > --> > I do not know if this term is used in any of the other
--> documents,
--> > --> > but it is not used in this one.  Unless someone 
--> objects, I am
--> only
--> > --> > too happy to remove it from this document.
--> > --> >
--> > --> > From a historical perspective, this was defined this way
--> > --> originally
--> > --> > because we were re-using the term spanning tree instead
--> > --> of IRT.  It
--> > --> > was causing amazing communication difficulties, so 
--> we came up
--> with
--> > --> > the term IRT.  Now we don't need to differentiate BST.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (Sgai 5) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
--> > --> multiple ports
--> > --> which
--> > --> > -->
--> > --> > --> sgai 8> for Hub is better to reference 802.3
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (Sgai 5) above.  By the
--> > --> definition we
--> > --> > provide in this document, Ethernet is defined 
--> broadly to include
--> > --> > 802 technologies.  This is reasonable, because the term was
--> stolen
--> > --> > by IEEE from a technology stolen from a satellite 
--> communication
--> > --> > protocol.  Ironic that 802.3 does not include wireless, all
--> things
--> > --> > considered.  Certainly the term "Ethernet" should...
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Node: a device with an L2 (MAC) address
--> > --> that sources
--> > --> and/or
--> > --> > -->            sinks L2 frames.
--> > --> > -->
--> > --> > --> Sgai 9> The IEEE term is "station".
--> > --> > -->
--> > --> >
--> > --> > However, we in the IETF are more familiar with the 
--> term "node."
--> > --> >
--> > --> > This is hardly a significant issue.  if people agree that
--> > --> we should
--> > --> > use the term "station" as opposed to "node", then I will
--> > --> change it.
--> > --> >
--> > --> > Note that we should be consistent in this usage, if we
--> > --> decide to do
--> > --> > yet another terminology evolution.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Segment: an Ethernet link, either a single
--> physical
--> > --> link or
--> > --> > -->            emulation thereof (e.g., via hubs) or a
--> > --> logical link or
--> > --> > -->            emulation thereof (e.g., via bridges).
--> > --> > -->
--> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
--> > --> > -->
--> > --> >
--> > --> > I agree, however this is the definition we agreed on here.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Subnet, Ethernet: a single segment, 
--> or a set of
--> > --> segments
--> > --> > -->            interconnected by a CRED (see 
--> section 2.2); in
--> the
--> > --> latter
--> > --> > -->
--> > --> > --> sgai 11> There is no concept of subnet in IEEE. 
--> Subnet is
--> > --> typically
--> > --> > --> an IP subnet, and, even if it is common to have 
--> one subnet
--> per
--> > --> LAN,
--> > --> > --> this is not the only possibility. Pragmatically 
--> IP subnets
--> and
--> > --> > --> Ethernet LAN are unrelated concepts.
--> > --> > -->
--> > --> >
--> > --> > Again, we are defining this term for use in this
--> > --> document.  Does its
--> > --> > use (not its definition) cause confusion or ambiguity?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            case, the subnet may or may not be 
--> equivalent to
--> a
--> > --> single
--> > --> > -->            segment. Also a subnet may be 
--> referred to as a
--> > --> broadcast
--> > --> > -->            domain or LAN. By definition, all 
--> nodes within an
--> > --> Ethernet
--> > --> > -->            Subnet (broadcast domain or LAN) must have L2
--> > --> connectivity
--> > --> > -->            with all other nodes in the same 
--> Ethernet subnet.
--> > --> > -->
--> > --> > -->         o  TRILL: Transparent Interconnect over Lots
--> > --> of Links -
--> > --> the
--> > --> > -->            working group and working name for the
--> > --> problem domain
--> > --> to be
--> > --> > -->            addressed in this document.
--> > --> > -->
--> > --> > -->         o  Unicast Forwarding: forwarding methods
--> > --> that apply to
--> > --> frames
--> > --> > -->            with unicast destination MAC addresses.
--> > --> > -->
--> > --> > -->         o  Unknown Destination - a destination 
--> for which a
--> > --> receiving
--> > --> > -->            device has no filtering database entry.
--> > --> Destination
--> > --> (layer
--> > --> > -->
--> > --> > --> sgai 12> the stations receive the unknown 
--> unicast and have
--> > --> filtering
--> > --> > --> information, only the bridges don't. I propose to
--> > --> replace device
--> > --> with
--> > --> > --> bridge.
--> > --> > -->
--> > --> >
--> > --> > Again, it is the intention to provide as broad a 
--> definition as
--> > --> possible
--> > --> > without introducing confusion or ambiguity.  An end node
--> > --> (or station)
--> > --> > has - in a sense - a filtering database (it's mine, or
--> > --> it's for the
--> > --> bit
--> > --> > bucket).
--> > --> >
--> > --> > We need to explicitly include 802.1D forwarding devices
--> > --> and RBridges.
--> > --> >
--> > --> > However, the definition should specify "forwarding 
--> device" - as
--> > --> opposed
--> > --> > to just "receiving device."
--> > --> >
--> > --> > I will change that.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            2) addresses are typically "learned" 
--> by (layer 2)
--> > --> > forwarding
--> > --> > -->            devices via a process commonly referred to
--> > --> as "bridge
--> > --> > learning".
--> > --> > -->
--> > --> > --> Sgai 13> in IEEE, the term used is "learning" instead
--> > --> of "bridge
--> > --> > learning"
--> > --> > -->
--> > --> >
--> > --> > However, the term defined in this document is 
--> "bridge learning."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  VLAN: Virtual Local Area Network. VLANs in
--> > --> general fall
--> > --> > into
--> > --> > -->            two categories: link (or port) 
--> specific VLANs and
--> > --> tagged
--> > --> > -->            VLANs. In the former case, all frames
--> > --> forwarded and all
--> > --> > -->            directly connected nodes are assumed to be
--> > --> part of a
--> > --> single
--> > --> > -->            VLAN.  In the latter case, VLAN tagged
--> > --> frames are used
--> > --> to
--> > --> > -->            distinguish which VLAN each frame is intended
--> for.
--> > --> > -->
--> > --> > --> Sgai 14> This definition is not completely correct, I
--> prefer:
--> > --> > -->
--> > --> > --> VLAN technology introduces the following three 
--> basic types
--> of
--> > --> frame:
--> > --> > --> a) Untagged frames;
--> > --> > --> b) Priority-tagged frames; and
--> > --> > --> c) VLAN-tagged frames.
--> > --> > -->
--> > --> > --> An untagged frame or a priority-tagged frame does not
--> > --> carry any
--> > --> > --> identification of the VLAN to which it belongs. Such
--> > --> frames are
--> > --> > --> classified as belonging to a particular VLAN based on
--> > --> parameters
--> > --> > --> associated with the receiving Port, or, through 
--> proprietary
--> > --> extensions
--> > --> > --> to IEEE 802.1Q standard, based on the data content of
--> > --> the frame
--> > --> (e.g.,
--> > --> > --> MAC Address, layer 3 protocol ID, etc.).
--> > --> > -->
--> > --> > --> A VLAN-tagged frame carries an explicit
--> > --> identification of the VLAN
--> > --> to
--> > --> > --> which it belongs; i.e., it carries a tag header 
--> that carries
--> a
--> > --> non-
--> > --> > null
--> > --> > --> VID. Such a frame is classified as belonging to a
--> > --> particular VLAN
--> > --> > based
--> > --> > --> on the value of the VID that is included in the tag
--> > --> header. The
--> > --> > presence
--> > --> > --> of the tag header carrying a non-null VID means that
--> > --> some other
--> > --> > device,
--> > --> > --> either the originator of the frame or a 
--> VLAN-aware Bridge,
--> has
--> > --> mapped
--> > --> > --> this frame into a VLAN and has inserted the 
--> appropriate VID.
--> > --> > -->
--> > --> >
--> > --> > So, you're getting into the details of the 
--> technology and - in
--> > --> particular
--> > --> > the encapsulation.  I will expand the definition to 
--> include a
--> > --> possibility
--> > --> > that other criteria may be used to define a "VLAN port" -
--> although
--> > --> this is
--> > --> > isomorphic to a logical model in which a device
--> > --> implementation uses
--> > --> some
--> > --> > criteria to decide that a subset of the traffic received
--> > --> on a specific
--> > --> > physical port is to be forwarded as if received on a
--> > --> specific logical
--> > --> > port.
--> > --> >
--> > --> > The key point in this definition is that a VLAN is a
--> > --> "Virtual LAN" -
--> > --> > meaning
--> > --> > it consists of a subset of the physical and L2 connectivity
--> > --> corresponding
--> > --> > to
--> > --> > a "logical LAN."  The intent is to "rise above" the
--> technological
--> > --> > approaches
--> > --> > and encapsulations to establish a generic definition that
--> > --> is loosely
--> > --> tied
--> > --> > to
--> > --> >
--> > --> > ways that this generic definition is actually implemented.
--> > --> >
--> > --> > Again, bearing in mind the way that the term is 
--> defined, does
--> the
--> > --> usage of
--> > --> > the term cause confusion or ambiguity?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Forwarding Table (CFT): the per-hop
--> forwarding
--> > --> table
--> > --> > -->            populated by the RBridge Routing Protocol;
--> > --> forwarding
--> > --> > within
--> > --> > -->            the CRED is based on a lookup of the 
--> CRED Transit
--> > --> Header
--> > --> > -->            (CTH) encapsulated within the 
--> outermost received
--> L2
--> > --> header.
--> > --> > -->            The outermost L2 encapsulation in this
--> > --> case includes
--> > --> the
--> > --> > -->            source MAC address of the immediate
--> > --> upstream RBridge
--> > --> > -->            transmitting the frame and destination MAC
--> > --> address of
--> > --> the
--> > --> > -->            receiving RBridge for use in the unicast
--> forwarding
--> > --> case.
--> > --> > -->
--> > --> > --> Sgai 15> In section 7 of
--> > --> > -->
--> > --> 
--> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
--> > --> > 00.txt
--> > --> > --> we proposed that when two rbridges are 
--> connected by a point
--> to
--> > --> point
--> > --> > --> link the outer MAC addresses may be set to a
--> > --> predefined value in
--> > --> > --> transmission and ignored in reception.
--> > --> > -->
--> > --> >
--> > --> > I'm not sure how your proposal intends to determine that
--> > --> a link is in
--> > --> > fact point-to-point and does not just look that way.
--> > --> >
--> > --> > I prefer to use the same encapsulation in all cases where it
--> will
--> > --> work.
--> > --> >
--> > --> > The optimization associated with using some form of
--> > --> null-encapsulation
--> > --> > is of dubious value, given that it may not be possible to
--> > --> be certain a
--> > --> > point-to-point link is - and will remain - in fact a
--> > --> point-to-point
--> > --> > link.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CFT-IRT: a forwarding table used for 
--> propagation
--> of
--> > --> > -->            broadcast, multicast or flooded 
--> frames along the
--> > --> Ingress
--> > --> > -->            RBridge Tree (IRT).
--> > --> > -->
--> > --> > --> Sgai 16> is it a forwarding table or is it a
--> > --> filtering database.
--> > --> Since
--> > --> > --> the "miss" behavior is to flood, I see it as a
--> > --> filtering database.
--> > --> > -->
--> > --> >
--> > --> > What state was "miss" behavior from - Hawaii?  :-)
--> > --> >
--> > --> > It is analogous to a filtering database entry, but it is not
--> that.
--> > --> >
--> > --> > Clearly there are more things in this world than can be
--> classified
--> > --> > in this taxonomy.  However, given these choices, it is a
--> > --> forwarding
--> > --> > table.
--> > --> >
--> > --> > This is not a misbehavior, in that the same "base" tree
--> > --> is used for
--> > --> > broadcast and multicast traffic as well as flooded
--> > --> traffic.  It may
--> > --> > be arguable that flooding is a misbehavior, but I 
--> seem to recall
--> > --> > that people still see it as a necessary evil.
--> > --> >
--> > --> > It is also not "miss" behavior (as in "cache miss") in
--> > --> the multicast
--> > --> > and broadcast case, either.
--> > --> >
--> > --> > I believe the definition is quite correct and easy to
--> understand,
--> > --> > provided you're not reading it with preconceived 
--> misconceptions
--> > --> > about its meaning.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Transit Header (CTH): a 'shim' 
--> header that
--> > --> > encapsulates
--> > --> > -->            the ingress L2 frame and persists 
--> throughout the
--> > --> transit of
--> > --> > a
--> > --> >
--> > --> > -->            CRED, which is further encapsulated within
--> > --> a hop-by-hop
--> > --> L2
--> > --> > -->            header (and trailer). The hop-by-hop L2
--> > --> encapsulation
--> > --> in
--> > --> > this
--> > --> >
--> > --> > -->            case includes the source MAC address of
--> > --> the immediate
--> > --> > -->            upstream RBridge transmitting the frame
--> > --> and destination
--> > --> MAC
--> > --> > -->            address of the receiving RBridge - 
--> at least in
--> the
--> > --> unicast
--> > --> > -->            forwarding case.
--> > --> > -->
--> > --> > --> Sgai 17> is this true also for unknown unicast?
--> > --> > -->
--> > --> >
--> > --> > That is something that will be (may be already) 
--> decided in the
--> > --> protocol
--> > --> > specification.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Transit Table (CTT): a table that maps
--> ingress
--> > --> frame
--> > --> > L2
--> > --> > -->            destinations to egress RBridge 
--> addresses, used to
--> > --> determine
--> > --> > -->            encapsulation of ingress frames for 
--> transit of
--> the
--> > --> CRED.
--> > --> > -->
--> > --> > -->         o  Cooperating RBridges - those RBridges
--> > --> within a single
--> > --> > -->            Ethernet Subnet (broadcast domain or LAN)
--> > --> not having
--> > --> been
--> > --> > -->            configured to ignore each other. By 
--> default, all
--> > --> RBridges
--> > --> > -->            within a single Ethernet subnet will 
--> cooperate
--> with
--> > --> each
--> > --> > -->            other. It is possible for implementations
--> > --> to allow for
--> > --> > -->            configuration that will restrict
--> > --> "cooperation" between
--> > --> an
--> > --> > -->            RBridge and an apparent neighboring 
--> RBridge.  One
--> > --> reason
--> > --> > why
--> > --> > -->            this might occur is if the trust model
--> > --> that applies in
--> > --> a
--> > --> > -->            particular deployment imposes a need for
--> > --> configuration
--> > --> of
--> > --> > -->            security information.  By default no such
--> > --> configuration
--> > --> is
--> > --> > -->            required however - should it be used in
--> > --> any specific
--> > --> > scenario
--> > --> > -->
--> > --> > -->            - it is possible (either deliberately or
--> > --> inadvertently)
--> > --> to
--> > --> > -->            configure neighboring RBridges so 
--> that they do
--> not
--> > --> > cooperate.
--> > --> > -->
--> > --> > -->            In the remainder of this document, 
--> all RBridges
--> are
--> > --> assumed
--> > --> > -->            to be in a cooperating (default) 
--> configuration.
--> > --> > -->
--> > --> > --> Sgai 18> can RBridges cooperate in groups, e.g. four
--> Rbridges
--> > --> > connected
--> > --> > --> to a LAN cooperating two and two?
--> > --> > -->
--> > --> >
--> > --> > Yes.  There may be reasons why this might be done 
--> deliberately,
--> > --> however
--> > --> > - even in the absence of any "proof of concept"
--> > --> justification - it is
--> > --> a
--> > --> > really good idea to design the protocol to be robust in
--> > --> cases where a
--> > --> > set of RBridges may be (mis)configured in such a way as
--> > --> to be unable
--> > --> to
--> > --> > discover each other.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Ingress RBridge Tree: a tree 
--> computed for each
--> edge
--> > --> RBridge
--> > --> > -->            and potentially for each VLAN in which that
--> RBridge
--> > --> > -->
--> > --> > --> sgai 19> why for each VLAN? I got the 
--> impression that there
--> > --> > --> was a single tree that was pruned differently for
--> > --> different VLANs.
--> > --> > -->
--> > --> >
--> > --> > Pruning may also take place at the ingress, if - for
--> > --> example - it has
--> > --> a
--> > --> > subset of interfaces that are not connected to any 
--> egress for
--> > --> particular
--> > --> > VLANs.  It is a small point but, in such cases, there is in
--> effect
--> > --> more
--> > --> > than one IRT even at the ingress.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            participates - for delivery of broadcast,
--> > --> multicast and
--> > --> > -->            flooded frames from that RBridge to all
--> > --> relevant egress
--> > --> > -->            RBridges. This is the point-to-multipoint
--> > --> delivery tree
--> > --> > used
--> > --> > -->            by an ingress RBridge to deliver
--> > --> multicast, broadcast
--> > --> or
--> > --> > -->            flooded traffic.
--> > --> > -->
--> > --> > --> Sgai 20> the current version of the proposal 
--> speaks about a
--> > --> multicast
--> > --> > --> address, not point-to-point.
--> > --> > -->
--> > --> >
--> > --> > I did not say "point-to-point" (look again).
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  LPT: Learned Port Table. See 
--> Filtering Database.
--> > --> > -->
--> > --> > --> Sgai 21> not proper terminology, I would use
--> > --> "filtering database"
--> > --> > --> everywhere.
--> > --> > -->
--> > --> >
--> > --> > I am happy to remove this if there is no objection 
--> to my doing
--> so.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 22> I wired port is Ehernet, i.e. IEEE 802.3, a
--> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (sgai 8) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 23> they learn because STP guarantees
--> > --> symmetrical forwarding
--> > --> > -->
--> > --> >
--> > --> > This (apparently) refers to the immeditately preceding text:
--> > --> >
--> > --> >         Conventional bridges contain a learned port table
--> > --> (LPT), or
--> > --> >         filtering database, and a spanning tree table
--> > --> (STT). The LPT
--> > --> >         allows a bridge to avoid flooding all received
--> > --> frames, as is
--> > --> >         typical for a hub or repeater. The bridge learns
--> > --> which nodes
--> > --> are
--> > --> >         accessible from a particular port by assuming
--> > --> bi-directional
--> > --> >         consistency:
--> > --> >
--> > --> > I'm not sure how picking at the peculiarities of 
--> STP behavior is
--> > --> > relevant to this description.  STP results in a 
--> single spanning
--> > --> > tree where each link is bi-directional.  This 
--> ensures that the
--> > --> > MAC frames are forwarded in a bi-directionally consistent
--> fashion.
--> > --> >
--> > --> > To replace this text with yours is to provide less 
--> information.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 24> active ports -> forwarding ports
--> > --> > -->
--> > --> >
--> > --> > "Active ports" was the exact wording suggested to me.  In
--> > --> context for
--> > --> > this working group "active ports" is more meaningful than
--> > --> "forwarding
--> > --> > ports."  For people not used to STP-speak, "forwarding
--> > --> port" might be
--> > --> > used to discriminate from a "code port."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 25> there is no STT, there is a state associated
--> > --> with each
--> > --> port
--> > --> > --> that can be: disabled, blocking, listening, 
--> learning, and
--> > --> forwarding
--> > --> > -->
--> > --> >
--> > --> > Other than the issue with terminology, is this text 
--> wrong?  I am
--> > --> fairly
--> > --> > sure that different implementations handle the "port state"
--> > --> information
--> > --> > in different ways, and I am also reasonably sure that a
--> > --> "table" such
--> > --> as
--> > --> > the one described here is one of the ways it might be done.
--> > --> >
--> > --> > However, I agree with your assertion that this is the way
--> > --> that it is
--> > --> > usually talked about in an IEEE context, so - 
--> unless there are
--> > --> specific
--> > --> > objections - I can change the wording to be consistent
--> > --> with what you
--> > --> > suggest.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 26> disabled -> blocking
--> > --> > -->
--> > --> >
--> > --> > I can make this change as well.  However, from the
--> > --> perspective of what
--> > --> > we are trying to do, "disabled" is potentially a more
--> > --> correct term.
--> > --> It
--> > --> > is certainly more intuitively correct, outside of a
--> > --> strictly IEEE/STP
--> > --> > context.
--> > --> >
--> > --> > Symmetry is maintained in STP by blocking ports/links
--> > --> bi-directionally.
--> > --> > In such cases, a port is effectively disabled for bridges
--> > --> at either
--> > --> end
--> > --> > of the link for which a port is blocked, is it not?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 27> I repeat a comment that I have made to other
--> > --> documents: "
--> > --> > --> The discussion about VLAN needs to be much more
--> > --> extensive. It is
--> > --> clear
--> > --> > --> from the mailing list discussion that VLANs can be
--> > --> used inside the
--> > --> > --> packet or in the Ethernet encapsulation of TRILL.
--> > --> These are two
--> > --> > --> different kinds of VLANs and their requirement need
--> > --> to be stated
--> > --> > --> separately. Q in Q needs also to be discussed. I
--> > --> propose to define
--> > --> > inner
--> > --> > --> and outer VLANs (with reference to the position of
--> > --> the tag in the
--> > --> > frame."
--> > --> > --> Here I think we are talking about outer VLANs
--> > --> > -->
--> > --> >
--> > --> > I responded to this in separate mail.  I wait to hear
--> > --> other opinions
--> > --> on
--> > --> > this subject.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 28> IMO all RBridges must be ingress RBridges,
--> > --> at least to
--> > --> > support
--> > --> > --> inband management, e.g. SNMP.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > In order to ensure symmetry with RBridges not
--> > --> participating in STP,
--> > --> there
--> > --> > MUST be a designated RBridge that does all of the 
--> sending and
--> > --> receiving
--> > --> > of native encapsulated frames on a LAN segment.
--> > --> >
--> > --> > Any RBridge the loses the "Designated RBridge" 
--> election cannot
--> be
--> > --> either
--> > --> > an ingress or an egress for that LAN segment.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 29> same as above
--> > --> > -->
--> > --> >
--> > --> > Same as above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 30> I think the previous definition is not needed.
--> > --> > -->
--> > --> >
--> > --> > This appears to refer to:
--> > --> >
--> > --> >         o  Local RBridge - the RBridge that forms and
--> > --> maintains the
--> > --> CFT-
--> > --> >            IRT entry (or entries) under discussion. The
--> > --> local RBridge
--> > --> >            may be an Ingress RBridge, or an egress 
--> RBridge with
--> > --> respect
--> > --> >            to any set of entries in the CFT-IRT.
--> > --> >
--> > --> > This defintion is needed.  It is subsequently used 
--> in at least 4
--> > --> places.
--> > --> > When discussing the behavior of a specific RBridge
--> > --> relative to a peer,
--> > --> > it is convenient to define the term "local RBridge."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 31> why is it zero or more, if an RBridge 
--> exists, it
--> must
--> > --> have
--> > --> > --> a an IRT, I haven't seen any discussion to support
--> > --> multiple IRTs.
--> > --> > -->
--> > --> >
--> > --> > This was answered previously on the mailing list.
--> > --> Briefly, zero or
--> > --> > more is correct, given that an RBridge may not have
--> > --> forwarding entries
--> > --> > for frames it has received.  In these cases, a frame is
--> > --> not forwarded.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 32> I don't understand this. Since the current
--> > --> proposal uses
--> > --> a
--> > --> > --> multicast MAC address, what is needed is a bit map
--> > --> for each IRT
--> > --> that
--> > --> > --> says which ports are blocking and which are
--> > --> forwarding. You are
--> > --> > --> basically building a ST using ISIS.
--> > --> > -->
--> > --> >
--> > --> > This might be the case for a specific implementation.
--> > --> Whether it is
--> > --> > implemented as a "bit-mask" with "non-blocking"
--> > --> (forwarding) ports, or
--> > --> > is implemented as a full-blown table is largely dependent on
--> what
--> > --> other
--> > --> > information the local device requires in order to
--> > --> properly forwad the
--> > --> > frame.  If - for example - a device has multiple
--> > --> different port types,
--> > --> > it may need to have more information for each port (or that
--> > --> information
--> > --> > may be added later on).
--> > --> >
--> > --> > All of these are implementation choices that are
--> > --> logically represented
--> > --> > by the table described here.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 33> I don't get the pair.
--> > --> > -->
--> > --> >
--> > --> > Since this immediately follows:
--> > --> >
--> > --> >         Each entry would contain an indication of 
--> which single
--> > --> interface
--> > --> >         a broadcast, multicast or flooded frame would be
--> > --> forwarded for
--> > --> >         each (ingress RBridge, egress RBridge) pair.
--> > --> >
--> > --> > I don't get what you don't get.
--> > --> >
--> > --> > The pair refers to the tuple "(ingress RBridge, egress
--> RBridge)."
--> > --> >
--> > --> > This might be the point at which your earlier point (Sgai 4)
--> would
--> > --> make
--> > --> > sense to insert.  I had logically modeled this in my own
--> > --> mind as two
--> > --> > distinct "interfaces" (the reason I use this term, rather
--> > --> thhan port),
--> > --> > but I should clarify this.
--> > --> >
--> > --> > In any case, the entries are keyed by both ingress and
--> > --> egress RBridge.
--> > --> > While there will be entries for only those egress
--> > --> RBridges where this
--> > --> > local RBridge is on the shortest path (between the given
--> > --> ingress and
--> > --> > egress pair), there will be at most one entry per 
--> any ingress
--> and
--> > --> > egress pair.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 34> as a matter of fact each interface is
--> > --> basically a set of
--> > --> two
--> > --> > --> interfaces, a regular one and a tunnel one, and the
--> > --> > forwarding/blocking
--> > --> > --> state may be different for the two.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > As per my response to your point (Sgai 28) above, not
--> > --> every RBridge
--> > --> has a
--> > --> > "regular one" as you describe here.
--> > --> >
--> > --> > The forwarding/blocking state is not applicable as
--> > --> RBridges don't do
--> > --> STP.
--> > --> >
--> > --> > For the native interface, fowarding/blocking state is
--> > --> analogous to the
--> > --> > "Designated RBridge" election process.
--> > --> >
--> > --> > Since this point evidently applies to -
--> > --> >
--> > --> >                                                      Entries
--> would
--> > --> also
--> > --> >         contain any required encapsulation information,
--> > --> etc. required
--> > --> >         for forwarding on a given interface, and toward a
--> > --> corresponding
--> > --> >         specific egress RBridge.
--> > --> >
--> > --> > - your point, and my response, are related to the point
--> > --> (and response)
--> > --> > above (Sgai 33), and I will try to clarify this 
--> part as well.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 35> this protocol must be designed to avoid
--> > --> transient loops,
--> > --> > since
--> > --> > --> transient loops of multicast/broadcast cause
--> > --> broadcast storm that
--> > --> are
--> > --> > --> highly undesirable.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > The protocol needs to include a provision to prevent
--> > --> _use_ of links
--> > --> that
--> > --> > may connect to transient loops.  Using a link-state
--> > --> routing protocol
--> > --> has
--> > --> > clearly been demostrated to produce transient loops, but
--> > --> the problem
--> > --> you
--> > --> > want to address has to do with using those links.
--> > --> >
--> > --> > A state-machine driven mechanism similar to STP might be
--> > --> the approach
--> > --> to
--> > --> > use.
--> > --> >
--> > --> > Because we're incorporating TTL in the SHIM, however this
--> > --> would need
--> > --> to
--> > --> > apply only to IRT traffic.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->
--> > --> > --> Sgai 36> see my previous comment about VLANs
--> > --> > -->
--> > --> >
--> > --> > See my previous responses.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 37> disabled -> blocking.
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (sgai 26) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 38> for multicast/broadcast we also need to
--> > --> avoid transient
--> > --> > loops.
--> > --> > -->
--> > --> >
--> > --> > Yes.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
--> > --> processes, why
--> > --> do
--> > --> > we
--> > --> > --> want to couple their timers?
--> > --> > -->
--> > --> >
--> > --> > I am not suggesting "coupling their timers."  I am 
--> saying that
--> the
--> > --> value
--> > --> > chosen for a timer (if one is used) to determine when it
--> > --> is reasonable
--> > --> to
--> > --> > start RBridge peer discovery should take into 
--> account the time
--> it
--> > --> takes
--> > --> > for the local spanning tree resolution.
--> > --> >
--> > --> > I feel the reason for this is self-evident but, just to
--> > --> clarify, think
--> > --> > about the process we're planning to use to determine RBridge
--> > --> nick-names.
--> > --> > If we start this too early, we will be re-starting it
--> > --> many times as we
--> > --> > "hear from" new RBridge peers when the connecting links go
--> active
--> > --> after
--> > --> > local bridges go to the forwarding state.  This would
--> > --> apply only at
--> > --> the
--> > --> > system start up as - after that - you are quite correct
--> > --> in asserting
--> > --> it
--> > --> > would be an ongoing process.
--> > --> >
--> > --> > Perhaps I should add some words to indicate that a delay
--> > --> would not be
--> > --> > necessary if the protocol mechanisms do not introduce
--> > --> instability as a
--> > --> > new peer is discovered.  So far, I have not seen any
--> > --> indication that a
--> > --> > "race-free" solution to accomplish this has been designed
--> > --> - or talked
--> > --> > about.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 40> there is also a requirement to time-out learnt
--> > --> information to
--> > --> > --> maintain the filtering databases.
--> > --> > -->
--> > --> >
--> > --> > There would be, if we were doing that.  Instead, 
--> we're adopting
--> a
--> > --> > link-state routing protocol and they tend to have 
--> that covered.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 41> periodically or on demand
--> > --> > -->
--> > --> >
--> > --> > See the response to your point (Sgai 40) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 42> potentially there is an unencapsulated
--> > --> interface for each
--> > --> > --> physical interface of the RBridge. It is true that
--> > --> you can model
--> > --> all
--> > --> > --> of them as a single separate logical interface, but
--> > --> then we need
--> > --> to
--> > --> > --> replicate the frame according to a bitmask that tells on
--> which
--> > --> > physical
--> > --> > --> interface the RBridge is designated.
--> > --> > -->
--> > --> >
--> > --> > Again, your use of a "bitmask" is an implementation
--> > --> choice as opposed
--> > --> > to a logical model.
--> > --> >
--> > --> > As you observe, I do "model all of them as a single
--> > --> separate logical
--> > --> > interface" and if you want to "replicate the frame 
--> according to
--> a
--> > --> > bitmask that tells on which physical interface the 
--> RBridge is
--> > --> > designated" - you're absolutely free to do so.
--> > --> >
--> > --> > Personally, I think this is far too much implementation
--> > --> stuff for a
--> > --> > protocol specification, let alone an architecture document.
--> > --> >
--> > --> > -->
--> > --> > --> Sgai 43> can we clarify that this means "drop BPDUs".
--> > --> > -->
--> > --> >
--> > --> > Yes.
--> > --> >
--> > --> > -- [snip --
--> > -->
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 12:32:08 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 5607

Silvano,

	Let's leave-off restating our cases, and simply let others 
comment on what they think is meant by this phrase in the charter.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 12:22 PM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
-arch-01.txt
--> 
--> Eric,
--> 
--> If the sentence "load-splitting among multiple paths", does not mean
--> Layer 2 ECMP, what does it mean?
--> 
--> How can I split the load among multiple paths, without doing
--> multipathing?
--> 
--> To split the load, I need at least two paths, If they are not Equal
--> Cost, what are they?
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 9:09 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	There is a difference.  I've been participating in this working
--> > group for some time, and I have not heard anyone suggest 
--> using L2 ECMP
--> > is what the charter means by "load-splitting among 
--> multiple paths."
--> > 
--> > 	However, I agree we need to be fair.  Consequently, let's ask
--> > other people to weigh in on this issue.  You assert that 
--> the charter
--> > means to include L2 ECMP as an explicit requirement of 
--> the TRILL work.
--> > I assert that it does not.
--> > 
--> > 	What do other people say?
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Wednesday, November 01, 2006 11:29 AM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > --> Eric,
--> > -->
--> > --> When I propose something that is not in the charter, it is
--> > --> out of scope
--> > --> because not in the charter; when I propose something 
--> that is in
--> the
--> > --> charter, it is out of scope because "this is not what 
--> the charter
--> is
--> > --> meant to
--> > --> describe."
--> > -->
--> > --> Let's be fair!
--> > -->
--> > --> IMHO, if TRILL does not support Layer 2 ECMP, it is not
--> > --> interesting at
--> > --> all for us. All the interest in replacing Spanning Tree is
--> > --> to get Layer
--> > --> 2 ECMP.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Wednesday, November 01, 2006 8:20 AM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> > Silvano,
--> > --> >
--> > --> > 	As I said in my other reply, this is not what the
--> charter is
--> > --> meant
--> > --> > to
--> > --> > describe.
--> > --> >
--> > --> > --
--> > --> > Eric
--> > --> >
--> > --> > --> -----Original Message-----
--> > --> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> > --> Sent: Wednesday, November 01, 2006 1:08 AM
--> > --> > --> To: Gray, Eric
--> > --> > --> Cc: [email-masked]
--> > --> > --> Subject: RE: [rbridge] Comments on:
--> > --> > --> 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> > --> -arch-01.txt
--> > --> > -->
--> > --> > -->
--> > --> > --> Eric,
--> > --> > -->
--> > --> > --> The charter says:
--> > --> > --> "load-splitting among multiple paths"
--> > --> > --> The pragmatic way to achieve this is to 
--> implement Layer 2
--> ECMP
--> > --> > -->
--> > --> > --> -- Silvano
--> > --> > -->
--> > --> > -->
--> > --> > --> > -----Original Message-----
--> > --> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > --> > Sent: Tuesday, October 31, 2006 9:25 AM
--> > --> > --> > To: Silvano Gai
--> > --> > --> > Cc: [email-masked]
--> > --> > --> > Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-
--> > --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> > --> >
--> > --> > --> > Silvano,
--> > --> > --> >
--> > --> > --> > 	See below...
--> > --> > --> >
--> > --> > --> > --
--> > --> > --> > Eric
--> > --> > --> >
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 2> I think we should explicitly 
--> mention layer 2
--> > --> > --> multipath.
--> > --> > --> > -->
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > What do you mean by layer 2 multipath?
--> > --> > --> >
--> > --> > --> > Do you mean "link bundling" or something else?
--> > --> > --> >
--> > --> > --> > Are we trying now to apply ECMP to routing 
--> advertisements
--> > --> > --> for layer
--> > --> > --> > two reachability?  That's a big step, particularly
--> > --> when we need
--> > --> to
--> > --> > --> > retain compatibility with existing 802.1 bridges.
--> > --> > --> >
--> > --> > --> > I don't recall seeing anything about this in 
--> the problem
--> > --> statement
--> > --> > --> > document, so I don't know of any reason why we should
--> > --> > --> include it in
--> > --> > --> > the architecture.
--> > --> > --> >
--> > --> > --> > --
--> > --> > --> > Eric
--> > --> > -->
--> > -->
--> 

From: "Gray, Eric" <[email-masked]>
To: Russ White <[email-masked]>, Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 12:31:38 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr	 aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 1722

Russ,

	Just to amplify, I did not say anyone would necessarily be
breaking the interoperability model by implementing an ECMP-like
approach for L2 in their TRILL implementation.  What I said was 
that - if this is considered out of scope for TRILL work, then 
anyone who implements a proprietary (or subsequent standard) L2
ECMP-like approach would be responsible for ensuring that their
implementation works with (by that time) existing RBridges.

--
Eric

--> -----Original Message-----
--> From: Russ White [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 12:16 PM
--> To: Silvano Gai
--> Cc: Gray, Eric; [email-masked]
--> Subject: Re: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/dr 
--> aft-ietf-trill-rbridge-arch-01.txt
--> 
--> -----BEGIN PGP SIGNED MESSAGE-----
--> Hash: SHA1
--> 
--> 
--> >>>> 	The notion of using a L2 version of ECMP is - 
--> IMO - in no way
--> >>>> implied
--> >>>> by the text in the charter.  Nor is there any explicit 
--> intention to
--> > preclude
--> >>>> this type of activity - with the caveat that anyone 
--> doing so has to
--> > assume
--> >>>> responsibility for not "breaking" the interoperability model.
--> > 
--> >> Why are you breaking the interoperability model?
--> 
--> That's a quote from Eric, not me.... I'm not convinced you 
--> are or aren't.
--> 
--> :-)
--> 
--> Russ
--> 
--> 
--> - --
--> [email-masked] CCIE <>< Grace Alone
--> 
--> -----BEGIN PGP SIGNATURE-----
--> Version: GnuPG v1.4.2.2 (MingW32)
--> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> 
--> iD8DBQFFSNYzER27sUhU9OQRAo69AJ4lk+k+94ohK3+4deY7ylKBDUA8nACfUS2P
--> VNXpx0HqsCabI5GWAT86HUY=
--> =j/oK
--> -----END PGP SIGNATURE-----
--> 

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 09:22:10 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 4489

Eric,

If the sentence "load-splitting among multiple paths", does not mean
Layer 2 ECMP, what does it mean?

How can I split the load among multiple paths, without doing
multipathing?

To split the load, I need at least two paths, If they are not Equal
Cost, what are they?

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 9:09 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
> drafts/draft-ietf-trill-rbridge-arch-01.txt
> 
> Silvano,
> 
> 	There is a difference.  I've been participating in this working
> group for some time, and I have not heard anyone suggest using L2 ECMP
> is what the charter means by "load-splitting among multiple paths."
> 
> 	However, I agree we need to be fair.  Consequently, let's ask
> other people to weigh in on this issue.  You assert that the charter
> means to include L2 ECMP as an explicit requirement of the TRILL work.
> I assert that it does not.
> 
> 	What do other people say?
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 11:29 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> -arch-01.txt
> -->
> --> Eric,
> -->
> --> When I propose something that is not in the charter, it is
> --> out of scope
> --> because not in the charter; when I propose something that is in
the
> --> charter, it is out of scope because "this is not what the charter
is
> --> meant to
> --> describe."
> -->
> --> Let's be fair!
> -->
> --> IMHO, if TRILL does not support Layer 2 ECMP, it is not
> --> interesting at
> --> all for us. All the interest in replacing Spanning Tree is
> --> to get Layer
> --> 2 ECMP.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Wednesday, November 01, 2006 8:20 AM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] Comments on:
http://www.ietf.org/internet-
> --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> >
> --> > Silvano,
> --> >
> --> > 	As I said in my other reply, this is not what the
charter is
> --> meant
> --> > to
> --> > describe.
> --> >
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: Silvano Gai [mailto:[email-masked]]
> --> > --> Sent: Wednesday, November 01, 2006 1:08 AM
> --> > --> To: Gray, Eric
> --> > --> Cc: [email-masked]
> --> > --> Subject: RE: [rbridge] Comments on:
> --> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> > --> -arch-01.txt
> --> > -->
> --> > -->
> --> > --> Eric,
> --> > -->
> --> > --> The charter says:
> --> > --> "load-splitting among multiple paths"
> --> > --> The pragmatic way to achieve this is to implement Layer 2
ECMP
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > -->
> --> > --> > -----Original Message-----
> --> > --> > From: Gray, Eric [mailto:[email-masked]]
> --> > --> > Sent: Tuesday, October 31, 2006 9:25 AM
> --> > --> > To: Silvano Gai
> --> > --> > Cc: [email-masked]
> --> > --> > Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-
> --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> > --> >
> --> > --> > Silvano,
> --> > --> >
> --> > --> > 	See below...
> --> > --> >
> --> > --> > --
> --> > --> > Eric
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 2> I think we should explicitly mention layer 2
> --> > --> multipath.
> --> > --> > -->
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> >
> --> > --> > What do you mean by layer 2 multipath?
> --> > --> >
> --> > --> > Do you mean "link bundling" or something else?
> --> > --> >
> --> > --> > Are we trying now to apply ECMP to routing advertisements
> --> > --> for layer
> --> > --> > two reachability?  That's a big step, particularly
> --> when we need
> --> to
> --> > --> > retain compatibility with existing 802.1 bridges.
> --> > --> >
> --> > --> > I don't recall seeing anything about this in the problem
> --> statement
> --> > --> > document, so I don't know of any reason why we should
> --> > --> include it in
> --> > --> > the architecture.
> --> > --> >
> --> > --> > --
> --> > --> > Eric
> --> > -->
> -->

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, Russ White <[email-masked]>
Date: Wed, 1 Nov 2006 12:17:19 -0500 
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 2854

Silvano,

	Actually these sort of "scaling questions" are exactly why we don't
currently include necessarily making the TRILL/RBridge solution "more  
scalable" than Ethernet is now.  It is unlikely that we will ever agree
on exactly what is and is not "feasible."  

	However, we do have an implied goal of not deliberately limiting 
scalability of a TRILL/RBridge solution - at least for arbitrary reasons 
- and I maintain that trying to fit the SHIM into a 48-bit alignment (as 
opposed to the 32-bit alignment usually preferred in the IETF) is a pretty 
arbitrary reason.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:55 AM
--> To: Russ White
--> Cc: Gray, Eric; Radia Perlman; [email-masked]
--> Subject: RE: [rbridge] New shim header proposal---without 
--> F-tag field
--> 
--> 
--> What is a stretch is 32K trees of 32K nodes, which is what 
--> you need if
--> you want to deploy the current TRILL proposal with 32K RBridges.
--> 
--> Eric says that we need to accommodate half a million RBridges.
--> Half a million tree of half a million nodes is unfeasible.
--> 
--> If we want to support such a large number of Rbridges, we 
--> need to modify
--> the current Trill proposal, reducing the number of trees 
--> that need to be
--> computed.
--> 
--> Agreed?
--> 
--> -- Silvano
--> 
--> 
--> > -----Original Message-----
--> > From: Russ White [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 8:35 AM
--> > To: Silvano Gai
--> > Cc: Gray, Eric; Radia Perlman; [email-masked]
--> > Subject: Re: [rbridge] New shim header proposal---without 
--> F-tag field
--> > 
--> > -----BEGIN PGP SIGNED MESSAGE-----
--> > Hash: SHA1
--> > 
--> > 
--> > >> 	I don't think there is consensus yet that we 
--> only need 16 bits
--> > >> for RBridge IDs.
--> > >
--> > > With 16 bits, using 1 bit to indicate unicast, we can have 32K
--> switches.
--> > > According to the current definition of TRILL, there is 
--> the need to
--> run
--> > > Djikstra on a database with 32K records, one time for the core
--> instance
--> > > and 32K times for the IRTs. This is clearly out of 
--> reach even for
--> the
--> > > most powerful CPU.
--> > 
--> > ?? Perhaps 32k trees is a stretch, but 32k nodes in a 
--> tree? I don't
--> > think that's really a stretch on today's processors, from 
--> the scaling
--> > work I've seen done in IS-IS.
--> > 
--> > :-)
--> > 
--> > Russ
--> > 
--> > - --
--> > [email-masked] CCIE <>< Grace Alone
--> > 
--> > -----BEGIN PGP SIGNATURE-----
--> > Version: GnuPG v1.4.2.2 (MingW32)
--> > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> > 
--> > iD8DBQFFSMypER27sUhU9OQRAqLwAJ9FLN2YNP2mrB6i0ZcV1fxLzAT0hgCfYHYj
--> > 6mJCA68nQLjCD8US9nRZZag=
--> > =kwzq
--> > -----END PGP SIGNATURE-----
--> 

Date: Wed, 01 Nov 2006 12:15:31 -0500
From: Russ White <[email-masked]>
To: Silvano Gai <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 798

>>>> 	The notion of using a L2 version of ECMP is - IMO - in no way
>>>> implied
>>>> by the text in the charter.  Nor is there any explicit intention to
> preclude
>>>> this type of activity - with the caveat that anyone doing so has to
> assume
>>>> responsibility for not "breaking" the interoperability model.
> 
>> Why are you breaking the interoperability model?

That's a quote from Eric, not me.... I'm not convinced you are or aren't.

:-)

Russ

- --
[email-masked] CCIE <>< Grace Alone

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 12:09:11 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 3686

Silvano,

	There is a difference.  I've been participating in this working
group for some time, and I have not heard anyone suggest using L2 ECMP
is what the charter means by "load-splitting among multiple paths." 

	However, I agree we need to be fair.  Consequently, let's ask 
other people to weigh in on this issue.  You assert that the charter 
means to include L2 ECMP as an explicit requirement of the TRILL work.  
I assert that it does not.

	What do other people say?

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:29 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> Eric,
--> 
--> When I propose something that is not in the charter, it is 
--> out of scope
--> because not in the charter; when I propose something that is in the
--> charter, it is out of scope because "this is not what the charter is
--> meant to
--> describe."
--> 
--> Let's be fair!
--> 
--> IMHO, if TRILL does not support Layer 2 ECMP, it is not 
--> interesting at
--> all for us. All the interest in replacing Spanning Tree is 
--> to get Layer
--> 2 ECMP.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 8:20 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	As I said in my other reply, this is not what the charter is
--> meant
--> > to
--> > describe.
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Wednesday, November 01, 2006 1:08 AM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > -->
--> > --> Eric,
--> > -->
--> > --> The charter says:
--> > --> "load-splitting among multiple paths"
--> > --> The pragmatic way to achieve this is to implement Layer 2 ECMP
--> > -->
--> > --> -- Silvano
--> > -->
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Tuesday, October 31, 2006 9:25 AM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> > Silvano,
--> > --> >
--> > --> > 	See below...
--> > --> >
--> > --> > --
--> > --> > Eric
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 2> I think we should explicitly mention layer 2
--> > --> multipath.
--> > --> > -->
--> > --> > -- [snip] --
--> > --> > -->
--> > --> >
--> > --> > What do you mean by layer 2 multipath?
--> > --> >
--> > --> > Do you mean "link bundling" or something else?
--> > --> >
--> > --> > Are we trying now to apply ECMP to routing advertisements
--> > --> for layer
--> > --> > two reachability?  That's a big step, particularly 
--> when we need
--> to
--> > --> > retain compatibility with existing 802.1 bridges.
--> > --> >
--> > --> > I don't recall seeing anything about this in the problem
--> statement
--> > --> > document, so I don't know of any reason why we should
--> > --> include it in
--> > --> > the architecture.
--> > --> >
--> > --> > --
--> > --> > Eric
--> > -->
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 12:01:33 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 53594

Silvano,

	 I am under no obligation to offer a definition of Ethernet that is
acceptable to everyone.  If there is a "rough consensus" that this term is
"good enough" for our purposes, then it should be allowed to stand.  If,
on the other hand, you would like to propose alternate text that does not
make it more difficult to communicate the architectural ideas of this ID,
then I am all ears.

	IMO, the fact that you point out that 802.11, 802.17 and "Ethernet"
are all different standards, indicates to me that you're not getting the
point.  The point is that the TRILL/RBridge architecture is to be defined 
independent of the specific L2 that may be used by implementations.

	This is deliberately done in order to accomplish two things:

   1) To simplify architectural - and subsequent protocol - descriptions,
	and
   2) To permit flexibility in (protocol and) implementations of TRILL.

	Also, I will try to clarify another point.  Some people equate 802.3
with Ethernet.  Others do not.  In fact, many people equate "Ethernet" with
the superset of 802.3 that includes VLANs (802.1Q) and other technologies
that are similar.  In this case I explicitly adopt the most general of all
possible definitions - purposefully to be as inclusive as possible.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:48 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> Eric,
--> 
--> Ethernet, 802.11, and 802.17 are three different standards.
--> 
--> You are confusing the fact that there are wireless 
--> router/gateway that
--> offer an Ethernet port and therefore an RBridge can 
--> potentially connect
--> to that port to access stations or other Rbridges, with the 
--> fact that it
--> is possible to natively design an encapsulation of TRILL over IEEE
--> 802.11 or IEEE 802.17.
--> 
--> I cannot accept a definition of Ethernet that include IEEE 
--> 802.11 and
--> IEEE 802.17.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 8:39 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	History is not particularly relevant, but the term "Ethernet"
--> > was originally coined by its inventor, Bob Metcalfe (who - by the
--> > way - did not work for DEC, but worked instead for Xerox at PARC).
--> > 
--> > 	The Ethernet standard was subsequently developed as a joint
--> > effort involving DEC, Intel and Xerox.
--> > 
--> > 	By stating that - when I use the term "Ethernet" - I mean to
--> > include all LAN technologies under IEEE 802, I'm merely 
--> introducing
--> > a short-hand terminology.  In that sense, I am not re-defining the
--> > term, I am merely saying what I mean when I say 
--> "Ethernet."  If you
--> > read the text, you should see that I clearly state the 
--> intention to
--> > define the terminology the way that it will be used in 
--> the document.
--> > 
--> > 	I believe that is an appropriate technique, in this case.  I
--> > also regard this part of the "feedback" as "stylistic" 
--> since you are
--> > objecting to my using a term in the way that I defined it.  In the
--> > literature, there are plenty of examples of redefining terminology
--> > to facilitate understanding and communication.  In this 
--> case, using
--> > "Ethernet" in this fashion reduces the "communication overhead" we
--> > will encounter if I replace that term with either a single term I
--> > make up from scratch, or a compound phrase such as "802.3, 802.11,
--> > 802.1Q, etc."
--> > 
--> > 	For many of us, the term Ethernet already encompasses these
--> > additional technologies.
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Wednesday, November 01, 2006 1:21 AM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > -->
--> > --> Eric,
--> > -->
--> > --> I disagree.
--> > -->
--> > --> I don't think it is wise for TRILL to redefine the 
--> term Ethernet.
--> > --> Ethernet is a term that has a well known meaning in 
--> the industry.
--> > --> The original definition is:
--> > --> Digital Equipment Corporation, Intel, Xerox, The Ethernet,
--> > --> Version 2.0,
--> > --> November 1982.
--> > --> Which has been then standardized by IEEE 802.3.
--> > -->
--> > --> To speak about other IEEE 802 standards that are alive and
--> > --> used, IEEE
--> > --> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet
--> > --> Ring Working)
--> > --> have nothing to do with Ethernet.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Tuesday, October 31, 2006 2:44 PM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> > Silvano,
--> > --> >
--> > --> > 	To be perfectly frank, I am unaware of any reason not to
--> > include
--> > --> > token ring or any other obsolete form of "Ethernet 
--> equivalent
--> > --> technology"
--> > --> > - this is one of the reason to focus on the SHIM as
--> > --> separate from any
--> > --> > specific encapsulation above or below the SHIM.
--> > --> >
--> > --> > 	If you want to check it against all 802 activities,
--> that's
--> > fine.
--> > --> > I would suggest, however, that even though people are
--> > --> realistically
--> > --> not
--> > --> > going to implement most of the hairy/scary versions in an
--> > --> RBridge, I
--> > --> do
--> > --> > not know of a good reason to exclude them at this point.
--> > --> In abstract,
--> > --> > it is certainly possible that people will be able 
--> to work out
--> > --> specifics
--> > --> > of implementation - if and when they decide to do so.
--> > --> >
--> > --> > 	After all, we (the industry) have been building
--> translation
--> > --> bridges
--> > --> > for these technologies for decades.
--> > --> >
--> > --> > 	However, I am open to scoping the architecture to apply
--> only
--> > to
--> > --> a
--> > --> > limited subset of 802 technologies, if that is what would
--> > --> make people
--> > --> > happy...
--> > --> >
--> > --> > --
--> > --> > Eric
--> > --> >
--> > --> > --> -----Original Message-----
--> > --> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> > --> Sent: Tuesday, October 31, 2006 5:34 PM
--> > --> > --> To: Gray, Eric
--> > --> > --> Cc: [email-masked]
--> > --> > --> Subject: RE: [rbridge] Comments on:
--> > --> > --> 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> > --> -arch-01.txt
--> > --> > -->
--> > --> > -->
--> > --> > --> Eric,
--> > --> > -->
--> > --> > --> A quick reply:
--> > --> > --> Are you telling me that the term Ethernet includes Token
--> Ring,
--> > --> Token
--> > --> > --> Bus, DQDB?
--> > --> > -->
--> > --> > --> This is what you are doing when you say that Ethernet
--> > --> is IEEE 802
--> > --> > --> instead of IEEE 802.3.
--> > --> > -->
--> > --> > --> This is NOT a terminology issue. If the term 
--> Ethernet means
--> > --> > --> 802 I need
--> > --> > --> to check the operation of TRILL against all the 802
--> > --> technologies.
--> > --> > -->
--> > --> > --> -- Silvano
--> > --> > -->
--> > --> > --> > -----Original Message-----
--> > --> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
--> > --> > --> > To: Silvano Gai
--> > --> > --> > Cc: [email-masked]
--> > --> > --> > Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-
--> > --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> > --> >
--> > --> > --> >
--> > --> > --> >
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 4> an RBridge must be also able to send
--> > --> two copies of a
--> > --> > --> > --> unicast/multicast/broadcast packet on the same
--> > --> port when it
--> > --> > --> > --> acts as a designated RBridge (one copy is
--> > --> encapsulated, the
--> > --> > --> > --> other not).
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > This, I think, refers to the immediately preceding
--> > --> text in the
--> > --> > --> > architecture:
--> > --> > --> >
--> > --> > --> >         Forwarding information is derived from the
--> > --> combination
--> > --> of
--> > --> > --> >         attached MAC address learning, snooping of
--> > --> > --> multicast-related
--> > --> > --> >         protocols (e.g. - IGMP), and routing
--> > --> > --> advertisements and path
--> > --> > --> >         computations using the link-state routing
--> protocol.
--> > --> > --> >
--> > --> > --> > While your comment is a reasonable one - although
--> > --> potentially
--> > --> > --> > implementation specific - it does not appear to
--> > --> have any bearing
--> > --> > --> > on this text.
--> > --> > --> >
--> > --> > --> >
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 5> here there is some confusion between
--> > --> 802 and 802.3
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > This  refers (I believe) to the immeditately preceding
--> text:
--> > --> > --> >
--> > --> > --> >         The following terminology is defined in
--> > --> other documents.
--> > --> A
--> > --> > --> brief
--> > --> > --> >         definition is included in this section for
--> > --> > --> convenience and -
--> > --> > --> in
--> > --> > --> >         some cases - to remove any ambiguity 
--> in how the
--> > --> > --> term may be
--> > --> > --> used
--> > --> > --> >         in this document, as well as 
--> derivative documents
--> > --> > --> intended to
--> > --> > --> >         specify components, protocol, behavior and
--> > --> encapsulation
--> > --> > --> >         relative to the architecture specified in
--> > --> this document.
--> > --> > --> >
--> > --> > --> >         o  802: IEEE Specification for the Ethernet
--> > --> architecture,
--> > --> > --> i.e.,
--> > --> > --> >            including hubs and bridges.
--> > --> > --> >
--> > --> > --> > In this text, I explicitly state that these terms
--> > --> are defined
--> > --> > --> elsewhere.
--> > --> > --> > I am also trying to use the most generic definition
--> > --> of Ethernet
--> > --> > --> possible.
--> > --> > --> >
--> > --> > --> > The reason for this is that the problem statement does
--> > --> > --> not restrict
--> > --> > --> the
--> > --> > --> > solution to 802.3.
--> > --> > --> >
--> > --> > --> > There is some confusion in referring to 802.3 in
--> > --> any case: we
--> > --> > --> explicitly
--> > --> > --> > want to include 802.1Q - as well as all of its
--> > --> variations and
--> > --> > --> extensions.
--> > --> > --> >
--> > --> > --> > Consequently, we define the term Ethernet in 
--> the broadest
--> > --> possible
--> > --> > --> sense.
--> > --> > --> >
--> > --> > --> >
--> > --> > --> > -- [snip] --
--> > --> > --> > -->
--> > --> > --> > -->        o  Bridge Spanning Tree (BST): an 
--> Ethernet (L2,
--> > --> 802.1D)
--> > --> > --> > -->           forwarding protocol based on 
--> the topology
--> > --> > --> of a spanning
--> > --> > --> > tree.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 6> I have never seen the acronym BST,
--> > --> everyone use STP.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I do not know if this term is used in any of the other
--> > --> documents,
--> > --> > --> > but it is not used in this one.  Unless someone
--> > --> objects, I am
--> > --> only
--> > --> > --> > too happy to remove it from this document.
--> > --> > --> >
--> > --> > --> > From a historical perspective, this was 
--> defined this way
--> > --> > --> originally
--> > --> > --> > because we were re-using the term spanning 
--> tree instead
--> > --> > --> of IRT.  It
--> > --> > --> > was causing amazing communication difficulties, so
--> > --> we came up
--> > --> with
--> > --> > --> > the term IRT.  Now we don't need to differentiate BST.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > See my response to your point (Sgai 5) above.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
--> > --> > --> multiple ports
--> > --> > --> which
--> > --> > --> > -->
--> > --> > --> > --> sgai 8> for Hub is better to reference 802.3
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > See my response to your point (Sgai 5) above.  By the
--> > --> > --> definition we
--> > --> > --> > provide in this document, Ethernet is defined
--> > --> broadly to include
--> > --> > --> > 802 technologies.  This is reasonable, 
--> because the term
--> was
--> > --> stolen
--> > --> > --> > by IEEE from a technology stolen from a satellite
--> > --> communication
--> > --> > --> > protocol.  Ironic that 802.3 does not include 
--> wireless,
--> all
--> > --> things
--> > --> > --> > considered.  Certainly the term "Ethernet" should...
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  Node: a device with an L2 (MAC) address
--> > --> > --> that sources
--> > --> > --> and/or
--> > --> > --> > -->            sinks L2 frames.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 9> The IEEE term is "station".
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > However, we in the IETF are more familiar with the
--> > --> term "node."
--> > --> > --> >
--> > --> > --> > This is hardly a significant issue.  if 
--> people agree that
--> > --> > --> we should
--> > --> > --> > use the term "station" as opposed to "node", 
--> then I will
--> > --> > --> change it.
--> > --> > --> >
--> > --> > --> > Note that we should be consistent in this usage, if we
--> > --> > --> decide to do
--> > --> > --> > yet another terminology evolution.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  Segment: an Ethernet link, 
--> either a single
--> > --> physical
--> > --> > --> link or
--> > --> > --> > -->            emulation thereof (e.g., via hubs) or a
--> > --> > --> logical link or
--> > --> > --> > -->            emulation thereof (e.g., via bridges).
--> > --> > --> > -->
--> > --> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I agree, however this is the definition we 
--> agreed on here.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  Subnet, Ethernet: a single segment,
--> > --> or a set of
--> > --> > --> segments
--> > --> > --> > -->            interconnected by a CRED (see
--> > --> section 2.2); in
--> > --> the
--> > --> > --> latter
--> > --> > --> > -->
--> > --> > --> > --> sgai 11> There is no concept of subnet in IEEE.
--> > --> Subnet is
--> > --> > --> typically
--> > --> > --> > --> an IP subnet, and, even if it is common to have
--> > --> one subnet
--> > --> per
--> > --> > --> LAN,
--> > --> > --> > --> this is not the only possibility. Pragmatically
--> > --> IP subnets
--> > --> and
--> > --> > --> > --> Ethernet LAN are unrelated concepts.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Again, we are defining this term for use in this
--> > --> > --> document.  Does its
--> > --> > --> > use (not its definition) cause confusion or ambiguity?
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->            case, the subnet may or may not be
--> > --> equivalent to
--> > --> a
--> > --> > --> single
--> > --> > --> > -->            segment. Also a subnet may be
--> > --> referred to as a
--> > --> > --> broadcast
--> > --> > --> > -->            domain or LAN. By definition, all
--> > --> nodes within an
--> > --> > --> Ethernet
--> > --> > --> > -->            Subnet (broadcast domain or 
--> LAN) must have
--> L2
--> > --> > --> connectivity
--> > --> > --> > -->            with all other nodes in the same
--> > --> Ethernet subnet.
--> > --> > --> > -->
--> > --> > --> > -->         o  TRILL: Transparent 
--> Interconnect over Lots
--> > --> > --> of Links -
--> > --> > --> the
--> > --> > --> > -->            working group and working name for the
--> > --> > --> problem domain
--> > --> > --> to be
--> > --> > --> > -->            addressed in this document.
--> > --> > --> > -->
--> > --> > --> > -->         o  Unicast Forwarding: forwarding methods
--> > --> > --> that apply to
--> > --> > --> frames
--> > --> > --> > -->            with unicast destination MAC addresses.
--> > --> > --> > -->
--> > --> > --> > -->         o  Unknown Destination - a destination
--> > --> for which a
--> > --> > --> receiving
--> > --> > --> > -->            device has no filtering database entry.
--> > --> > --> Destination
--> > --> > --> (layer
--> > --> > --> > -->
--> > --> > --> > --> sgai 12> the stations receive the unknown
--> > --> unicast and have
--> > --> > --> filtering
--> > --> > --> > --> information, only the bridges don't. I propose to
--> > --> > --> replace device
--> > --> > --> with
--> > --> > --> > --> bridge.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Again, it is the intention to provide as broad a
--> > --> definition as
--> > --> > --> possible
--> > --> > --> > without introducing confusion or ambiguity.  
--> An end node
--> > --> > --> (or station)
--> > --> > --> > has - in a sense - a filtering database (it's mine, or
--> > --> > --> it's for the
--> > --> > --> bit
--> > --> > --> > bucket).
--> > --> > --> >
--> > --> > --> > We need to explicitly include 802.1D 
--> forwarding devices
--> > --> > --> and RBridges.
--> > --> > --> >
--> > --> > --> > However, the definition should specify "forwarding
--> > --> device" - as
--> > --> > --> opposed
--> > --> > --> > to just "receiving device."
--> > --> > --> >
--> > --> > --> > I will change that.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->            2) addresses are typically "learned"
--> > --> by (layer 2)
--> > --> > --> > forwarding
--> > --> > --> > -->            devices via a process commonly 
--> referred to
--> > --> > --> as "bridge
--> > --> > --> > learning".
--> > --> > --> > -->
--> > --> > --> > --> Sgai 13> in IEEE, the term used is 
--> "learning" instead
--> > --> > --> of "bridge
--> > --> > --> > learning"
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > However, the term defined in this document is
--> > --> "bridge learning."
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  VLAN: Virtual Local Area 
--> Network. VLANs in
--> > --> > --> general fall
--> > --> > --> > into
--> > --> > --> > -->            two categories: link (or port)
--> > --> specific VLANs and
--> > --> > --> tagged
--> > --> > --> > -->            VLANs. In the former case, all frames
--> > --> > --> forwarded and all
--> > --> > --> > -->            directly connected nodes are 
--> assumed to be
--> > --> > --> part of a
--> > --> > --> single
--> > --> > --> > -->            VLAN.  In the latter case, VLAN tagged
--> > --> > --> frames are used
--> > --> > --> to
--> > --> > --> > -->            distinguish which VLAN each frame is
--> intended
--> > --> for.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 14> This definition is not 
--> completely correct, I
--> > --> prefer:
--> > --> > --> > -->
--> > --> > --> > --> VLAN technology introduces the following three
--> > --> basic types
--> > --> of
--> > --> > --> frame:
--> > --> > --> > --> a) Untagged frames;
--> > --> > --> > --> b) Priority-tagged frames; and
--> > --> > --> > --> c) VLAN-tagged frames.
--> > --> > --> > -->
--> > --> > --> > --> An untagged frame or a priority-tagged 
--> frame does not
--> > --> > --> carry any
--> > --> > --> > --> identification of the VLAN to which it 
--> belongs. Such
--> > --> > --> frames are
--> > --> > --> > --> classified as belonging to a particular 
--> VLAN based on
--> > --> > --> parameters
--> > --> > --> > --> associated with the receiving Port, or, through
--> > --> proprietary
--> > --> > --> extensions
--> > --> > --> > --> to IEEE 802.1Q standard, based on the 
--> data content of
--> > --> > --> the frame
--> > --> > --> (e.g.,
--> > --> > --> > --> MAC Address, layer 3 protocol ID, etc.).
--> > --> > --> > -->
--> > --> > --> > --> A VLAN-tagged frame carries an explicit
--> > --> > --> identification of the VLAN
--> > --> > --> to
--> > --> > --> > --> which it belongs; i.e., it carries a tag header
--> > --> that carries
--> > --> a
--> > --> > --> non-
--> > --> > --> > null
--> > --> > --> > --> VID. Such a frame is classified as belonging to a
--> > --> > --> particular VLAN
--> > --> > --> > based
--> > --> > --> > --> on the value of the VID that is included 
--> in the tag
--> > --> > --> header. The
--> > --> > --> > presence
--> > --> > --> > --> of the tag header carrying a non-null VID 
--> means that
--> > --> > --> some other
--> > --> > --> > device,
--> > --> > --> > --> either the originator of the frame or a
--> > --> VLAN-aware Bridge,
--> > --> has
--> > --> > --> mapped
--> > --> > --> > --> this frame into a VLAN and has inserted the
--> > --> appropriate VID.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > So, you're getting into the details of the
--> > --> technology and - in
--> > --> > --> particular
--> > --> > --> > the encapsulation.  I will expand the definition to
--> > --> include a
--> > --> > --> possibility
--> > --> > --> > that other criteria may be used to define a 
--> "VLAN port" -
--> > --> although
--> > --> > --> this is
--> > --> > --> > isomorphic to a logical model in which a device
--> > --> > --> implementation uses
--> > --> > --> some
--> > --> > --> > criteria to decide that a subset of the 
--> traffic received
--> > --> > --> on a specific
--> > --> > --> > physical port is to be forwarded as if received on a
--> > --> > --> specific logical
--> > --> > --> > port.
--> > --> > --> >
--> > --> > --> > The key point in this definition is that a VLAN is a
--> > --> > --> "Virtual LAN" -
--> > --> > --> > meaning
--> > --> > --> > it consists of a subset of the physical and L2
--> connectivity
--> > --> > --> corresponding
--> > --> > --> > to
--> > --> > --> > a "logical LAN."  The intent is to "rise above" the
--> > --> technological
--> > --> > --> > approaches
--> > --> > --> > and encapsulations to establish a generic 
--> definition that
--> > --> > --> is loosely
--> > --> > --> tied
--> > --> > --> > to
--> > --> > --> >
--> > --> > --> > ways that this generic definition is actually 
--> implemented.
--> > --> > --> >
--> > --> > --> > Again, bearing in mind the way that the term is
--> > --> defined, does
--> > --> the
--> > --> > --> usage of
--> > --> > --> > the term cause confusion or ambiguity?
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  CRED Forwarding Table (CFT): 
--> the per-hop
--> > --> forwarding
--> > --> > --> table
--> > --> > --> > -->            populated by the RBridge 
--> Routing Protocol;
--> > --> > --> forwarding
--> > --> > --> > within
--> > --> > --> > -->            the CRED is based on a lookup of the
--> > --> CRED Transit
--> > --> > --> Header
--> > --> > --> > -->            (CTH) encapsulated within the
--> > --> outermost received
--> > --> L2
--> > --> > --> header.
--> > --> > --> > -->            The outermost L2 encapsulation in this
--> > --> > --> case includes
--> > --> > --> the
--> > --> > --> > -->            source MAC address of the immediate
--> > --> > --> upstream RBridge
--> > --> > --> > -->            transmitting the frame and 
--> destination MAC
--> > --> > --> address of
--> > --> > --> the
--> > --> > --> > -->            receiving RBridge for use in 
--> the unicast
--> > --> forwarding
--> > --> > --> case.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 15> In section 7 of
--> > --> > --> > -->
--> > --> > -->
--> > --> 
--> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
--> > --> > --> > 00.txt
--> > --> > --> > --> we proposed that when two rbridges are
--> > --> connected by a point
--> > --> to
--> > --> > --> point
--> > --> > --> > --> link the outer MAC addresses may be set to a
--> > --> > --> predefined value in
--> > --> > --> > --> transmission and ignored in reception.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I'm not sure how your proposal intends to 
--> determine that
--> > --> > --> a link is in
--> > --> > --> > fact point-to-point and does not just look that way.
--> > --> > --> >
--> > --> > --> > I prefer to use the same encapsulation in all 
--> cases where
--> it
--> > --> will
--> > --> > --> work.
--> > --> > --> >
--> > --> > --> > The optimization associated with using some form of
--> > --> > --> null-encapsulation
--> > --> > --> > is of dubious value, given that it may not be 
--> possible to
--> > --> > --> be certain a
--> > --> > --> > point-to-point link is - and will remain - in fact a
--> > --> > --> point-to-point
--> > --> > --> > link.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  CFT-IRT: a forwarding table used for
--> > --> propagation
--> > --> of
--> > --> > --> > -->            broadcast, multicast or flooded
--> > --> frames along the
--> > --> > --> Ingress
--> > --> > --> > -->            RBridge Tree (IRT).
--> > --> > --> > -->
--> > --> > --> > --> Sgai 16> is it a forwarding table or is it a
--> > --> > --> filtering database.
--> > --> > --> Since
--> > --> > --> > --> the "miss" behavior is to flood, I see it as a
--> > --> > --> filtering database.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > What state was "miss" behavior from - Hawaii?  :-)
--> > --> > --> >
--> > --> > --> > It is analogous to a filtering database 
--> entry, but it is
--> not
--> > --> that.
--> > --> > --> >
--> > --> > --> > Clearly there are more things in this world 
--> than can be
--> > --> classified
--> > --> > --> > in this taxonomy.  However, given these 
--> choices, it is a
--> > --> > --> forwarding
--> > --> > --> > table.
--> > --> > --> >
--> > --> > --> > This is not a misbehavior, in that the same 
--> "base" tree
--> > --> > --> is used for
--> > --> > --> > broadcast and multicast traffic as well as flooded
--> > --> > --> traffic.  It may
--> > --> > --> > be arguable that flooding is a misbehavior, but I
--> > --> seem to recall
--> > --> > --> > that people still see it as a necessary evil.
--> > --> > --> >
--> > --> > --> > It is also not "miss" behavior (as in "cache miss") in
--> > --> > --> the multicast
--> > --> > --> > and broadcast case, either.
--> > --> > --> >
--> > --> > --> > I believe the definition is quite correct and easy to
--> > --> understand,
--> > --> > --> > provided you're not reading it with preconceived
--> > --> misconceptions
--> > --> > --> > about its meaning.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  CRED Transit Header (CTH): a 'shim'
--> > --> header that
--> > --> > --> > encapsulates
--> > --> > --> > -->            the ingress L2 frame and persists
--> > --> throughout the
--> > --> > --> transit of
--> > --> > --> > a
--> > --> > --> >
--> > --> > --> > -->            CRED, which is further 
--> encapsulated within
--> > --> > --> a hop-by-hop
--> > --> > --> L2
--> > --> > --> > -->            header (and trailer). The hop-by-hop L2
--> > --> > --> encapsulation
--> > --> > --> in
--> > --> > --> > this
--> > --> > --> >
--> > --> > --> > -->            case includes the source MAC address of
--> > --> > --> the immediate
--> > --> > --> > -->            upstream RBridge transmitting the frame
--> > --> > --> and destination
--> > --> > --> MAC
--> > --> > --> > -->            address of the receiving RBridge -
--> > --> at least in
--> > --> the
--> > --> > --> unicast
--> > --> > --> > -->            forwarding case.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 17> is this true also for unknown unicast?
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > That is something that will be (may be already)
--> > --> decided in the
--> > --> > --> protocol
--> > --> > --> > specification.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  CRED Transit Table (CTT): a 
--> table that maps
--> > --> ingress
--> > --> > --> frame
--> > --> > --> > L2
--> > --> > --> > -->            destinations to egress RBridge
--> > --> addresses, used to
--> > --> > --> determine
--> > --> > --> > -->            encapsulation of ingress frames for
--> > --> transit of
--> > --> the
--> > --> > --> CRED.
--> > --> > --> > -->
--> > --> > --> > -->         o  Cooperating RBridges - those RBridges
--> > --> > --> within a single
--> > --> > --> > -->            Ethernet Subnet (broadcast 
--> domain or LAN)
--> > --> > --> not having
--> > --> > --> been
--> > --> > --> > -->            configured to ignore each other. By
--> > --> default, all
--> > --> > --> RBridges
--> > --> > --> > -->            within a single Ethernet subnet will
--> > --> cooperate
--> > --> with
--> > --> > --> each
--> > --> > --> > -->            other. It is possible for 
--> implementations
--> > --> > --> to allow for
--> > --> > --> > -->            configuration that will restrict
--> > --> > --> "cooperation" between
--> > --> > --> an
--> > --> > --> > -->            RBridge and an apparent neighboring
--> > --> RBridge.  One
--> > --> > --> reason
--> > --> > --> > why
--> > --> > --> > -->            this might occur is if the trust model
--> > --> > --> that applies in
--> > --> > --> a
--> > --> > --> > -->            particular deployment imposes 
--> a need for
--> > --> > --> configuration
--> > --> > --> of
--> > --> > --> > -->            security information.  By 
--> default no such
--> > --> > --> configuration
--> > --> > --> is
--> > --> > --> > -->            required however - should it be used in
--> > --> > --> any specific
--> > --> > --> > scenario
--> > --> > --> > -->
--> > --> > --> > -->            - it is possible (either 
--> deliberately or
--> > --> > --> inadvertently)
--> > --> > --> to
--> > --> > --> > -->            configure neighboring RBridges so
--> > --> that they do
--> > --> not
--> > --> > --> > cooperate.
--> > --> > --> > -->
--> > --> > --> > -->            In the remainder of this document,
--> > --> all RBridges
--> > --> are
--> > --> > --> assumed
--> > --> > --> > -->            to be in a cooperating (default)
--> > --> configuration.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 18> can RBridges cooperate in 
--> groups, e.g. four
--> > --> Rbridges
--> > --> > --> > connected
--> > --> > --> > --> to a LAN cooperating two and two?
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Yes.  There may be reasons why this might be done
--> > --> deliberately,
--> > --> > --> however
--> > --> > --> > - even in the absence of any "proof of concept"
--> > --> > --> justification - it is
--> > --> > --> a
--> > --> > --> > really good idea to design the protocol to be 
--> robust in
--> > --> > --> cases where a
--> > --> > --> > set of RBridges may be (mis)configured in 
--> such a way as
--> > --> > --> to be unable
--> > --> > --> to
--> > --> > --> > discover each other.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  Ingress RBridge Tree: a tree
--> > --> computed for each
--> > --> edge
--> > --> > --> RBridge
--> > --> > --> > -->            and potentially for each VLAN 
--> in which that
--> > --> RBridge
--> > --> > --> > -->
--> > --> > --> > --> sgai 19> why for each VLAN? I got the
--> > --> impression that there
--> > --> > --> > --> was a single tree that was pruned differently for
--> > --> > --> different VLANs.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Pruning may also take place at the ingress, if - for
--> > --> > --> example - it has
--> > --> > --> a
--> > --> > --> > subset of interfaces that are not connected to any
--> > --> egress for
--> > --> > --> particular
--> > --> > --> > VLANs.  It is a small point but, in such 
--> cases, there is
--> in
--> > --> effect
--> > --> > --> more
--> > --> > --> > than one IRT even at the ingress.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->            participates - for delivery of 
--> broadcast,
--> > --> > --> multicast and
--> > --> > --> > -->            flooded frames from that RBridge to all
--> > --> > --> relevant egress
--> > --> > --> > -->            RBridges. This is the 
--> point-to-multipoint
--> > --> > --> delivery tree
--> > --> > --> > used
--> > --> > --> > -->            by an ingress RBridge to deliver
--> > --> > --> multicast, broadcast
--> > --> > --> or
--> > --> > --> > -->            flooded traffic.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 20> the current version of the proposal
--> > --> speaks about a
--> > --> > --> multicast
--> > --> > --> > --> address, not point-to-point.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I did not say "point-to-point" (look again).
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->         o  LPT: Learned Port Table. See
--> > --> Filtering Database.
--> > --> > --> > -->
--> > --> > --> > --> Sgai 21> not proper terminology, I would use
--> > --> > --> "filtering database"
--> > --> > --> > --> everywhere.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I am happy to remove this if there is no objection
--> > --> to my doing
--> > --> so.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> sgai 22> I wired port is Ehernet, i.e. 
--> IEEE 802.3, a
--> > --> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > See my response to your point (sgai 8) above.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> sgai 23> they learn because STP guarantees
--> > --> > --> symmetrical forwarding
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > This (apparently) refers to the immeditately preceding
--> text:
--> > --> > --> >
--> > --> > --> >         Conventional bridges contain a 
--> learned port table
--> > --> > --> (LPT), or
--> > --> > --> >         filtering database, and a spanning tree table
--> > --> > --> (STT). The LPT
--> > --> > --> >         allows a bridge to avoid flooding all received
--> > --> > --> frames, as is
--> > --> > --> >         typical for a hub or repeater. The 
--> bridge learns
--> > --> > --> which nodes
--> > --> > --> are
--> > --> > --> >         accessible from a particular port by assuming
--> > --> > --> bi-directional
--> > --> > --> >         consistency:
--> > --> > --> >
--> > --> > --> > I'm not sure how picking at the peculiarities of
--> > --> STP behavior is
--> > --> > --> > relevant to this description.  STP results in a
--> > --> single spanning
--> > --> > --> > tree where each link is bi-directional.  This
--> > --> ensures that the
--> > --> > --> > MAC frames are forwarded in a 
--> bi-directionally consistent
--> > --> fashion.
--> > --> > --> >
--> > --> > --> > To replace this text with yours is to provide less
--> > --> information.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 24> active ports -> forwarding ports
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > "Active ports" was the exact wording 
--> suggested to me.  In
--> > --> > --> context for
--> > --> > --> > this working group "active ports" is more 
--> meaningful than
--> > --> > --> "forwarding
--> > --> > --> > ports."  For people not used to STP-speak, "forwarding
--> > --> > --> port" might be
--> > --> > --> > used to discriminate from a "code port."
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 25> there is no STT, there is a 
--> state associated
--> > --> > --> with each
--> > --> > --> port
--> > --> > --> > --> that can be: disabled, blocking, listening,
--> > --> learning, and
--> > --> > --> forwarding
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Other than the issue with terminology, is this text
--> > --> wrong?  I am
--> > --> > --> fairly
--> > --> > --> > sure that different implementations handle the "port
--> state"
--> > --> > --> information
--> > --> > --> > in different ways, and I am also reasonably 
--> sure that a
--> > --> > --> "table" such
--> > --> > --> as
--> > --> > --> > the one described here is one of the ways it might be
--> done.
--> > --> > --> >
--> > --> > --> > However, I agree with your assertion that 
--> this is the way
--> > --> > --> that it is
--> > --> > --> > usually talked about in an IEEE context, so -
--> > --> unless there are
--> > --> > --> specific
--> > --> > --> > objections - I can change the wording to be consistent
--> > --> > --> with what you
--> > --> > --> > suggest.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> sgai 26> disabled -> blocking
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I can make this change as well.  However, from the
--> > --> > --> perspective of what
--> > --> > --> > we are trying to do, "disabled" is potentially a more
--> > --> > --> correct term.
--> > --> > --> It
--> > --> > --> > is certainly more intuitively correct, outside of a
--> > --> > --> strictly IEEE/STP
--> > --> > --> > context.
--> > --> > --> >
--> > --> > --> > Symmetry is maintained in STP by blocking ports/links
--> > --> > --> bi-directionally.
--> > --> > --> > In such cases, a port is effectively disabled 
--> for bridges
--> > --> > --> at either
--> > --> > --> end
--> > --> > --> > of the link for which a port is blocked, is it not?
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> sgai 27> I repeat a comment that I have 
--> made to other
--> > --> > --> documents: "
--> > --> > --> > --> The discussion about VLAN needs to be much more
--> > --> > --> extensive. It is
--> > --> > --> clear
--> > --> > --> > --> from the mailing list discussion that VLANs can be
--> > --> > --> used inside the
--> > --> > --> > --> packet or in the Ethernet encapsulation of TRILL.
--> > --> > --> These are two
--> > --> > --> > --> different kinds of VLANs and their 
--> requirement need
--> > --> > --> to be stated
--> > --> > --> > --> separately. Q in Q needs also to be discussed. I
--> > --> > --> propose to define
--> > --> > --> > inner
--> > --> > --> > --> and outer VLANs (with reference to the position of
--> > --> > --> the tag in the
--> > --> > --> > frame."
--> > --> > --> > --> Here I think we are talking about outer VLANs
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I responded to this in separate mail.  I wait to hear
--> > --> > --> other opinions
--> > --> > --> on
--> > --> > --> > this subject.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 28> IMO all RBridges must be ingress 
--> RBridges,
--> > --> > --> at least to
--> > --> > --> > support
--> > --> > --> > --> inband management, e.g. SNMP.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > No.
--> > --> > --> >
--> > --> > --> > In order to ensure symmetry with RBridges not
--> > --> > --> participating in STP,
--> > --> > --> there
--> > --> > --> > MUST be a designated RBridge that does all of the
--> > --> sending and
--> > --> > --> receiving
--> > --> > --> > of native encapsulated frames on a LAN segment.
--> > --> > --> >
--> > --> > --> > Any RBridge the loses the "Designated RBridge"
--> > --> election cannot
--> > --> be
--> > --> > --> either
--> > --> > --> > an ingress or an egress for that LAN segment.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 29> same as above
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Same as above.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 30> I think the previous definition is not
--> needed.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > This appears to refer to:
--> > --> > --> >
--> > --> > --> >         o  Local RBridge - the RBridge that forms and
--> > --> > --> maintains the
--> > --> > --> CFT-
--> > --> > --> >            IRT entry (or entries) under 
--> discussion. The
--> > --> > --> local RBridge
--> > --> > --> >            may be an Ingress RBridge, or an egress
--> > --> RBridge with
--> > --> > --> respect
--> > --> > --> >            to any set of entries in the CFT-IRT.
--> > --> > --> >
--> > --> > --> > This defintion is needed.  It is subsequently used
--> > --> in at least 4
--> > --> > --> places.
--> > --> > --> > When discussing the behavior of a specific RBridge
--> > --> > --> relative to a peer,
--> > --> > --> > it is convenient to define the term "local RBridge."
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> sgai 31> why is it zero or more, if an RBridge
--> > --> exists, it
--> > --> must
--> > --> > --> have
--> > --> > --> > --> a an IRT, I haven't seen any discussion to support
--> > --> > --> multiple IRTs.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > This was answered previously on the mailing list.
--> > --> > --> Briefly, zero or
--> > --> > --> > more is correct, given that an RBridge may not have
--> > --> > --> forwarding entries
--> > --> > --> > for frames it has received.  In these cases, 
--> a frame is
--> > --> > --> not forwarded.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 32> I don't understand this. Since 
--> the current
--> > --> > --> proposal uses
--> > --> > --> a
--> > --> > --> > --> multicast MAC address, what is needed is a bit map
--> > --> > --> for each IRT
--> > --> > --> that
--> > --> > --> > --> says which ports are blocking and which are
--> > --> > --> forwarding. You are
--> > --> > --> > --> basically building a ST using ISIS.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > This might be the case for a specific implementation.
--> > --> > --> Whether it is
--> > --> > --> > implemented as a "bit-mask" with "non-blocking"
--> > --> > --> (forwarding) ports, or
--> > --> > --> > is implemented as a full-blown table is 
--> largely dependent
--> on
--> > --> what
--> > --> > --> other
--> > --> > --> > information the local device requires in order to
--> > --> > --> properly forwad the
--> > --> > --> > frame.  If - for example - a device has multiple
--> > --> > --> different port types,
--> > --> > --> > it may need to have more information for each port (or
--> that
--> > --> > --> information
--> > --> > --> > may be added later on).
--> > --> > --> >
--> > --> > --> > All of these are implementation choices that are
--> > --> > --> logically represented
--> > --> > --> > by the table described here.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 33> I don't get the pair.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Since this immediately follows:
--> > --> > --> >
--> > --> > --> >         Each entry would contain an indication of
--> > --> which single
--> > --> > --> interface
--> > --> > --> >         a broadcast, multicast or flooded 
--> frame would be
--> > --> > --> forwarded for
--> > --> > --> >         each (ingress RBridge, egress RBridge) pair.
--> > --> > --> >
--> > --> > --> > I don't get what you don't get.
--> > --> > --> >
--> > --> > --> > The pair refers to the tuple "(ingress RBridge, egress
--> > --> RBridge)."
--> > --> > --> >
--> > --> > --> > This might be the point at which your earlier 
--> point (Sgai
--> 4)
--> > --> would
--> > --> > --> make
--> > --> > --> > sense to insert.  I had logically modeled 
--> this in my own
--> > --> > --> mind as two
--> > --> > --> > distinct "interfaces" (the reason I use this 
--> term, rather
--> > --> > --> thhan port),
--> > --> > --> > but I should clarify this.
--> > --> > --> >
--> > --> > --> > In any case, the entries are keyed by both ingress and
--> > --> > --> egress RBridge.
--> > --> > --> > While there will be entries for only those egress
--> > --> > --> RBridges where this
--> > --> > --> > local RBridge is on the shortest path 
--> (between the given
--> > --> > --> ingress and
--> > --> > --> > egress pair), there will be at most one entry per
--> > --> any ingress
--> > --> and
--> > --> > --> > egress pair.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 34> as a matter of fact each interface is
--> > --> > --> basically a set of
--> > --> > --> two
--> > --> > --> > --> interfaces, a regular one and a tunnel 
--> one, and the
--> > --> > --> > forwarding/blocking
--> > --> > --> > --> state may be different for the two.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > No.
--> > --> > --> >
--> > --> > --> > As per my response to your point (Sgai 28) above, not
--> > --> > --> every RBridge
--> > --> > --> has a
--> > --> > --> > "regular one" as you describe here.
--> > --> > --> >
--> > --> > --> > The forwarding/blocking state is not applicable as
--> > --> > --> RBridges don't do
--> > --> > --> STP.
--> > --> > --> >
--> > --> > --> > For the native interface, fowarding/blocking state is
--> > --> > --> analogous to the
--> > --> > --> > "Designated RBridge" election process.
--> > --> > --> >
--> > --> > --> > Since this point evidently applies to -
--> > --> > --> >
--> > --> > --> >
--> Entries
--> > --> would
--> > --> > --> also
--> > --> > --> >         contain any required encapsulation 
--> information,
--> > --> > --> etc. required
--> > --> > --> >         for forwarding on a given interface, 
--> and toward a
--> > --> > --> corresponding
--> > --> > --> >         specific egress RBridge.
--> > --> > --> >
--> > --> > --> > - your point, and my response, are related to 
--> the point
--> > --> > --> (and response)
--> > --> > --> > above (Sgai 33), and I will try to clarify this
--> > --> part as well.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 35> this protocol must be designed to avoid
--> > --> > --> transient loops,
--> > --> > --> > since
--> > --> > --> > --> transient loops of multicast/broadcast cause
--> > --> > --> broadcast storm that
--> > --> > --> are
--> > --> > --> > --> highly undesirable.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > No.
--> > --> > --> >
--> > --> > --> > The protocol needs to include a provision to prevent
--> > --> > --> _use_ of links
--> > --> > --> that
--> > --> > --> > may connect to transient loops.  Using a link-state
--> > --> > --> routing protocol
--> > --> > --> has
--> > --> > --> > clearly been demostrated to produce transient 
--> loops, but
--> > --> > --> the problem
--> > --> > --> you
--> > --> > --> > want to address has to do with using those links.
--> > --> > --> >
--> > --> > --> > A state-machine driven mechanism similar to 
--> STP might be
--> > --> > --> the approach
--> > --> > --> to
--> > --> > --> > use.
--> > --> > --> >
--> > --> > --> > Because we're incorporating TTL in the SHIM, 
--> however this
--> > --> > --> would need
--> > --> > --> to
--> > --> > --> > apply only to IRT traffic.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > -->
--> > --> > --> > --> Sgai 36> see my previous comment about VLANs
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > See my previous responses.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> sgai 37> disabled -> blocking.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > See my response to your point (sgai 26) above.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 38> for multicast/broadcast we also need to
--> > --> > --> avoid transient
--> > --> > --> > loops.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Yes.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
--> > --> > --> processes, why
--> > --> > --> do
--> > --> > --> > we
--> > --> > --> > --> want to couple their timers?
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > I am not suggesting "coupling their timers."  I am
--> > --> saying that
--> > --> the
--> > --> > --> value
--> > --> > --> > chosen for a timer (if one is used) to 
--> determine when it
--> > --> > --> is reasonable
--> > --> > --> to
--> > --> > --> > start RBridge peer discovery should take into
--> > --> account the time
--> > --> it
--> > --> > --> takes
--> > --> > --> > for the local spanning tree resolution.
--> > --> > --> >
--> > --> > --> > I feel the reason for this is self-evident 
--> but, just to
--> > --> > --> clarify, think
--> > --> > --> > about the process we're planning to use to determine
--> RBridge
--> > --> > --> nick-names.
--> > --> > --> > If we start this too early, we will be re-starting it
--> > --> > --> many times as we
--> > --> > --> > "hear from" new RBridge peers when the 
--> connecting links go
--> > --> active
--> > --> > --> after
--> > --> > --> > local bridges go to the forwarding state.  This would
--> > --> > --> apply only at
--> > --> > --> the
--> > --> > --> > system start up as - after that - you are 
--> quite correct
--> > --> > --> in asserting
--> > --> > --> it
--> > --> > --> > would be an ongoing process.
--> > --> > --> >
--> > --> > --> > Perhaps I should add some words to indicate 
--> that a delay
--> > --> > --> would not be
--> > --> > --> > necessary if the protocol mechanisms do not introduce
--> > --> > --> instability as a
--> > --> > --> > new peer is discovered.  So far, I have not seen any
--> > --> > --> indication that a
--> > --> > --> > "race-free" solution to accomplish this has 
--> been designed
--> > --> > --> - or talked
--> > --> > --> > about.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 40> there is also a requirement to time-out
--> learnt
--> > --> > --> information to
--> > --> > --> > --> maintain the filtering databases.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > There would be, if we were doing that.  Instead,
--> > --> we're adopting
--> > --> a
--> > --> > --> > link-state routing protocol and they tend to have
--> > --> that covered.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 41> periodically or on demand
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > See the response to your point (Sgai 40) above.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > --> > -->
--> > --> > --> > --> Sgai 42> potentially there is an unencapsulated
--> > --> > --> interface for each
--> > --> > --> > --> physical interface of the RBridge. It is true that
--> > --> > --> you can model
--> > --> > --> all
--> > --> > --> > --> of them as a single separate logical 
--> interface, but
--> > --> > --> then we need
--> > --> > --> to
--> > --> > --> > --> replicate the frame according to a 
--> bitmask that tells
--> on
--> > --> which
--> > --> > --> > physical
--> > --> > --> > --> interface the RBridge is designated.
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Again, your use of a "bitmask" is an implementation
--> > --> > --> choice as opposed
--> > --> > --> > to a logical model.
--> > --> > --> >
--> > --> > --> > As you observe, I do "model all of them as a single
--> > --> > --> separate logical
--> > --> > --> > interface" and if you want to "replicate the frame
--> > --> according to
--> > --> a
--> > --> > --> > bitmask that tells on which physical interface the
--> > --> RBridge is
--> > --> > --> > designated" - you're absolutely free to do so.
--> > --> > --> >
--> > --> > --> > Personally, I think this is far too much 
--> implementation
--> > --> > --> stuff for a
--> > --> > --> > protocol specification, let alone an architecture
--> document.
--> > --> > --> >
--> > --> > --> > -->
--> > --> > --> > --> Sgai 43> can we clarify that this means 
--> "drop BPDUs".
--> > --> > --> > -->
--> > --> > --> >
--> > --> > --> > Yes.
--> > --> > --> >
--> > --> > --> > -- [snip --
--> > --> > -->
--> > -->
--> 

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 08:54:56 -0800
From: "Silvano Gai" <[email-masked]>
To: "Russ White" <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 1692

What is a stretch is 32K trees of 32K nodes, which is what you need if
you want to deploy the current TRILL proposal with 32K RBridges.

Eric says that we need to accommodate half a million RBridges.
Half a million tree of half a million nodes is unfeasible.

If we want to support such a large number of Rbridges, we need to modify
the current Trill proposal, reducing the number of trees that need to be
computed.

Agreed?

-- Silvano

> -----Original Message-----
> From: Russ White [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 8:35 AM
> To: Silvano Gai
> Cc: Gray, Eric; Radia Perlman; [email-masked]
> Subject: Re: [rbridge] New shim header proposal---without F-tag field
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> >> 	I don't think there is consensus yet that we only need 16 bits
> >> for RBridge IDs.
> >
> > With 16 bits, using 1 bit to indicate unicast, we can have 32K
switches.
> > According to the current definition of TRILL, there is the need to
run
> > Djikstra on a database with 32K records, one time for the core
instance
> > and 32K times for the IRTs. This is clearly out of reach even for
the
> > most powerful CPU.
> 
> ?? Perhaps 32k trees is a stretch, but 32k nodes in a tree? I don't
> think that's really a stretch on today's processors, from the scaling
> work I've seen done in IS-IS.
> 
> :-)
> 
> Russ
> 
> - --
> [email-masked] CCIE <>< Grace Alone
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2.2 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> 
> iD8DBQFFSMypER27sUhU9OQRAqLwAJ9FLN2YNP2mrB6i0ZcV1fxLzAT0hgCfYHYj
> 6mJCA68nQLjCD8US9nRZZag=
> =kwzq
> -----END PGP SIGNATURE-----

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 08:47:57 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 46004

Eric,

Ethernet, 802.11, and 802.17 are three different standards.

You are confusing the fact that there are wireless router/gateway that
offer an Ethernet port and therefore an RBridge can potentially connect
to that port to access stations or other Rbridges, with the fact that it
is possible to natively design an encapsulation of TRILL over IEEE
802.11 or IEEE 802.17.

I cannot accept a definition of Ethernet that include IEEE 802.11 and
IEEE 802.17.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 8:39 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
> drafts/draft-ietf-trill-rbridge-arch-01.txt
> 
> Silvano,
> 
> 	History is not particularly relevant, but the term "Ethernet"
> was originally coined by its inventor, Bob Metcalfe (who - by the
> way - did not work for DEC, but worked instead for Xerox at PARC).
> 
> 	The Ethernet standard was subsequently developed as a joint
> effort involving DEC, Intel and Xerox.
> 
> 	By stating that - when I use the term "Ethernet" - I mean to
> include all LAN technologies under IEEE 802, I'm merely introducing
> a short-hand terminology.  In that sense, I am not re-defining the
> term, I am merely saying what I mean when I say "Ethernet."  If you
> read the text, you should see that I clearly state the intention to
> define the terminology the way that it will be used in the document.
> 
> 	I believe that is an appropriate technique, in this case.  I
> also regard this part of the "feedback" as "stylistic" since you are
> objecting to my using a term in the way that I defined it.  In the
> literature, there are plenty of examples of redefining terminology
> to facilitate understanding and communication.  In this case, using
> "Ethernet" in this fashion reduces the "communication overhead" we
> will encounter if I replace that term with either a single term I
> make up from scratch, or a compound phrase such as "802.3, 802.11,
> 802.1Q, etc."
> 
> 	For many of us, the term Ethernet already encompasses these
> additional technologies.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 1:21 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> -arch-01.txt
> -->
> -->
> --> Eric,
> -->
> --> I disagree.
> -->
> --> I don't think it is wise for TRILL to redefine the term Ethernet.
> --> Ethernet is a term that has a well known meaning in the industry.
> --> The original definition is:
> --> Digital Equipment Corporation, Intel, Xerox, The Ethernet,
> --> Version 2.0,
> --> November 1982.
> --> Which has been then standardized by IEEE 802.3.
> -->
> --> To speak about other IEEE 802 standards that are alive and
> --> used, IEEE
> --> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet
> --> Ring Working)
> --> have nothing to do with Ethernet.
> -->
> --> -- Silvano
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Tuesday, October 31, 2006 2:44 PM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] Comments on:
http://www.ietf.org/internet-
> --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> >
> --> > Silvano,
> --> >
> --> > 	To be perfectly frank, I am unaware of any reason not to
> include
> --> > token ring or any other obsolete form of "Ethernet equivalent
> --> technology"
> --> > - this is one of the reason to focus on the SHIM as
> --> separate from any
> --> > specific encapsulation above or below the SHIM.
> --> >
> --> > 	If you want to check it against all 802 activities,
that's
> fine.
> --> > I would suggest, however, that even though people are
> --> realistically
> --> not
> --> > going to implement most of the hairy/scary versions in an
> --> RBridge, I
> --> do
> --> > not know of a good reason to exclude them at this point.
> --> In abstract,
> --> > it is certainly possible that people will be able to work out
> --> specifics
> --> > of implementation - if and when they decide to do so.
> --> >
> --> > 	After all, we (the industry) have been building
translation
> --> bridges
> --> > for these technologies for decades.
> --> >
> --> > 	However, I am open to scoping the architecture to apply
only
> to
> --> a
> --> > limited subset of 802 technologies, if that is what would
> --> make people
> --> > happy...
> --> >
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: Silvano Gai [mailto:[email-masked]]
> --> > --> Sent: Tuesday, October 31, 2006 5:34 PM
> --> > --> To: Gray, Eric
> --> > --> Cc: [email-masked]
> --> > --> Subject: RE: [rbridge] Comments on:
> --> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> > --> -arch-01.txt
> --> > -->
> --> > -->
> --> > --> Eric,
> --> > -->
> --> > --> A quick reply:
> --> > --> Are you telling me that the term Ethernet includes Token
Ring,
> --> Token
> --> > --> Bus, DQDB?
> --> > -->
> --> > --> This is what you are doing when you say that Ethernet
> --> is IEEE 802
> --> > --> instead of IEEE 802.3.
> --> > -->
> --> > --> This is NOT a terminology issue. If the term Ethernet means
> --> > --> 802 I need
> --> > --> to check the operation of TRILL against all the 802
> --> technologies.
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> > -----Original Message-----
> --> > --> > From: Gray, Eric [mailto:[email-masked]]
> --> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
> --> > --> > To: Silvano Gai
> --> > --> > Cc: [email-masked]
> --> > --> > Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-
> --> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> > --> >
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 4> an RBridge must be also able to send
> --> two copies of a
> --> > --> > --> unicast/multicast/broadcast packet on the same
> --> port when it
> --> > --> > --> acts as a designated RBridge (one copy is
> --> encapsulated, the
> --> > --> > --> other not).
> --> > --> > -->
> --> > --> >
> --> > --> > This, I think, refers to the immediately preceding
> --> text in the
> --> > --> > architecture:
> --> > --> >
> --> > --> >         Forwarding information is derived from the
> --> combination
> --> of
> --> > --> >         attached MAC address learning, snooping of
> --> > --> multicast-related
> --> > --> >         protocols (e.g. - IGMP), and routing
> --> > --> advertisements and path
> --> > --> >         computations using the link-state routing
protocol.
> --> > --> >
> --> > --> > While your comment is a reasonable one - although
> --> potentially
> --> > --> > implementation specific - it does not appear to
> --> have any bearing
> --> > --> > on this text.
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > --> Sgai 5> here there is some confusion between
> --> 802 and 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > This  refers (I believe) to the immeditately preceding
text:
> --> > --> >
> --> > --> >         The following terminology is defined in
> --> other documents.
> --> A
> --> > --> brief
> --> > --> >         definition is included in this section for
> --> > --> convenience and -
> --> > --> in
> --> > --> >         some cases - to remove any ambiguity in how the
> --> > --> term may be
> --> > --> used
> --> > --> >         in this document, as well as derivative documents
> --> > --> intended to
> --> > --> >         specify components, protocol, behavior and
> --> encapsulation
> --> > --> >         relative to the architecture specified in
> --> this document.
> --> > --> >
> --> > --> >         o  802: IEEE Specification for the Ethernet
> --> architecture,
> --> > --> i.e.,
> --> > --> >            including hubs and bridges.
> --> > --> >
> --> > --> > In this text, I explicitly state that these terms
> --> are defined
> --> > --> elsewhere.
> --> > --> > I am also trying to use the most generic definition
> --> of Ethernet
> --> > --> possible.
> --> > --> >
> --> > --> > The reason for this is that the problem statement does
> --> > --> not restrict
> --> > --> the
> --> > --> > solution to 802.3.
> --> > --> >
> --> > --> > There is some confusion in referring to 802.3 in
> --> any case: we
> --> > --> explicitly
> --> > --> > want to include 802.1Q - as well as all of its
> --> variations and
> --> > --> extensions.
> --> > --> >
> --> > --> > Consequently, we define the term Ethernet in the broadest
> --> possible
> --> > --> sense.
> --> > --> >
> --> > --> >
> --> > --> > -- [snip] --
> --> > --> > -->
> --> > --> > -->        o  Bridge Spanning Tree (BST): an Ethernet (L2,
> --> 802.1D)
> --> > --> > -->           forwarding protocol based on the topology
> --> > --> of a spanning
> --> > --> > tree.
> --> > --> > -->
> --> > --> > --> Sgai 6> I have never seen the acronym BST,
> --> everyone use STP.
> --> > --> > -->
> --> > --> >
> --> > --> > I do not know if this term is used in any of the other
> --> documents,
> --> > --> > but it is not used in this one.  Unless someone
> --> objects, I am
> --> only
> --> > --> > too happy to remove it from this document.
> --> > --> >
> --> > --> > From a historical perspective, this was defined this way
> --> > --> originally
> --> > --> > because we were re-using the term spanning tree instead
> --> > --> of IRT.  It
> --> > --> > was causing amazing communication difficulties, so
> --> we came up
> --> with
> --> > --> > the term IRT.  Now we don't need to differentiate BST.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (Sgai 5) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
> --> > --> multiple ports
> --> > --> which
> --> > --> > -->
> --> > --> > --> sgai 8> for Hub is better to reference 802.3
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (Sgai 5) above.  By the
> --> > --> definition we
> --> > --> > provide in this document, Ethernet is defined
> --> broadly to include
> --> > --> > 802 technologies.  This is reasonable, because the term
was
> --> stolen
> --> > --> > by IEEE from a technology stolen from a satellite
> --> communication
> --> > --> > protocol.  Ironic that 802.3 does not include wireless,
all
> --> things
> --> > --> > considered.  Certainly the term "Ethernet" should...
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Node: a device with an L2 (MAC) address
> --> > --> that sources
> --> > --> and/or
> --> > --> > -->            sinks L2 frames.
> --> > --> > -->
> --> > --> > --> Sgai 9> The IEEE term is "station".
> --> > --> > -->
> --> > --> >
> --> > --> > However, we in the IETF are more familiar with the
> --> term "node."
> --> > --> >
> --> > --> > This is hardly a significant issue.  if people agree that
> --> > --> we should
> --> > --> > use the term "station" as opposed to "node", then I will
> --> > --> change it.
> --> > --> >
> --> > --> > Note that we should be consistent in this usage, if we
> --> > --> decide to do
> --> > --> > yet another terminology evolution.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Segment: an Ethernet link, either a single
> --> physical
> --> > --> link or
> --> > --> > -->            emulation thereof (e.g., via hubs) or a
> --> > --> logical link or
> --> > --> > -->            emulation thereof (e.g., via bridges).
> --> > --> > -->
> --> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
> --> > --> > -->
> --> > --> >
> --> > --> > I agree, however this is the definition we agreed on here.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Subnet, Ethernet: a single segment,
> --> or a set of
> --> > --> segments
> --> > --> > -->            interconnected by a CRED (see
> --> section 2.2); in
> --> the
> --> > --> latter
> --> > --> > -->
> --> > --> > --> sgai 11> There is no concept of subnet in IEEE.
> --> Subnet is
> --> > --> typically
> --> > --> > --> an IP subnet, and, even if it is common to have
> --> one subnet
> --> per
> --> > --> LAN,
> --> > --> > --> this is not the only possibility. Pragmatically
> --> IP subnets
> --> and
> --> > --> > --> Ethernet LAN are unrelated concepts.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, we are defining this term for use in this
> --> > --> document.  Does its
> --> > --> > use (not its definition) cause confusion or ambiguity?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            case, the subnet may or may not be
> --> equivalent to
> --> a
> --> > --> single
> --> > --> > -->            segment. Also a subnet may be
> --> referred to as a
> --> > --> broadcast
> --> > --> > -->            domain or LAN. By definition, all
> --> nodes within an
> --> > --> Ethernet
> --> > --> > -->            Subnet (broadcast domain or LAN) must have
L2
> --> > --> connectivity
> --> > --> > -->            with all other nodes in the same
> --> Ethernet subnet.
> --> > --> > -->
> --> > --> > -->         o  TRILL: Transparent Interconnect over Lots
> --> > --> of Links -
> --> > --> the
> --> > --> > -->            working group and working name for the
> --> > --> problem domain
> --> > --> to be
> --> > --> > -->            addressed in this document.
> --> > --> > -->
> --> > --> > -->         o  Unicast Forwarding: forwarding methods
> --> > --> that apply to
> --> > --> frames
> --> > --> > -->            with unicast destination MAC addresses.
> --> > --> > -->
> --> > --> > -->         o  Unknown Destination - a destination
> --> for which a
> --> > --> receiving
> --> > --> > -->            device has no filtering database entry.
> --> > --> Destination
> --> > --> (layer
> --> > --> > -->
> --> > --> > --> sgai 12> the stations receive the unknown
> --> unicast and have
> --> > --> filtering
> --> > --> > --> information, only the bridges don't. I propose to
> --> > --> replace device
> --> > --> with
> --> > --> > --> bridge.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, it is the intention to provide as broad a
> --> definition as
> --> > --> possible
> --> > --> > without introducing confusion or ambiguity.  An end node
> --> > --> (or station)
> --> > --> > has - in a sense - a filtering database (it's mine, or
> --> > --> it's for the
> --> > --> bit
> --> > --> > bucket).
> --> > --> >
> --> > --> > We need to explicitly include 802.1D forwarding devices
> --> > --> and RBridges.
> --> > --> >
> --> > --> > However, the definition should specify "forwarding
> --> device" - as
> --> > --> opposed
> --> > --> > to just "receiving device."
> --> > --> >
> --> > --> > I will change that.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            2) addresses are typically "learned"
> --> by (layer 2)
> --> > --> > forwarding
> --> > --> > -->            devices via a process commonly referred to
> --> > --> as "bridge
> --> > --> > learning".
> --> > --> > -->
> --> > --> > --> Sgai 13> in IEEE, the term used is "learning" instead
> --> > --> of "bridge
> --> > --> > learning"
> --> > --> > -->
> --> > --> >
> --> > --> > However, the term defined in this document is
> --> "bridge learning."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  VLAN: Virtual Local Area Network. VLANs in
> --> > --> general fall
> --> > --> > into
> --> > --> > -->            two categories: link (or port)
> --> specific VLANs and
> --> > --> tagged
> --> > --> > -->            VLANs. In the former case, all frames
> --> > --> forwarded and all
> --> > --> > -->            directly connected nodes are assumed to be
> --> > --> part of a
> --> > --> single
> --> > --> > -->            VLAN.  In the latter case, VLAN tagged
> --> > --> frames are used
> --> > --> to
> --> > --> > -->            distinguish which VLAN each frame is
intended
> --> for.
> --> > --> > -->
> --> > --> > --> Sgai 14> This definition is not completely correct, I
> --> prefer:
> --> > --> > -->
> --> > --> > --> VLAN technology introduces the following three
> --> basic types
> --> of
> --> > --> frame:
> --> > --> > --> a) Untagged frames;
> --> > --> > --> b) Priority-tagged frames; and
> --> > --> > --> c) VLAN-tagged frames.
> --> > --> > -->
> --> > --> > --> An untagged frame or a priority-tagged frame does not
> --> > --> carry any
> --> > --> > --> identification of the VLAN to which it belongs. Such
> --> > --> frames are
> --> > --> > --> classified as belonging to a particular VLAN based on
> --> > --> parameters
> --> > --> > --> associated with the receiving Port, or, through
> --> proprietary
> --> > --> extensions
> --> > --> > --> to IEEE 802.1Q standard, based on the data content of
> --> > --> the frame
> --> > --> (e.g.,
> --> > --> > --> MAC Address, layer 3 protocol ID, etc.).
> --> > --> > -->
> --> > --> > --> A VLAN-tagged frame carries an explicit
> --> > --> identification of the VLAN
> --> > --> to
> --> > --> > --> which it belongs; i.e., it carries a tag header
> --> that carries
> --> a
> --> > --> non-
> --> > --> > null
> --> > --> > --> VID. Such a frame is classified as belonging to a
> --> > --> particular VLAN
> --> > --> > based
> --> > --> > --> on the value of the VID that is included in the tag
> --> > --> header. The
> --> > --> > presence
> --> > --> > --> of the tag header carrying a non-null VID means that
> --> > --> some other
> --> > --> > device,
> --> > --> > --> either the originator of the frame or a
> --> VLAN-aware Bridge,
> --> has
> --> > --> mapped
> --> > --> > --> this frame into a VLAN and has inserted the
> --> appropriate VID.
> --> > --> > -->
> --> > --> >
> --> > --> > So, you're getting into the details of the
> --> technology and - in
> --> > --> particular
> --> > --> > the encapsulation.  I will expand the definition to
> --> include a
> --> > --> possibility
> --> > --> > that other criteria may be used to define a "VLAN port" -
> --> although
> --> > --> this is
> --> > --> > isomorphic to a logical model in which a device
> --> > --> implementation uses
> --> > --> some
> --> > --> > criteria to decide that a subset of the traffic received
> --> > --> on a specific
> --> > --> > physical port is to be forwarded as if received on a
> --> > --> specific logical
> --> > --> > port.
> --> > --> >
> --> > --> > The key point in this definition is that a VLAN is a
> --> > --> "Virtual LAN" -
> --> > --> > meaning
> --> > --> > it consists of a subset of the physical and L2
connectivity
> --> > --> corresponding
> --> > --> > to
> --> > --> > a "logical LAN."  The intent is to "rise above" the
> --> technological
> --> > --> > approaches
> --> > --> > and encapsulations to establish a generic definition that
> --> > --> is loosely
> --> > --> tied
> --> > --> > to
> --> > --> >
> --> > --> > ways that this generic definition is actually implemented.
> --> > --> >
> --> > --> > Again, bearing in mind the way that the term is
> --> defined, does
> --> the
> --> > --> usage of
> --> > --> > the term cause confusion or ambiguity?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Forwarding Table (CFT): the per-hop
> --> forwarding
> --> > --> table
> --> > --> > -->            populated by the RBridge Routing Protocol;
> --> > --> forwarding
> --> > --> > within
> --> > --> > -->            the CRED is based on a lookup of the
> --> CRED Transit
> --> > --> Header
> --> > --> > -->            (CTH) encapsulated within the
> --> outermost received
> --> L2
> --> > --> header.
> --> > --> > -->            The outermost L2 encapsulation in this
> --> > --> case includes
> --> > --> the
> --> > --> > -->            source MAC address of the immediate
> --> > --> upstream RBridge
> --> > --> > -->            transmitting the frame and destination MAC
> --> > --> address of
> --> > --> the
> --> > --> > -->            receiving RBridge for use in the unicast
> --> forwarding
> --> > --> case.
> --> > --> > -->
> --> > --> > --> Sgai 15> In section 7 of
> --> > --> > -->
> --> > -->
> --> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
> --> > --> > 00.txt
> --> > --> > --> we proposed that when two rbridges are
> --> connected by a point
> --> to
> --> > --> point
> --> > --> > --> link the outer MAC addresses may be set to a
> --> > --> predefined value in
> --> > --> > --> transmission and ignored in reception.
> --> > --> > -->
> --> > --> >
> --> > --> > I'm not sure how your proposal intends to determine that
> --> > --> a link is in
> --> > --> > fact point-to-point and does not just look that way.
> --> > --> >
> --> > --> > I prefer to use the same encapsulation in all cases where
it
> --> will
> --> > --> work.
> --> > --> >
> --> > --> > The optimization associated with using some form of
> --> > --> null-encapsulation
> --> > --> > is of dubious value, given that it may not be possible to
> --> > --> be certain a
> --> > --> > point-to-point link is - and will remain - in fact a
> --> > --> point-to-point
> --> > --> > link.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CFT-IRT: a forwarding table used for
> --> propagation
> --> of
> --> > --> > -->            broadcast, multicast or flooded
> --> frames along the
> --> > --> Ingress
> --> > --> > -->            RBridge Tree (IRT).
> --> > --> > -->
> --> > --> > --> Sgai 16> is it a forwarding table or is it a
> --> > --> filtering database.
> --> > --> Since
> --> > --> > --> the "miss" behavior is to flood, I see it as a
> --> > --> filtering database.
> --> > --> > -->
> --> > --> >
> --> > --> > What state was "miss" behavior from - Hawaii?  :-)
> --> > --> >
> --> > --> > It is analogous to a filtering database entry, but it is
not
> --> that.
> --> > --> >
> --> > --> > Clearly there are more things in this world than can be
> --> classified
> --> > --> > in this taxonomy.  However, given these choices, it is a
> --> > --> forwarding
> --> > --> > table.
> --> > --> >
> --> > --> > This is not a misbehavior, in that the same "base" tree
> --> > --> is used for
> --> > --> > broadcast and multicast traffic as well as flooded
> --> > --> traffic.  It may
> --> > --> > be arguable that flooding is a misbehavior, but I
> --> seem to recall
> --> > --> > that people still see it as a necessary evil.
> --> > --> >
> --> > --> > It is also not "miss" behavior (as in "cache miss") in
> --> > --> the multicast
> --> > --> > and broadcast case, either.
> --> > --> >
> --> > --> > I believe the definition is quite correct and easy to
> --> understand,
> --> > --> > provided you're not reading it with preconceived
> --> misconceptions
> --> > --> > about its meaning.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Transit Header (CTH): a 'shim'
> --> header that
> --> > --> > encapsulates
> --> > --> > -->            the ingress L2 frame and persists
> --> throughout the
> --> > --> transit of
> --> > --> > a
> --> > --> >
> --> > --> > -->            CRED, which is further encapsulated within
> --> > --> a hop-by-hop
> --> > --> L2
> --> > --> > -->            header (and trailer). The hop-by-hop L2
> --> > --> encapsulation
> --> > --> in
> --> > --> > this
> --> > --> >
> --> > --> > -->            case includes the source MAC address of
> --> > --> the immediate
> --> > --> > -->            upstream RBridge transmitting the frame
> --> > --> and destination
> --> > --> MAC
> --> > --> > -->            address of the receiving RBridge -
> --> at least in
> --> the
> --> > --> unicast
> --> > --> > -->            forwarding case.
> --> > --> > -->
> --> > --> > --> Sgai 17> is this true also for unknown unicast?
> --> > --> > -->
> --> > --> >
> --> > --> > That is something that will be (may be already)
> --> decided in the
> --> > --> protocol
> --> > --> > specification.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  CRED Transit Table (CTT): a table that maps
> --> ingress
> --> > --> frame
> --> > --> > L2
> --> > --> > -->            destinations to egress RBridge
> --> addresses, used to
> --> > --> determine
> --> > --> > -->            encapsulation of ingress frames for
> --> transit of
> --> the
> --> > --> CRED.
> --> > --> > -->
> --> > --> > -->         o  Cooperating RBridges - those RBridges
> --> > --> within a single
> --> > --> > -->            Ethernet Subnet (broadcast domain or LAN)
> --> > --> not having
> --> > --> been
> --> > --> > -->            configured to ignore each other. By
> --> default, all
> --> > --> RBridges
> --> > --> > -->            within a single Ethernet subnet will
> --> cooperate
> --> with
> --> > --> each
> --> > --> > -->            other. It is possible for implementations
> --> > --> to allow for
> --> > --> > -->            configuration that will restrict
> --> > --> "cooperation" between
> --> > --> an
> --> > --> > -->            RBridge and an apparent neighboring
> --> RBridge.  One
> --> > --> reason
> --> > --> > why
> --> > --> > -->            this might occur is if the trust model
> --> > --> that applies in
> --> > --> a
> --> > --> > -->            particular deployment imposes a need for
> --> > --> configuration
> --> > --> of
> --> > --> > -->            security information.  By default no such
> --> > --> configuration
> --> > --> is
> --> > --> > -->            required however - should it be used in
> --> > --> any specific
> --> > --> > scenario
> --> > --> > -->
> --> > --> > -->            - it is possible (either deliberately or
> --> > --> inadvertently)
> --> > --> to
> --> > --> > -->            configure neighboring RBridges so
> --> that they do
> --> not
> --> > --> > cooperate.
> --> > --> > -->
> --> > --> > -->            In the remainder of this document,
> --> all RBridges
> --> are
> --> > --> assumed
> --> > --> > -->            to be in a cooperating (default)
> --> configuration.
> --> > --> > -->
> --> > --> > --> Sgai 18> can RBridges cooperate in groups, e.g. four
> --> Rbridges
> --> > --> > connected
> --> > --> > --> to a LAN cooperating two and two?
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.  There may be reasons why this might be done
> --> deliberately,
> --> > --> however
> --> > --> > - even in the absence of any "proof of concept"
> --> > --> justification - it is
> --> > --> a
> --> > --> > really good idea to design the protocol to be robust in
> --> > --> cases where a
> --> > --> > set of RBridges may be (mis)configured in such a way as
> --> > --> to be unable
> --> > --> to
> --> > --> > discover each other.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  Ingress RBridge Tree: a tree
> --> computed for each
> --> edge
> --> > --> RBridge
> --> > --> > -->            and potentially for each VLAN in which that
> --> RBridge
> --> > --> > -->
> --> > --> > --> sgai 19> why for each VLAN? I got the
> --> impression that there
> --> > --> > --> was a single tree that was pruned differently for
> --> > --> different VLANs.
> --> > --> > -->
> --> > --> >
> --> > --> > Pruning may also take place at the ingress, if - for
> --> > --> example - it has
> --> > --> a
> --> > --> > subset of interfaces that are not connected to any
> --> egress for
> --> > --> particular
> --> > --> > VLANs.  It is a small point but, in such cases, there is
in
> --> effect
> --> > --> more
> --> > --> > than one IRT even at the ingress.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->            participates - for delivery of broadcast,
> --> > --> multicast and
> --> > --> > -->            flooded frames from that RBridge to all
> --> > --> relevant egress
> --> > --> > -->            RBridges. This is the point-to-multipoint
> --> > --> delivery tree
> --> > --> > used
> --> > --> > -->            by an ingress RBridge to deliver
> --> > --> multicast, broadcast
> --> > --> or
> --> > --> > -->            flooded traffic.
> --> > --> > -->
> --> > --> > --> Sgai 20> the current version of the proposal
> --> speaks about a
> --> > --> multicast
> --> > --> > --> address, not point-to-point.
> --> > --> > -->
> --> > --> >
> --> > --> > I did not say "point-to-point" (look again).
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->         o  LPT: Learned Port Table. See
> --> Filtering Database.
> --> > --> > -->
> --> > --> > --> Sgai 21> not proper terminology, I would use
> --> > --> "filtering database"
> --> > --> > --> everywhere.
> --> > --> > -->
> --> > --> >
> --> > --> > I am happy to remove this if there is no objection
> --> to my doing
> --> so.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 22> I wired port is Ehernet, i.e. IEEE 802.3, a
> --> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (sgai 8) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 23> they learn because STP guarantees
> --> > --> symmetrical forwarding
> --> > --> > -->
> --> > --> >
> --> > --> > This (apparently) refers to the immeditately preceding
text:
> --> > --> >
> --> > --> >         Conventional bridges contain a learned port table
> --> > --> (LPT), or
> --> > --> >         filtering database, and a spanning tree table
> --> > --> (STT). The LPT
> --> > --> >         allows a bridge to avoid flooding all received
> --> > --> frames, as is
> --> > --> >         typical for a hub or repeater. The bridge learns
> --> > --> which nodes
> --> > --> are
> --> > --> >         accessible from a particular port by assuming
> --> > --> bi-directional
> --> > --> >         consistency:
> --> > --> >
> --> > --> > I'm not sure how picking at the peculiarities of
> --> STP behavior is
> --> > --> > relevant to this description.  STP results in a
> --> single spanning
> --> > --> > tree where each link is bi-directional.  This
> --> ensures that the
> --> > --> > MAC frames are forwarded in a bi-directionally consistent
> --> fashion.
> --> > --> >
> --> > --> > To replace this text with yours is to provide less
> --> information.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 24> active ports -> forwarding ports
> --> > --> > -->
> --> > --> >
> --> > --> > "Active ports" was the exact wording suggested to me.  In
> --> > --> context for
> --> > --> > this working group "active ports" is more meaningful than
> --> > --> "forwarding
> --> > --> > ports."  For people not used to STP-speak, "forwarding
> --> > --> port" might be
> --> > --> > used to discriminate from a "code port."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 25> there is no STT, there is a state associated
> --> > --> with each
> --> > --> port
> --> > --> > --> that can be: disabled, blocking, listening,
> --> learning, and
> --> > --> forwarding
> --> > --> > -->
> --> > --> >
> --> > --> > Other than the issue with terminology, is this text
> --> wrong?  I am
> --> > --> fairly
> --> > --> > sure that different implementations handle the "port
state"
> --> > --> information
> --> > --> > in different ways, and I am also reasonably sure that a
> --> > --> "table" such
> --> > --> as
> --> > --> > the one described here is one of the ways it might be
done.
> --> > --> >
> --> > --> > However, I agree with your assertion that this is the way
> --> > --> that it is
> --> > --> > usually talked about in an IEEE context, so -
> --> unless there are
> --> > --> specific
> --> > --> > objections - I can change the wording to be consistent
> --> > --> with what you
> --> > --> > suggest.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 26> disabled -> blocking
> --> > --> > -->
> --> > --> >
> --> > --> > I can make this change as well.  However, from the
> --> > --> perspective of what
> --> > --> > we are trying to do, "disabled" is potentially a more
> --> > --> correct term.
> --> > --> It
> --> > --> > is certainly more intuitively correct, outside of a
> --> > --> strictly IEEE/STP
> --> > --> > context.
> --> > --> >
> --> > --> > Symmetry is maintained in STP by blocking ports/links
> --> > --> bi-directionally.
> --> > --> > In such cases, a port is effectively disabled for bridges
> --> > --> at either
> --> > --> end
> --> > --> > of the link for which a port is blocked, is it not?
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 27> I repeat a comment that I have made to other
> --> > --> documents: "
> --> > --> > --> The discussion about VLAN needs to be much more
> --> > --> extensive. It is
> --> > --> clear
> --> > --> > --> from the mailing list discussion that VLANs can be
> --> > --> used inside the
> --> > --> > --> packet or in the Ethernet encapsulation of TRILL.
> --> > --> These are two
> --> > --> > --> different kinds of VLANs and their requirement need
> --> > --> to be stated
> --> > --> > --> separately. Q in Q needs also to be discussed. I
> --> > --> propose to define
> --> > --> > inner
> --> > --> > --> and outer VLANs (with reference to the position of
> --> > --> the tag in the
> --> > --> > frame."
> --> > --> > --> Here I think we are talking about outer VLANs
> --> > --> > -->
> --> > --> >
> --> > --> > I responded to this in separate mail.  I wait to hear
> --> > --> other opinions
> --> > --> on
> --> > --> > this subject.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 28> IMO all RBridges must be ingress RBridges,
> --> > --> at least to
> --> > --> > support
> --> > --> > --> inband management, e.g. SNMP.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > In order to ensure symmetry with RBridges not
> --> > --> participating in STP,
> --> > --> there
> --> > --> > MUST be a designated RBridge that does all of the
> --> sending and
> --> > --> receiving
> --> > --> > of native encapsulated frames on a LAN segment.
> --> > --> >
> --> > --> > Any RBridge the loses the "Designated RBridge"
> --> election cannot
> --> be
> --> > --> either
> --> > --> > an ingress or an egress for that LAN segment.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 29> same as above
> --> > --> > -->
> --> > --> >
> --> > --> > Same as above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 30> I think the previous definition is not
needed.
> --> > --> > -->
> --> > --> >
> --> > --> > This appears to refer to:
> --> > --> >
> --> > --> >         o  Local RBridge - the RBridge that forms and
> --> > --> maintains the
> --> > --> CFT-
> --> > --> >            IRT entry (or entries) under discussion. The
> --> > --> local RBridge
> --> > --> >            may be an Ingress RBridge, or an egress
> --> RBridge with
> --> > --> respect
> --> > --> >            to any set of entries in the CFT-IRT.
> --> > --> >
> --> > --> > This defintion is needed.  It is subsequently used
> --> in at least 4
> --> > --> places.
> --> > --> > When discussing the behavior of a specific RBridge
> --> > --> relative to a peer,
> --> > --> > it is convenient to define the term "local RBridge."
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 31> why is it zero or more, if an RBridge
> --> exists, it
> --> must
> --> > --> have
> --> > --> > --> a an IRT, I haven't seen any discussion to support
> --> > --> multiple IRTs.
> --> > --> > -->
> --> > --> >
> --> > --> > This was answered previously on the mailing list.
> --> > --> Briefly, zero or
> --> > --> > more is correct, given that an RBridge may not have
> --> > --> forwarding entries
> --> > --> > for frames it has received.  In these cases, a frame is
> --> > --> not forwarded.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 32> I don't understand this. Since the current
> --> > --> proposal uses
> --> > --> a
> --> > --> > --> multicast MAC address, what is needed is a bit map
> --> > --> for each IRT
> --> > --> that
> --> > --> > --> says which ports are blocking and which are
> --> > --> forwarding. You are
> --> > --> > --> basically building a ST using ISIS.
> --> > --> > -->
> --> > --> >
> --> > --> > This might be the case for a specific implementation.
> --> > --> Whether it is
> --> > --> > implemented as a "bit-mask" with "non-blocking"
> --> > --> (forwarding) ports, or
> --> > --> > is implemented as a full-blown table is largely dependent
on
> --> what
> --> > --> other
> --> > --> > information the local device requires in order to
> --> > --> properly forwad the
> --> > --> > frame.  If - for example - a device has multiple
> --> > --> different port types,
> --> > --> > it may need to have more information for each port (or
that
> --> > --> information
> --> > --> > may be added later on).
> --> > --> >
> --> > --> > All of these are implementation choices that are
> --> > --> logically represented
> --> > --> > by the table described here.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 33> I don't get the pair.
> --> > --> > -->
> --> > --> >
> --> > --> > Since this immediately follows:
> --> > --> >
> --> > --> >         Each entry would contain an indication of
> --> which single
> --> > --> interface
> --> > --> >         a broadcast, multicast or flooded frame would be
> --> > --> forwarded for
> --> > --> >         each (ingress RBridge, egress RBridge) pair.
> --> > --> >
> --> > --> > I don't get what you don't get.
> --> > --> >
> --> > --> > The pair refers to the tuple "(ingress RBridge, egress
> --> RBridge)."
> --> > --> >
> --> > --> > This might be the point at which your earlier point (Sgai
4)
> --> would
> --> > --> make
> --> > --> > sense to insert.  I had logically modeled this in my own
> --> > --> mind as two
> --> > --> > distinct "interfaces" (the reason I use this term, rather
> --> > --> thhan port),
> --> > --> > but I should clarify this.
> --> > --> >
> --> > --> > In any case, the entries are keyed by both ingress and
> --> > --> egress RBridge.
> --> > --> > While there will be entries for only those egress
> --> > --> RBridges where this
> --> > --> > local RBridge is on the shortest path (between the given
> --> > --> ingress and
> --> > --> > egress pair), there will be at most one entry per
> --> any ingress
> --> and
> --> > --> > egress pair.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 34> as a matter of fact each interface is
> --> > --> basically a set of
> --> > --> two
> --> > --> > --> interfaces, a regular one and a tunnel one, and the
> --> > --> > forwarding/blocking
> --> > --> > --> state may be different for the two.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > As per my response to your point (Sgai 28) above, not
> --> > --> every RBridge
> --> > --> has a
> --> > --> > "regular one" as you describe here.
> --> > --> >
> --> > --> > The forwarding/blocking state is not applicable as
> --> > --> RBridges don't do
> --> > --> STP.
> --> > --> >
> --> > --> > For the native interface, fowarding/blocking state is
> --> > --> analogous to the
> --> > --> > "Designated RBridge" election process.
> --> > --> >
> --> > --> > Since this point evidently applies to -
> --> > --> >
> --> > --> >
Entries
> --> would
> --> > --> also
> --> > --> >         contain any required encapsulation information,
> --> > --> etc. required
> --> > --> >         for forwarding on a given interface, and toward a
> --> > --> corresponding
> --> > --> >         specific egress RBridge.
> --> > --> >
> --> > --> > - your point, and my response, are related to the point
> --> > --> (and response)
> --> > --> > above (Sgai 33), and I will try to clarify this
> --> part as well.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 35> this protocol must be designed to avoid
> --> > --> transient loops,
> --> > --> > since
> --> > --> > --> transient loops of multicast/broadcast cause
> --> > --> broadcast storm that
> --> > --> are
> --> > --> > --> highly undesirable.
> --> > --> > -->
> --> > --> >
> --> > --> > No.
> --> > --> >
> --> > --> > The protocol needs to include a provision to prevent
> --> > --> _use_ of links
> --> > --> that
> --> > --> > may connect to transient loops.  Using a link-state
> --> > --> routing protocol
> --> > --> has
> --> > --> > clearly been demostrated to produce transient loops, but
> --> > --> the problem
> --> > --> you
> --> > --> > want to address has to do with using those links.
> --> > --> >
> --> > --> > A state-machine driven mechanism similar to STP might be
> --> > --> the approach
> --> > --> to
> --> > --> > use.
> --> > --> >
> --> > --> > Because we're incorporating TTL in the SHIM, however this
> --> > --> would need
> --> > --> to
> --> > --> > apply only to IRT traffic.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > -->
> --> > --> > --> Sgai 36> see my previous comment about VLANs
> --> > --> > -->
> --> > --> >
> --> > --> > See my previous responses.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> sgai 37> disabled -> blocking.
> --> > --> > -->
> --> > --> >
> --> > --> > See my response to your point (sgai 26) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 38> for multicast/broadcast we also need to
> --> > --> avoid transient
> --> > --> > loops.
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
> --> > --> processes, why
> --> > --> do
> --> > --> > we
> --> > --> > --> want to couple their timers?
> --> > --> > -->
> --> > --> >
> --> > --> > I am not suggesting "coupling their timers."  I am
> --> saying that
> --> the
> --> > --> value
> --> > --> > chosen for a timer (if one is used) to determine when it
> --> > --> is reasonable
> --> > --> to
> --> > --> > start RBridge peer discovery should take into
> --> account the time
> --> it
> --> > --> takes
> --> > --> > for the local spanning tree resolution.
> --> > --> >
> --> > --> > I feel the reason for this is self-evident but, just to
> --> > --> clarify, think
> --> > --> > about the process we're planning to use to determine
RBridge
> --> > --> nick-names.
> --> > --> > If we start this too early, we will be re-starting it
> --> > --> many times as we
> --> > --> > "hear from" new RBridge peers when the connecting links go
> --> active
> --> > --> after
> --> > --> > local bridges go to the forwarding state.  This would
> --> > --> apply only at
> --> > --> the
> --> > --> > system start up as - after that - you are quite correct
> --> > --> in asserting
> --> > --> it
> --> > --> > would be an ongoing process.
> --> > --> >
> --> > --> > Perhaps I should add some words to indicate that a delay
> --> > --> would not be
> --> > --> > necessary if the protocol mechanisms do not introduce
> --> > --> instability as a
> --> > --> > new peer is discovered.  So far, I have not seen any
> --> > --> indication that a
> --> > --> > "race-free" solution to accomplish this has been designed
> --> > --> - or talked
> --> > --> > about.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 40> there is also a requirement to time-out
learnt
> --> > --> information to
> --> > --> > --> maintain the filtering databases.
> --> > --> > -->
> --> > --> >
> --> > --> > There would be, if we were doing that.  Instead,
> --> we're adopting
> --> a
> --> > --> > link-state routing protocol and they tend to have
> --> that covered.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 41> periodically or on demand
> --> > --> > -->
> --> > --> >
> --> > --> > See the response to your point (Sgai 40) above.
> --> > --> >
> --> > --> > -- [snip --
> --> > --> > -->
> --> > --> > --> Sgai 42> potentially there is an unencapsulated
> --> > --> interface for each
> --> > --> > --> physical interface of the RBridge. It is true that
> --> > --> you can model
> --> > --> all
> --> > --> > --> of them as a single separate logical interface, but
> --> > --> then we need
> --> > --> to
> --> > --> > --> replicate the frame according to a bitmask that tells
on
> --> which
> --> > --> > physical
> --> > --> > --> interface the RBridge is designated.
> --> > --> > -->
> --> > --> >
> --> > --> > Again, your use of a "bitmask" is an implementation
> --> > --> choice as opposed
> --> > --> > to a logical model.
> --> > --> >
> --> > --> > As you observe, I do "model all of them as a single
> --> > --> separate logical
> --> > --> > interface" and if you want to "replicate the frame
> --> according to
> --> a
> --> > --> > bitmask that tells on which physical interface the
> --> RBridge is
> --> > --> > designated" - you're absolutely free to do so.
> --> > --> >
> --> > --> > Personally, I think this is far too much implementation
> --> > --> stuff for a
> --> > --> > protocol specification, let alone an architecture
document.
> --> > --> >
> --> > --> > -->
> --> > --> > --> Sgai 43> can we clarify that this means "drop BPDUs".
> --> > --> > -->
> --> > --> >
> --> > --> > Yes.
> --> > --> >
> --> > --> > -- [snip --
> --> > -->
> -->

From: "Gray, Eric" <[email-masked]>
To: Russ White <[email-masked]>, "Gray, Eric" <[email-masked]>
Date: Wed, 1 Nov 2006 11:48:28 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr	 aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 1739

Russ,

	I agree completely.

--
Eric 

--> -----Original Message-----
--> From: Russ White [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:27 AM
--> To: Gray, Eric
--> Cc: Silvano Gai; [email-masked]
--> Subject: Re: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/dr 
--> aft-ietf-trill-rbridge-arch-01.txt
--> 
--> -----BEGIN PGP SIGNED MESSAGE-----
--> Hash: SHA1
--> 
--> 
--> > 	The notion of using a L2 version of ECMP is - IMO - in no way
--> > implied
--> > by the text in the charter.  Nor is there any explicit 
--> intention to preclude
--> > this type of activity - with the caveat that anyone doing 
--> so has to assume
--> > responsibility for not "breaking" the interoperability model.
--> 
--> And this is as it should be, IMHO. If you know, for 
--> certain, that your
--> entire network is made up of rbridges, rather than a 
--> mixture of various
--> types of bridging devices, then you could use L2 ECMP. If you don't,
--> then you (probably) can't.
--> 
--> I think this decision is in the hands of network operators and
--> implementors, though, not in the hands of the spec writers. 
--> If we say:
--> "X is dangerous in specific situation Y, therefore we will 
--> never allow
--> X," then we are shutting down possible avenues for 
--> growth--such as the
--> stuff we're talking about with F-Tags.
--> 
--> :-)
--> 
--> Russ
--> 
--> - --
--> [email-masked] CCIE <>< Grace Alone
--> 
--> -----BEGIN PGP SIGNATURE-----
--> Version: GnuPG v1.4.2.2 (MingW32)
--> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> 
--> iD8DBQFFSMq2ER27sUhU9OQRAkrFAJ0cDSgqRhSi5zT6SvbCOO0z4PUCcQCfQJ3l
--> 8omzi9hZhNEBFvKNWeYo1kQ=
--> =eRrz
--> -----END PGP SIGNATURE-----
--> 

From: "Gray, Eric" <[email-masked]>
To: Russ White <[email-masked]>, "Gray, Eric" <[email-masked]>
Date: Wed, 1 Nov 2006 11:48:04 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr	 aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 1406

Russ,

	I will add the "demux text" to the definition of Node... 

--
Eric

--> -----Original Message-----
--> From: Russ White [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:23 AM
--> To: Gray, Eric
--> Cc: Silvano Gai; [email-masked]
--> Subject: Re: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/dr 
--> aft-ietf-trill-rbridge-arch-01.txt
--> 
--> -----BEGIN PGP SIGNED MESSAGE-----
--> Hash: SHA1
--> 
--> 
--> 
--> > However, we in the IETF are more familiar with the term "node." 
--> > 
--> > This is hardly a significant issue.  if people agree that 
--> we should
--> > use the term "station" as opposed to "node", then I will 
--> change it.
--> 
--> I prefer node, since that's the common IETF wording, and 
--> one that people
--> will understand. It also relates to graph theory better 
--> than "station"
--> does. It might be useful to note this relationship in the 
--> definitions
--> someplace or another, but I don't see a reason to change 
--> the entire doc
--> around.
--> 
--> :-)
--> 
--> Russ
--> 
--> - --
--> [email-masked] CCIE <>< Grace Alone
--> 
--> -----BEGIN PGP SIGNATURE-----
--> Version: GnuPG v1.4.2.2 (MingW32)
--> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
--> 
--> iD8DBQFFSMnJER27sUhU9OQRAmEsAKDexb89IG4s4VVEdYcZ6v+mEhlcZACfUYDT
--> cw3YUKtBBTa3FI0BTaVM18o=
--> =AghD
--> -----END PGP SIGNATURE-----
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 11:46:22 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] VLANs
Status: RO
Content-Length: 9373

Silvano,

	VLAN tag-stacking is something that is done already.  It
requires no special explanation from me, as the way it is done 
is completely orthogonal to anything we are doing here in the
IETF.  That includes anything we are doing here in the TRILL WG.

	However, in the interest of trying not to be too opaque,
ask yourself what it would mean if the "Ethertype" in the 802.1Q
encaspulation indicates that it is followed by an 802.1Q frame.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 11:23 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] VLANs
--> 
--> Eric,
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Wednesday, November 01, 2006 8:07 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] VLANs
--> > 
--> > Silvano,
--> > 
--> > 	I believe I've stated my position on using the IVLAN/OVLAN
--> > terminology, but just in case - I don't think it's necessary and
--> > I don't think it helps.
--> 
--> I think it does.
--> 
--> > 
--> > 	It seems to me that the description you provide below is an
--> > ample demonstration of the confusion that the use of these terms
--> > can introduce.
--> 
--> No, it is a demonstration of the confusion that not 
--> introducing these
--> terms creates.
--> 
--> > 
--> > 	For example, let's really complicate your example by using
--> > stacked VLAN tagging both in the tunnel encapsulation and in the
--> > native encapsulation for portions of the assumed domain. 
--> 
--> You have already mentioned this stacking and other magic that TRILL
--> plans to do with VLANs, but you have never provided a consistent
--> explanation. Is this part of TRILL or not?
--> 
--> Is TRILL defined to be mapped on a single OVLAN or on multiple? 
--> Is this written in any draft?
--> 
--> Can you explain this clearly?
--> 
--> Thank You
--> 
--> -- Silvano
--> 
-->  In the
--> > (deliberately) complicated model I've just described, what does
--> > the IVLAN/OVLAN distinction mean?
--> > 
--> > 	In fact, one reason not to distinguish the two is that - in
--> > the text you're referring to - the impact of which it is that may
--> > apply is nil.  Hence by not making a distinction, we're allowed a
--> > certain economy in communicating.
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Wednesday, November 01, 2006 12:55 AM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] VLANs
--> > -->
--> > -->
--> > --> Eric,
--> > -->
--> > --> I disagree and let me give you concrete examples why:
--> > -->
--> > --> draft-ietf-trill-rbridge-protocol-00.txt says:
--> > -->
--> > --> "each RBridge R1
--> > -->    will run a "core" instance of IS-IS for the core RBridge
--> > --> information,
--> > -->
--> > -->    and an instance per VLAN that R1 is attached to, for the
--> endnode
--> > -->    information for those VLANs."
--> > -->
--> > --> If we are speaking of OVLAN, IMO an RBridge runs a 
--> core instance
--> per
--> > --> each OVLAN and on that instance it propagates the endnode
--> > --> information
--> > --> for the IVLANs."
--> > -->
--> > --> " The endnode information for VLAN A, which is carried in
--> > --> the VLAN A
--> > -->    IS-IS instance injected by R1, contains:"
--> > -->
--> > --> This clearly refers to IVLAN.
--> > -->
--> > --> draft-ietf-trill-prob-01.txt says:
--> > -->
--> > --> It may alternately support
--> > -->    direct VLAN support, e.g., by the use of separate 
--> TRILL routing
--> > -->    protocol instances to separate traffic for each VLAN
--> > --> traversing a
--> > -->    TRILL solution.
--> > -->
--> > --> Is this an IVLAN or an OVLAN?
--> > -->
--> > -->
--> > --> draft-ietf-trill-rbridge-arch-01.txt says
--> > -->
--> > --> Ingress RBridge Tree: a tree computed for each edge RBridge -
--> > -->            and potentially for each VLAN in which that RBridge
--> > -->            participates
--> > -->
--> > --> I assume this is an OVLAN, I don't think TRILL computes an
--> > --> IRT for each
--> > --> IVLAN; it can prune an IRT for each VLAN.
--> > -->
--> > --> In an email to Dinesh you wrote:
--> > -->
--> > --> "Dinesh,
--> > -->
--> > --> 	We're making semantic distinctions here.  I can 
--> easily define a
--> > --> VLAN consisting of a group of RBridges that corresponds to the
--> same
--> > --> semantics as the FTAG.  "
--> > -->
--> > --> Were you referring to an IVLAN or an OVLAN?
--> > -->
--> > --> Also you claim that 16 bits are not sufficient for 
--> the RBridge ID.
--> > --> Is the RBridge ID space replicated per each OVLAN or 
--> is it shared?
--> > --> Does an RBridge have the same RBridge ID on all OVLANs?
--> > -->
--> > --> I think we need to explicitly introduce the IVLAN and OVLAN
--> > --> concepts and
--> > --> use them consistently. We don't want to hide complexity due
--> > --> to the lack
--> > --> of nomenclature.
--> > -->
--> > --> -- Silvano
--> > -->
--> > -->
--> > -->
--> > -->
--> > -->
--> > -->
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Tuesday, October 31, 2006 9:04 AM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] VLANs
--> > --> >
--> > --> > Silvano,
--> > --> >
--> > --> > 	Actually, both "types" of VLANs are the same - applying
--> at
--> > --> > different layers, but defined using the same terminology.
--> Logic,
--> > --> > semantics and applicability are the same.
--> > --> >
--> > --> > 	For historic reasons, we are trying to avoid the terms
--> you
--> > --> > propose.  In fact, similar terms have been used 
--> previously and
--> > --> > removed as confusing.  Without constant reminders, 
--> "inner" and
--> > --> > "outer" will be taken in some instances as placement in the
--> frame
--> > --> > (as you are suggesting) or position relative to the CRED (a
--> usage
--> > --> > issue with the terms "ingress" and "egress" meaning 
--> "way in" and
--> > --> > "way out" respectively).
--> > --> >
--> > --> > 	Hence you are suggesting replacement with one potential
--> > --> > are of confusion with another one we've earlier discarded.
--> > --> >
--> > --> > 	The architecture document defines the term VLAN and - I
--> am
--> > --> > reasonably sure - uses that definition 
--> consistently.  Moreover,
--> > --> > the architecture document tries to be agnostic 
--> about the use of
--> > --> > VLANs - particularly with respect to VLAN tagged 
--> encapsulation
--> > --> > and port-based VLANs, and where these things might 
--> apply.  The
--> > --> > reason for this is simply that one aim of protocol 
--> development -
--> > --> > especially at the architectural level - should be to avoid
--> placing
--> > --> > constraints on implementation beyond those 
--> explicitly required
--> > --> > to ensure interoperability.
--> > --> >
--> > --> > --
--> > --> > Eric
--> > --> >
--> > --> > --> -----Original Message-----
--> > --> > --> From: [email-masked]
--> > --> > --> [mailto:[email-masked]] On Behalf 
--> Of Silvano Gai
--> > --> > --> Sent: Monday, October 30, 2006 12:29 PM
--> > --> > --> To: [email-masked]
--> > --> > --> Subject: [rbridge] VLANs
--> > --> > -->
--> > --> > -->
--> > --> > --> The second biggest issue I have with the four documents
--> > --> > --> (first one being
--> > --> > --> broadcast/multicast storm) is the definition of VLANs.
--> > --> > -->
--> > --> > --> I don't think the term VLAN is used consistently in
--> > --> the documents.
--> > --> > -->
--> > --> > --> 1) Sometimes VLAN refers to the VLANs present on the
--> > --> > --> untagged frames,
--> > --> > --> which must be propagated by ISIS, VLAN pruning must be
--> > --> > --> performed and so
--> > --> > --> on. They all share the same core instance of ISIS.
--> > --> > -->
--> > --> > --> 2) Sometimes VLANs refers to the fact that a CRED can be
--> > --> > --> encapsulated
--> > --> > --> into a VLAN (present as a 1Q tag in the outer 
--> header) and
--> > --> > --> therefore ISIS
--> > --> > --> will run per VLAN, i.e. there will be a core instance of
--> > --> > --> ISIS per each
--> > --> > --> VLAN. This seems to be the case in some part of the
--> > --> architectural
--> > --> > --> document.
--> > --> > -->
--> > --> > --> I propose to name the former IVLAN (inner VLAN) and the
--> latter
--> > --> OVLAN
--> > --> > --> (Outer VLAN), with reference to the position of 
--> the 1Q tag
--> > --> > --> in the frame.
--> > --> > -->
--> > --> > --> This is also very relevant for the discussion 
--> that we need
--> > --> > --> to complete
--> > --> > --> on the FTAG: it is my understanding that some 
--> folks think
--> > --> > --> that the FTAG
--> > --> > --> is not needed, since there may be an OVLAN.
--> > --> > -->
--> > --> > --> Comments?
--> > --> > -->
--> > --> > --> -- Silvano
--> > --> > -->
--> > --> > --> _______________________________________________
--> > --> > --> rbridge mailing list
--> > --> > --> [email-masked]
--> > --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > --> > -->
--> > -->
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 11:38:33 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 42808

Silvano,

	History is not particularly relevant, but the term "Ethernet"
was originally coined by its inventor, Bob Metcalfe (who - by the 
way - did not work for DEC, but worked instead for Xerox at PARC). 

	The Ethernet standard was subsequently developed as a joint 
effort involving DEC, Intel and Xerox.

	By stating that - when I use the term "Ethernet" - I mean to
include all LAN technologies under IEEE 802, I'm merely introducing 
a short-hand terminology.  In that sense, I am not re-defining the
term, I am merely saying what I mean when I say "Ethernet."  If you
read the text, you should see that I clearly state the intention to
define the terminology the way that it will be used in the document.

	I believe that is an appropriate technique, in this case.  I 
also regard this part of the "feedback" as "stylistic" since you are
objecting to my using a term in the way that I defined it.  In the
literature, there are plenty of examples of redefining terminology 
to facilitate understanding and communication.  In this case, using
"Ethernet" in this fashion reduces the "communication overhead" we
will encounter if I replace that term with either a single term I 
make up from scratch, or a compound phrase such as "802.3, 802.11, 
802.1Q, etc."

	For many of us, the term Ethernet already encompasses these
additional technologies.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 1:21 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> 
--> Eric,
--> 
--> I disagree.
--> 
--> I don't think it is wise for TRILL to redefine the term Ethernet.
--> Ethernet is a term that has a well known meaning in the industry.
--> The original definition is:
--> Digital Equipment Corporation, Intel, Xerox, The Ethernet, 
--> Version 2.0,
--> November 1982.
--> Which has been then standardized by IEEE 802.3.
--> 
--> To speak about other IEEE 802 standards that are alive and 
--> used, IEEE
--> 802.11 (Wireless LAN) and IEEE 802.17 (Resilient Packet 
--> Ring Working)
--> have nothing to do with Ethernet.
--> 
--> -- Silvano
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Tuesday, October 31, 2006 2:44 PM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	To be perfectly frank, I am unaware of any reason not to include
--> > token ring or any other obsolete form of "Ethernet equivalent
--> technology"
--> > - this is one of the reason to focus on the SHIM as 
--> separate from any
--> > specific encapsulation above or below the SHIM.
--> > 
--> > 	If you want to check it against all 802 activities, that's fine.
--> > I would suggest, however, that even though people are 
--> realistically
--> not
--> > going to implement most of the hairy/scary versions in an 
--> RBridge, I
--> do
--> > not know of a good reason to exclude them at this point.  
--> In abstract,
--> > it is certainly possible that people will be able to work out
--> specifics
--> > of implementation - if and when they decide to do so.
--> > 
--> > 	After all, we (the industry) have been building translation
--> bridges
--> > for these technologies for decades.
--> > 
--> > 	However, I am open to scoping the architecture to apply only to
--> a
--> > limited subset of 802 technologies, if that is what would 
--> make people
--> > happy...
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: Silvano Gai [mailto:[email-masked]]
--> > --> Sent: Tuesday, October 31, 2006 5:34 PM
--> > --> To: Gray, Eric
--> > --> Cc: [email-masked]
--> > --> Subject: RE: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > -->
--> > --> Eric,
--> > -->
--> > --> A quick reply:
--> > --> Are you telling me that the term Ethernet includes Token Ring,
--> Token
--> > --> Bus, DQDB?
--> > -->
--> > --> This is what you are doing when you say that Ethernet 
--> is IEEE 802
--> > --> instead of IEEE 802.3.
--> > -->
--> > --> This is NOT a terminology issue. If the term Ethernet means
--> > --> 802 I need
--> > --> to check the operation of TRILL against all the 802 
--> technologies.
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> > -----Original Message-----
--> > --> > From: Gray, Eric [mailto:[email-masked]]
--> > --> > Sent: Tuesday, October 31, 2006 1:46 PM
--> > --> > To: Silvano Gai
--> > --> > Cc: [email-masked]
--> > --> > Subject: RE: [rbridge] Comments on:
--> http://www.ietf.org/internet-
--> > --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > --> >
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 4> an RBridge must be also able to send 
--> two copies of a
--> > --> > --> unicast/multicast/broadcast packet on the same 
--> port when it
--> > --> > --> acts as a designated RBridge (one copy is 
--> encapsulated, the
--> > --> > --> other not).
--> > --> > -->
--> > --> >
--> > --> > This, I think, refers to the immediately preceding 
--> text in the
--> > --> > architecture:
--> > --> >
--> > --> >         Forwarding information is derived from the 
--> combination
--> of
--> > --> >         attached MAC address learning, snooping of
--> > --> multicast-related
--> > --> >         protocols (e.g. - IGMP), and routing
--> > --> advertisements and path
--> > --> >         computations using the link-state routing protocol.
--> > --> >
--> > --> > While your comment is a reasonable one - although 
--> potentially
--> > --> > implementation specific - it does not appear to 
--> have any bearing
--> > --> > on this text.
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > --> Sgai 5> here there is some confusion between 
--> 802 and 802.3
--> > --> > -->
--> > --> >
--> > --> > This  refers (I believe) to the immeditately preceding text:
--> > --> >
--> > --> >         The following terminology is defined in 
--> other documents.
--> A
--> > --> brief
--> > --> >         definition is included in this section for
--> > --> convenience and -
--> > --> in
--> > --> >         some cases - to remove any ambiguity in how the
--> > --> term may be
--> > --> used
--> > --> >         in this document, as well as derivative documents
--> > --> intended to
--> > --> >         specify components, protocol, behavior and 
--> encapsulation
--> > --> >         relative to the architecture specified in 
--> this document.
--> > --> >
--> > --> >         o  802: IEEE Specification for the Ethernet
--> architecture,
--> > --> i.e.,
--> > --> >            including hubs and bridges.
--> > --> >
--> > --> > In this text, I explicitly state that these terms 
--> are defined
--> > --> elsewhere.
--> > --> > I am also trying to use the most generic definition 
--> of Ethernet
--> > --> possible.
--> > --> >
--> > --> > The reason for this is that the problem statement does
--> > --> not restrict
--> > --> the
--> > --> > solution to 802.3.
--> > --> >
--> > --> > There is some confusion in referring to 802.3 in 
--> any case: we
--> > --> explicitly
--> > --> > want to include 802.1Q - as well as all of its 
--> variations and
--> > --> extensions.
--> > --> >
--> > --> > Consequently, we define the term Ethernet in the broadest
--> possible
--> > --> sense.
--> > --> >
--> > --> >
--> > --> > -- [snip] --
--> > --> > -->
--> > --> > -->        o  Bridge Spanning Tree (BST): an Ethernet (L2,
--> 802.1D)
--> > --> > -->           forwarding protocol based on the topology
--> > --> of a spanning
--> > --> > tree.
--> > --> > -->
--> > --> > --> Sgai 6> I have never seen the acronym BST, 
--> everyone use STP.
--> > --> > -->
--> > --> >
--> > --> > I do not know if this term is used in any of the other
--> documents,
--> > --> > but it is not used in this one.  Unless someone 
--> objects, I am
--> only
--> > --> > too happy to remove it from this document.
--> > --> >
--> > --> > From a historical perspective, this was defined this way
--> > --> originally
--> > --> > because we were re-using the term spanning tree instead
--> > --> of IRT.  It
--> > --> > was causing amazing communication difficulties, so 
--> we came up
--> with
--> > --> > the term IRT.  Now we don't need to differentiate BST.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 7> for Ethernet is better to reference 802.3
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (Sgai 5) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Hub: an Ethernet (L2, 802) device with
--> > --> multiple ports
--> > --> which
--> > --> > -->
--> > --> > --> sgai 8> for Hub is better to reference 802.3
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (Sgai 5) above.  By the
--> > --> definition we
--> > --> > provide in this document, Ethernet is defined 
--> broadly to include
--> > --> > 802 technologies.  This is reasonable, because the term was
--> stolen
--> > --> > by IEEE from a technology stolen from a satellite 
--> communication
--> > --> > protocol.  Ironic that 802.3 does not include wireless, all
--> things
--> > --> > considered.  Certainly the term "Ethernet" should...
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Node: a device with an L2 (MAC) address
--> > --> that sources
--> > --> and/or
--> > --> > -->            sinks L2 frames.
--> > --> > -->
--> > --> > --> Sgai 9> The IEEE term is "station".
--> > --> > -->
--> > --> >
--> > --> > However, we in the IETF are more familiar with the 
--> term "node."
--> > --> >
--> > --> > This is hardly a significant issue.  if people agree that
--> > --> we should
--> > --> > use the term "station" as opposed to "node", then I will
--> > --> change it.
--> > --> >
--> > --> > Note that we should be consistent in this usage, if we
--> > --> decide to do
--> > --> > yet another terminology evolution.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Segment: an Ethernet link, either a single
--> physical
--> > --> link or
--> > --> > -->            emulation thereof (e.g., via hubs) or a
--> > --> logical link or
--> > --> > -->            emulation thereof (e.g., via bridges).
--> > --> > -->
--> > --> > --> Sgai 10> IEEE uses the term "LAN segment"
--> > --> > -->
--> > --> >
--> > --> > I agree, however this is the definition we agreed on here.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Subnet, Ethernet: a single segment, 
--> or a set of
--> > --> segments
--> > --> > -->            interconnected by a CRED (see 
--> section 2.2); in
--> the
--> > --> latter
--> > --> > -->
--> > --> > --> sgai 11> There is no concept of subnet in IEEE. 
--> Subnet is
--> > --> typically
--> > --> > --> an IP subnet, and, even if it is common to have 
--> one subnet
--> per
--> > --> LAN,
--> > --> > --> this is not the only possibility. Pragmatically 
--> IP subnets
--> and
--> > --> > --> Ethernet LAN are unrelated concepts.
--> > --> > -->
--> > --> >
--> > --> > Again, we are defining this term for use in this
--> > --> document.  Does its
--> > --> > use (not its definition) cause confusion or ambiguity?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            case, the subnet may or may not be 
--> equivalent to
--> a
--> > --> single
--> > --> > -->            segment. Also a subnet may be 
--> referred to as a
--> > --> broadcast
--> > --> > -->            domain or LAN. By definition, all 
--> nodes within an
--> > --> Ethernet
--> > --> > -->            Subnet (broadcast domain or LAN) must have L2
--> > --> connectivity
--> > --> > -->            with all other nodes in the same 
--> Ethernet subnet.
--> > --> > -->
--> > --> > -->         o  TRILL: Transparent Interconnect over Lots
--> > --> of Links -
--> > --> the
--> > --> > -->            working group and working name for the
--> > --> problem domain
--> > --> to be
--> > --> > -->            addressed in this document.
--> > --> > -->
--> > --> > -->         o  Unicast Forwarding: forwarding methods
--> > --> that apply to
--> > --> frames
--> > --> > -->            with unicast destination MAC addresses.
--> > --> > -->
--> > --> > -->         o  Unknown Destination - a destination 
--> for which a
--> > --> receiving
--> > --> > -->            device has no filtering database entry.
--> > --> Destination
--> > --> (layer
--> > --> > -->
--> > --> > --> sgai 12> the stations receive the unknown 
--> unicast and have
--> > --> filtering
--> > --> > --> information, only the bridges don't. I propose to
--> > --> replace device
--> > --> with
--> > --> > --> bridge.
--> > --> > -->
--> > --> >
--> > --> > Again, it is the intention to provide as broad a 
--> definition as
--> > --> possible
--> > --> > without introducing confusion or ambiguity.  An end node
--> > --> (or station)
--> > --> > has - in a sense - a filtering database (it's mine, or
--> > --> it's for the
--> > --> bit
--> > --> > bucket).
--> > --> >
--> > --> > We need to explicitly include 802.1D forwarding devices
--> > --> and RBridges.
--> > --> >
--> > --> > However, the definition should specify "forwarding 
--> device" - as
--> > --> opposed
--> > --> > to just "receiving device."
--> > --> >
--> > --> > I will change that.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            2) addresses are typically "learned" 
--> by (layer 2)
--> > --> > forwarding
--> > --> > -->            devices via a process commonly referred to
--> > --> as "bridge
--> > --> > learning".
--> > --> > -->
--> > --> > --> Sgai 13> in IEEE, the term used is "learning" instead
--> > --> of "bridge
--> > --> > learning"
--> > --> > -->
--> > --> >
--> > --> > However, the term defined in this document is 
--> "bridge learning."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  VLAN: Virtual Local Area Network. VLANs in
--> > --> general fall
--> > --> > into
--> > --> > -->            two categories: link (or port) 
--> specific VLANs and
--> > --> tagged
--> > --> > -->            VLANs. In the former case, all frames
--> > --> forwarded and all
--> > --> > -->            directly connected nodes are assumed to be
--> > --> part of a
--> > --> single
--> > --> > -->            VLAN.  In the latter case, VLAN tagged
--> > --> frames are used
--> > --> to
--> > --> > -->            distinguish which VLAN each frame is intended
--> for.
--> > --> > -->
--> > --> > --> Sgai 14> This definition is not completely correct, I
--> prefer:
--> > --> > -->
--> > --> > --> VLAN technology introduces the following three 
--> basic types
--> of
--> > --> frame:
--> > --> > --> a) Untagged frames;
--> > --> > --> b) Priority-tagged frames; and
--> > --> > --> c) VLAN-tagged frames.
--> > --> > -->
--> > --> > --> An untagged frame or a priority-tagged frame does not
--> > --> carry any
--> > --> > --> identification of the VLAN to which it belongs. Such
--> > --> frames are
--> > --> > --> classified as belonging to a particular VLAN based on
--> > --> parameters
--> > --> > --> associated with the receiving Port, or, through 
--> proprietary
--> > --> extensions
--> > --> > --> to IEEE 802.1Q standard, based on the data content of
--> > --> the frame
--> > --> (e.g.,
--> > --> > --> MAC Address, layer 3 protocol ID, etc.).
--> > --> > -->
--> > --> > --> A VLAN-tagged frame carries an explicit
--> > --> identification of the VLAN
--> > --> to
--> > --> > --> which it belongs; i.e., it carries a tag header 
--> that carries
--> a
--> > --> non-
--> > --> > null
--> > --> > --> VID. Such a frame is classified as belonging to a
--> > --> particular VLAN
--> > --> > based
--> > --> > --> on the value of the VID that is included in the tag
--> > --> header. The
--> > --> > presence
--> > --> > --> of the tag header carrying a non-null VID means that
--> > --> some other
--> > --> > device,
--> > --> > --> either the originator of the frame or a 
--> VLAN-aware Bridge,
--> has
--> > --> mapped
--> > --> > --> this frame into a VLAN and has inserted the 
--> appropriate VID.
--> > --> > -->
--> > --> >
--> > --> > So, you're getting into the details of the 
--> technology and - in
--> > --> particular
--> > --> > the encapsulation.  I will expand the definition to 
--> include a
--> > --> possibility
--> > --> > that other criteria may be used to define a "VLAN port" -
--> although
--> > --> this is
--> > --> > isomorphic to a logical model in which a device
--> > --> implementation uses
--> > --> some
--> > --> > criteria to decide that a subset of the traffic received
--> > --> on a specific
--> > --> > physical port is to be forwarded as if received on a
--> > --> specific logical
--> > --> > port.
--> > --> >
--> > --> > The key point in this definition is that a VLAN is a
--> > --> "Virtual LAN" -
--> > --> > meaning
--> > --> > it consists of a subset of the physical and L2 connectivity
--> > --> corresponding
--> > --> > to
--> > --> > a "logical LAN."  The intent is to "rise above" the
--> technological
--> > --> > approaches
--> > --> > and encapsulations to establish a generic definition that
--> > --> is loosely
--> > --> tied
--> > --> > to
--> > --> >
--> > --> > ways that this generic definition is actually implemented.
--> > --> >
--> > --> > Again, bearing in mind the way that the term is 
--> defined, does
--> the
--> > --> usage of
--> > --> > the term cause confusion or ambiguity?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Forwarding Table (CFT): the per-hop
--> forwarding
--> > --> table
--> > --> > -->            populated by the RBridge Routing Protocol;
--> > --> forwarding
--> > --> > within
--> > --> > -->            the CRED is based on a lookup of the 
--> CRED Transit
--> > --> Header
--> > --> > -->            (CTH) encapsulated within the 
--> outermost received
--> L2
--> > --> header.
--> > --> > -->            The outermost L2 encapsulation in this
--> > --> case includes
--> > --> the
--> > --> > -->            source MAC address of the immediate
--> > --> upstream RBridge
--> > --> > -->            transmitting the frame and destination MAC
--> > --> address of
--> > --> the
--> > --> > -->            receiving RBridge for use in the unicast
--> forwarding
--> > --> case.
--> > --> > -->
--> > --> > --> Sgai 15> In section 7 of
--> > --> > -->
--> > --> 
--> http://www.ietf.org/internet-drafts/draft-gai-perlman-trill-encap-
--> > --> > 00.txt
--> > --> > --> we proposed that when two rbridges are 
--> connected by a point
--> to
--> > --> point
--> > --> > --> link the outer MAC addresses may be set to a
--> > --> predefined value in
--> > --> > --> transmission and ignored in reception.
--> > --> > -->
--> > --> >
--> > --> > I'm not sure how your proposal intends to determine that
--> > --> a link is in
--> > --> > fact point-to-point and does not just look that way.
--> > --> >
--> > --> > I prefer to use the same encapsulation in all cases where it
--> will
--> > --> work.
--> > --> >
--> > --> > The optimization associated with using some form of
--> > --> null-encapsulation
--> > --> > is of dubious value, given that it may not be possible to
--> > --> be certain a
--> > --> > point-to-point link is - and will remain - in fact a
--> > --> point-to-point
--> > --> > link.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CFT-IRT: a forwarding table used for 
--> propagation
--> of
--> > --> > -->            broadcast, multicast or flooded 
--> frames along the
--> > --> Ingress
--> > --> > -->            RBridge Tree (IRT).
--> > --> > -->
--> > --> > --> Sgai 16> is it a forwarding table or is it a
--> > --> filtering database.
--> > --> Since
--> > --> > --> the "miss" behavior is to flood, I see it as a
--> > --> filtering database.
--> > --> > -->
--> > --> >
--> > --> > What state was "miss" behavior from - Hawaii?  :-)
--> > --> >
--> > --> > It is analogous to a filtering database entry, but it is not
--> that.
--> > --> >
--> > --> > Clearly there are more things in this world than can be
--> classified
--> > --> > in this taxonomy.  However, given these choices, it is a
--> > --> forwarding
--> > --> > table.
--> > --> >
--> > --> > This is not a misbehavior, in that the same "base" tree
--> > --> is used for
--> > --> > broadcast and multicast traffic as well as flooded
--> > --> traffic.  It may
--> > --> > be arguable that flooding is a misbehavior, but I 
--> seem to recall
--> > --> > that people still see it as a necessary evil.
--> > --> >
--> > --> > It is also not "miss" behavior (as in "cache miss") in
--> > --> the multicast
--> > --> > and broadcast case, either.
--> > --> >
--> > --> > I believe the definition is quite correct and easy to
--> understand,
--> > --> > provided you're not reading it with preconceived 
--> misconceptions
--> > --> > about its meaning.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Transit Header (CTH): a 'shim' 
--> header that
--> > --> > encapsulates
--> > --> > -->            the ingress L2 frame and persists 
--> throughout the
--> > --> transit of
--> > --> > a
--> > --> >
--> > --> > -->            CRED, which is further encapsulated within
--> > --> a hop-by-hop
--> > --> L2
--> > --> > -->            header (and trailer). The hop-by-hop L2
--> > --> encapsulation
--> > --> in
--> > --> > this
--> > --> >
--> > --> > -->            case includes the source MAC address of
--> > --> the immediate
--> > --> > -->            upstream RBridge transmitting the frame
--> > --> and destination
--> > --> MAC
--> > --> > -->            address of the receiving RBridge - 
--> at least in
--> the
--> > --> unicast
--> > --> > -->            forwarding case.
--> > --> > -->
--> > --> > --> Sgai 17> is this true also for unknown unicast?
--> > --> > -->
--> > --> >
--> > --> > That is something that will be (may be already) 
--> decided in the
--> > --> protocol
--> > --> > specification.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  CRED Transit Table (CTT): a table that maps
--> ingress
--> > --> frame
--> > --> > L2
--> > --> > -->            destinations to egress RBridge 
--> addresses, used to
--> > --> determine
--> > --> > -->            encapsulation of ingress frames for 
--> transit of
--> the
--> > --> CRED.
--> > --> > -->
--> > --> > -->         o  Cooperating RBridges - those RBridges
--> > --> within a single
--> > --> > -->            Ethernet Subnet (broadcast domain or LAN)
--> > --> not having
--> > --> been
--> > --> > -->            configured to ignore each other. By 
--> default, all
--> > --> RBridges
--> > --> > -->            within a single Ethernet subnet will 
--> cooperate
--> with
--> > --> each
--> > --> > -->            other. It is possible for implementations
--> > --> to allow for
--> > --> > -->            configuration that will restrict
--> > --> "cooperation" between
--> > --> an
--> > --> > -->            RBridge and an apparent neighboring 
--> RBridge.  One
--> > --> reason
--> > --> > why
--> > --> > -->            this might occur is if the trust model
--> > --> that applies in
--> > --> a
--> > --> > -->            particular deployment imposes a need for
--> > --> configuration
--> > --> of
--> > --> > -->            security information.  By default no such
--> > --> configuration
--> > --> is
--> > --> > -->            required however - should it be used in
--> > --> any specific
--> > --> > scenario
--> > --> > -->
--> > --> > -->            - it is possible (either deliberately or
--> > --> inadvertently)
--> > --> to
--> > --> > -->            configure neighboring RBridges so 
--> that they do
--> not
--> > --> > cooperate.
--> > --> > -->
--> > --> > -->            In the remainder of this document, 
--> all RBridges
--> are
--> > --> assumed
--> > --> > -->            to be in a cooperating (default) 
--> configuration.
--> > --> > -->
--> > --> > --> Sgai 18> can RBridges cooperate in groups, e.g. four
--> Rbridges
--> > --> > connected
--> > --> > --> to a LAN cooperating two and two?
--> > --> > -->
--> > --> >
--> > --> > Yes.  There may be reasons why this might be done 
--> deliberately,
--> > --> however
--> > --> > - even in the absence of any "proof of concept"
--> > --> justification - it is
--> > --> a
--> > --> > really good idea to design the protocol to be robust in
--> > --> cases where a
--> > --> > set of RBridges may be (mis)configured in such a way as
--> > --> to be unable
--> > --> to
--> > --> > discover each other.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  Ingress RBridge Tree: a tree 
--> computed for each
--> edge
--> > --> RBridge
--> > --> > -->            and potentially for each VLAN in which that
--> RBridge
--> > --> > -->
--> > --> > --> sgai 19> why for each VLAN? I got the 
--> impression that there
--> > --> > --> was a single tree that was pruned differently for
--> > --> different VLANs.
--> > --> > -->
--> > --> >
--> > --> > Pruning may also take place at the ingress, if - for
--> > --> example - it has
--> > --> a
--> > --> > subset of interfaces that are not connected to any 
--> egress for
--> > --> particular
--> > --> > VLANs.  It is a small point but, in such cases, there is in
--> effect
--> > --> more
--> > --> > than one IRT even at the ingress.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->            participates - for delivery of broadcast,
--> > --> multicast and
--> > --> > -->            flooded frames from that RBridge to all
--> > --> relevant egress
--> > --> > -->            RBridges. This is the point-to-multipoint
--> > --> delivery tree
--> > --> > used
--> > --> > -->            by an ingress RBridge to deliver
--> > --> multicast, broadcast
--> > --> or
--> > --> > -->            flooded traffic.
--> > --> > -->
--> > --> > --> Sgai 20> the current version of the proposal 
--> speaks about a
--> > --> multicast
--> > --> > --> address, not point-to-point.
--> > --> > -->
--> > --> >
--> > --> > I did not say "point-to-point" (look again).
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->         o  LPT: Learned Port Table. See 
--> Filtering Database.
--> > --> > -->
--> > --> > --> Sgai 21> not proper terminology, I would use
--> > --> "filtering database"
--> > --> > --> everywhere.
--> > --> > -->
--> > --> >
--> > --> > I am happy to remove this if there is no objection 
--> to my doing
--> so.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 22> I wired port is Ehernet, i.e. IEEE 802.3, a
--> > --> > --> wireless port is not Ethernet, it is IEEE 802.11.
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (sgai 8) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 23> they learn because STP guarantees
--> > --> symmetrical forwarding
--> > --> > -->
--> > --> >
--> > --> > This (apparently) refers to the immeditately preceding text:
--> > --> >
--> > --> >         Conventional bridges contain a learned port table
--> > --> (LPT), or
--> > --> >         filtering database, and a spanning tree table
--> > --> (STT). The LPT
--> > --> >         allows a bridge to avoid flooding all received
--> > --> frames, as is
--> > --> >         typical for a hub or repeater. The bridge learns
--> > --> which nodes
--> > --> are
--> > --> >         accessible from a particular port by assuming
--> > --> bi-directional
--> > --> >         consistency:
--> > --> >
--> > --> > I'm not sure how picking at the peculiarities of 
--> STP behavior is
--> > --> > relevant to this description.  STP results in a 
--> single spanning
--> > --> > tree where each link is bi-directional.  This 
--> ensures that the
--> > --> > MAC frames are forwarded in a bi-directionally consistent
--> fashion.
--> > --> >
--> > --> > To replace this text with yours is to provide less 
--> information.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 24> active ports -> forwarding ports
--> > --> > -->
--> > --> >
--> > --> > "Active ports" was the exact wording suggested to me.  In
--> > --> context for
--> > --> > this working group "active ports" is more meaningful than
--> > --> "forwarding
--> > --> > ports."  For people not used to STP-speak, "forwarding
--> > --> port" might be
--> > --> > used to discriminate from a "code port."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 25> there is no STT, there is a state associated
--> > --> with each
--> > --> port
--> > --> > --> that can be: disabled, blocking, listening, 
--> learning, and
--> > --> forwarding
--> > --> > -->
--> > --> >
--> > --> > Other than the issue with terminology, is this text 
--> wrong?  I am
--> > --> fairly
--> > --> > sure that different implementations handle the "port state"
--> > --> information
--> > --> > in different ways, and I am also reasonably sure that a
--> > --> "table" such
--> > --> as
--> > --> > the one described here is one of the ways it might be done.
--> > --> >
--> > --> > However, I agree with your assertion that this is the way
--> > --> that it is
--> > --> > usually talked about in an IEEE context, so - 
--> unless there are
--> > --> specific
--> > --> > objections - I can change the wording to be consistent
--> > --> with what you
--> > --> > suggest.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 26> disabled -> blocking
--> > --> > -->
--> > --> >
--> > --> > I can make this change as well.  However, from the
--> > --> perspective of what
--> > --> > we are trying to do, "disabled" is potentially a more
--> > --> correct term.
--> > --> It
--> > --> > is certainly more intuitively correct, outside of a
--> > --> strictly IEEE/STP
--> > --> > context.
--> > --> >
--> > --> > Symmetry is maintained in STP by blocking ports/links
--> > --> bi-directionally.
--> > --> > In such cases, a port is effectively disabled for bridges
--> > --> at either
--> > --> end
--> > --> > of the link for which a port is blocked, is it not?
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 27> I repeat a comment that I have made to other
--> > --> documents: "
--> > --> > --> The discussion about VLAN needs to be much more
--> > --> extensive. It is
--> > --> clear
--> > --> > --> from the mailing list discussion that VLANs can be
--> > --> used inside the
--> > --> > --> packet or in the Ethernet encapsulation of TRILL.
--> > --> These are two
--> > --> > --> different kinds of VLANs and their requirement need
--> > --> to be stated
--> > --> > --> separately. Q in Q needs also to be discussed. I
--> > --> propose to define
--> > --> > inner
--> > --> > --> and outer VLANs (with reference to the position of
--> > --> the tag in the
--> > --> > frame."
--> > --> > --> Here I think we are talking about outer VLANs
--> > --> > -->
--> > --> >
--> > --> > I responded to this in separate mail.  I wait to hear
--> > --> other opinions
--> > --> on
--> > --> > this subject.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 28> IMO all RBridges must be ingress RBridges,
--> > --> at least to
--> > --> > support
--> > --> > --> inband management, e.g. SNMP.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > In order to ensure symmetry with RBridges not
--> > --> participating in STP,
--> > --> there
--> > --> > MUST be a designated RBridge that does all of the 
--> sending and
--> > --> receiving
--> > --> > of native encapsulated frames on a LAN segment.
--> > --> >
--> > --> > Any RBridge the loses the "Designated RBridge" 
--> election cannot
--> be
--> > --> either
--> > --> > an ingress or an egress for that LAN segment.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 29> same as above
--> > --> > -->
--> > --> >
--> > --> > Same as above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 30> I think the previous definition is not needed.
--> > --> > -->
--> > --> >
--> > --> > This appears to refer to:
--> > --> >
--> > --> >         o  Local RBridge - the RBridge that forms and
--> > --> maintains the
--> > --> CFT-
--> > --> >            IRT entry (or entries) under discussion. The
--> > --> local RBridge
--> > --> >            may be an Ingress RBridge, or an egress 
--> RBridge with
--> > --> respect
--> > --> >            to any set of entries in the CFT-IRT.
--> > --> >
--> > --> > This defintion is needed.  It is subsequently used 
--> in at least 4
--> > --> places.
--> > --> > When discussing the behavior of a specific RBridge
--> > --> relative to a peer,
--> > --> > it is convenient to define the term "local RBridge."
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 31> why is it zero or more, if an RBridge 
--> exists, it
--> must
--> > --> have
--> > --> > --> a an IRT, I haven't seen any discussion to support
--> > --> multiple IRTs.
--> > --> > -->
--> > --> >
--> > --> > This was answered previously on the mailing list.
--> > --> Briefly, zero or
--> > --> > more is correct, given that an RBridge may not have
--> > --> forwarding entries
--> > --> > for frames it has received.  In these cases, a frame is
--> > --> not forwarded.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 32> I don't understand this. Since the current
--> > --> proposal uses
--> > --> a
--> > --> > --> multicast MAC address, what is needed is a bit map
--> > --> for each IRT
--> > --> that
--> > --> > --> says which ports are blocking and which are
--> > --> forwarding. You are
--> > --> > --> basically building a ST using ISIS.
--> > --> > -->
--> > --> >
--> > --> > This might be the case for a specific implementation.
--> > --> Whether it is
--> > --> > implemented as a "bit-mask" with "non-blocking"
--> > --> (forwarding) ports, or
--> > --> > is implemented as a full-blown table is largely dependent on
--> what
--> > --> other
--> > --> > information the local device requires in order to
--> > --> properly forwad the
--> > --> > frame.  If - for example - a device has multiple
--> > --> different port types,
--> > --> > it may need to have more information for each port (or that
--> > --> information
--> > --> > may be added later on).
--> > --> >
--> > --> > All of these are implementation choices that are
--> > --> logically represented
--> > --> > by the table described here.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 33> I don't get the pair.
--> > --> > -->
--> > --> >
--> > --> > Since this immediately follows:
--> > --> >
--> > --> >         Each entry would contain an indication of 
--> which single
--> > --> interface
--> > --> >         a broadcast, multicast or flooded frame would be
--> > --> forwarded for
--> > --> >         each (ingress RBridge, egress RBridge) pair.
--> > --> >
--> > --> > I don't get what you don't get.
--> > --> >
--> > --> > The pair refers to the tuple "(ingress RBridge, egress
--> RBridge)."
--> > --> >
--> > --> > This might be the point at which your earlier point (Sgai 4)
--> would
--> > --> make
--> > --> > sense to insert.  I had logically modeled this in my own
--> > --> mind as two
--> > --> > distinct "interfaces" (the reason I use this term, rather
--> > --> thhan port),
--> > --> > but I should clarify this.
--> > --> >
--> > --> > In any case, the entries are keyed by both ingress and
--> > --> egress RBridge.
--> > --> > While there will be entries for only those egress
--> > --> RBridges where this
--> > --> > local RBridge is on the shortest path (between the given
--> > --> ingress and
--> > --> > egress pair), there will be at most one entry per 
--> any ingress
--> and
--> > --> > egress pair.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 34> as a matter of fact each interface is
--> > --> basically a set of
--> > --> two
--> > --> > --> interfaces, a regular one and a tunnel one, and the
--> > --> > forwarding/blocking
--> > --> > --> state may be different for the two.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > As per my response to your point (Sgai 28) above, not
--> > --> every RBridge
--> > --> has a
--> > --> > "regular one" as you describe here.
--> > --> >
--> > --> > The forwarding/blocking state is not applicable as
--> > --> RBridges don't do
--> > --> STP.
--> > --> >
--> > --> > For the native interface, fowarding/blocking state is
--> > --> analogous to the
--> > --> > "Designated RBridge" election process.
--> > --> >
--> > --> > Since this point evidently applies to -
--> > --> >
--> > --> >                                                      Entries
--> would
--> > --> also
--> > --> >         contain any required encapsulation information,
--> > --> etc. required
--> > --> >         for forwarding on a given interface, and toward a
--> > --> corresponding
--> > --> >         specific egress RBridge.
--> > --> >
--> > --> > - your point, and my response, are related to the point
--> > --> (and response)
--> > --> > above (Sgai 33), and I will try to clarify this 
--> part as well.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 35> this protocol must be designed to avoid
--> > --> transient loops,
--> > --> > since
--> > --> > --> transient loops of multicast/broadcast cause
--> > --> broadcast storm that
--> > --> are
--> > --> > --> highly undesirable.
--> > --> > -->
--> > --> >
--> > --> > No.
--> > --> >
--> > --> > The protocol needs to include a provision to prevent
--> > --> _use_ of links
--> > --> that
--> > --> > may connect to transient loops.  Using a link-state
--> > --> routing protocol
--> > --> has
--> > --> > clearly been demostrated to produce transient loops, but
--> > --> the problem
--> > --> you
--> > --> > want to address has to do with using those links.
--> > --> >
--> > --> > A state-machine driven mechanism similar to STP might be
--> > --> the approach
--> > --> to
--> > --> > use.
--> > --> >
--> > --> > Because we're incorporating TTL in the SHIM, however this
--> > --> would need
--> > --> to
--> > --> > apply only to IRT traffic.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > -->
--> > --> > --> Sgai 36> see my previous comment about VLANs
--> > --> > -->
--> > --> >
--> > --> > See my previous responses.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> sgai 37> disabled -> blocking.
--> > --> > -->
--> > --> >
--> > --> > See my response to your point (sgai 26) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 38> for multicast/broadcast we also need to
--> > --> avoid transient
--> > --> > loops.
--> > --> > -->
--> > --> >
--> > --> > Yes.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 39> but RBridge discovery and STP are ongoing
--> > --> processes, why
--> > --> do
--> > --> > we
--> > --> > --> want to couple their timers?
--> > --> > -->
--> > --> >
--> > --> > I am not suggesting "coupling their timers."  I am 
--> saying that
--> the
--> > --> value
--> > --> > chosen for a timer (if one is used) to determine when it
--> > --> is reasonable
--> > --> to
--> > --> > start RBridge peer discovery should take into 
--> account the time
--> it
--> > --> takes
--> > --> > for the local spanning tree resolution.
--> > --> >
--> > --> > I feel the reason for this is self-evident but, just to
--> > --> clarify, think
--> > --> > about the process we're planning to use to determine RBridge
--> > --> nick-names.
--> > --> > If we start this too early, we will be re-starting it
--> > --> many times as we
--> > --> > "hear from" new RBridge peers when the connecting links go
--> active
--> > --> after
--> > --> > local bridges go to the forwarding state.  This would
--> > --> apply only at
--> > --> the
--> > --> > system start up as - after that - you are quite correct
--> > --> in asserting
--> > --> it
--> > --> > would be an ongoing process.
--> > --> >
--> > --> > Perhaps I should add some words to indicate that a delay
--> > --> would not be
--> > --> > necessary if the protocol mechanisms do not introduce
--> > --> instability as a
--> > --> > new peer is discovered.  So far, I have not seen any
--> > --> indication that a
--> > --> > "race-free" solution to accomplish this has been designed
--> > --> - or talked
--> > --> > about.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 40> there is also a requirement to time-out learnt
--> > --> information to
--> > --> > --> maintain the filtering databases.
--> > --> > -->
--> > --> >
--> > --> > There would be, if we were doing that.  Instead, 
--> we're adopting
--> a
--> > --> > link-state routing protocol and they tend to have 
--> that covered.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 41> periodically or on demand
--> > --> > -->
--> > --> >
--> > --> > See the response to your point (Sgai 40) above.
--> > --> >
--> > --> > -- [snip --
--> > --> > -->
--> > --> > --> Sgai 42> potentially there is an unencapsulated
--> > --> interface for each
--> > --> > --> physical interface of the RBridge. It is true that
--> > --> you can model
--> > --> all
--> > --> > --> of them as a single separate logical interface, but
--> > --> then we need
--> > --> to
--> > --> > --> replicate the frame according to a bitmask that tells on
--> which
--> > --> > physical
--> > --> > --> interface the RBridge is designated.
--> > --> > -->
--> > --> >
--> > --> > Again, your use of a "bitmask" is an implementation
--> > --> choice as opposed
--> > --> > to a logical model.
--> > --> >
--> > --> > As you observe, I do "model all of them as a single
--> > --> separate logical
--> > --> > interface" and if you want to "replicate the frame 
--> according to
--> a
--> > --> > bitmask that tells on which physical interface the 
--> RBridge is
--> > --> > designated" - you're absolutely free to do so.
--> > --> >
--> > --> > Personally, I think this is far too much implementation
--> > --> stuff for a
--> > --> > protocol specification, let alone an architecture document.
--> > --> >
--> > --> > -->
--> > --> > --> Sgai 43> can we clarify that this means "drop BPDUs".
--> > --> > -->
--> > --> >
--> > --> > Yes.
--> > --> >
--> > --> > -- [snip --
--> > -->
--> 

Date: Wed, 01 Nov 2006 11:34:49 -0500
From: Russ White <[email-masked]>
To: Silvano Gai <[email-masked]>
Cc: [email-masked], Radia Perlman <[email-masked]>
Subject: Re: [rbridge] New shim header proposal---without F-tag field
Status: RO
Content-Length: 928

>> 	I don't think there is consensus yet that we only need 16 bits
>> for RBridge IDs.
> 
> With 16 bits, using 1 bit to indicate unicast, we can have 32K switches.
> According to the current definition of TRILL, there is the need to run
> Djikstra on a database with 32K records, one time for the core instance
> and 32K times for the IRTs. This is clearly out of reach even for the
> most powerful CPU. 

?? Perhaps 32k trees is a stretch, but 32k nodes in a tree? I don't
think that's really a stretch on today's processors, from the scaling
work I've seen done in IS-IS.

:-)

Russ

- --
[email-masked] CCIE <>< Grace Alone

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 08:34:26 -0800
From: "Silvano Gai" <[email-masked]>
To: "Russ White" <[email-masked]>, "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 1640

Russ,

> -----Original Message-----
> From: Russ White [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 8:27 AM
> To: Gray, Eric
> Cc: Silvano Gai; [email-masked]
> Subject: Re: [rbridge] Comments on:
http://www.ietf.org/internet-drafts/dr
> aft-ietf-trill-rbridge-arch-01.txt
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> > 	The notion of using a L2 version of ECMP is - IMO - in no way
> > implied
> > by the text in the charter.  Nor is there any explicit intention to
> preclude
> > this type of activity - with the caveat that anyone doing so has to
> assume
> > responsibility for not "breaking" the interoperability model.

Why are you breaking the interoperability model?

-- Silvano

> 
> And this is as it should be, IMHO. If you know, for certain, that your
> entire network is made up of rbridges, rather than a mixture of
various
> types of bridging devices, then you could use L2 ECMP. If you don't,
> then you (probably) can't.
> 
> I think this decision is in the hands of network operators and
> implementors, though, not in the hands of the spec writers. If we say:
> "X is dangerous in specific situation Y, therefore we will never allow
> X," then we are shutting down possible avenues for growth--such as the
> stuff we're talking about with F-Tags.
> 
> :-)
> 
> Russ
> 
> - --
> [email-masked] CCIE <>< Grace Alone
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2.2 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> 
> iD8DBQFFSMq2ER27sUhU9OQRAkrFAJ0cDSgqRhSi5zT6SvbCOO0z4PUCcQCfQJ3l
> 8omzi9hZhNEBFvKNWeYo1kQ=
> =eRrz
> -----END PGP SIGNATURE-----

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 08:28:34 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 2483

Eric,

When I propose something that is not in the charter, it is out of scope
because not in the charter; when I propose something that is in the
charter, it is out of scope because "this is not what the charter is
meant to
describe."

Let's be fair!

IMHO, if TRILL does not support Layer 2 ECMP, it is not interesting at
all for us. All the interest in replacing Spanning Tree is to get Layer
2 ECMP.

-- Silvano

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 8:20 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
> drafts/draft-ietf-trill-rbridge-arch-01.txt
> 
> Silvano,
> 
> 	As I said in my other reply, this is not what the charter is
meant
> to
> describe.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 1:08 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] Comments on:
> --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
> --> -arch-01.txt
> -->
> -->
> --> Eric,
> -->
> --> The charter says:
> --> "load-splitting among multiple paths"
> --> The pragmatic way to achieve this is to implement Layer 2 ECMP
> -->
> --> -- Silvano
> -->
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Tuesday, October 31, 2006 9:25 AM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] Comments on:
http://www.ietf.org/internet-
> --> > drafts/draft-ietf-trill-rbridge-arch-01.txt
> --> >
> --> > Silvano,
> --> >
> --> > 	See below...
> --> >
> --> > --
> --> > Eric
> --> >
> --> > -- [snip] --
> --> > -->
> --> > --> Sgai 2> I think we should explicitly mention layer 2
> --> multipath.
> --> > -->
> --> > -- [snip] --
> --> > -->
> --> >
> --> > What do you mean by layer 2 multipath?
> --> >
> --> > Do you mean "link bundling" or something else?
> --> >
> --> > Are we trying now to apply ECMP to routing advertisements
> --> for layer
> --> > two reachability?  That's a big step, particularly when we need
to
> --> > retain compatibility with existing 802.1 bridges.
> --> >
> --> > I don't recall seeing anything about this in the problem
statement
> --> > document, so I don't know of any reason why we should
> --> include it in
> --> > the architecture.
> --> >
> --> > --
> --> > Eric
> -->

Date: Wed, 01 Nov 2006 11:26:30 -0500
From: Russ White <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 1204

> 	The notion of using a L2 version of ECMP is - IMO - in no way
> implied
> by the text in the charter.  Nor is there any explicit intention to preclude
> this type of activity - with the caveat that anyone doing so has to assume
> responsibility for not "breaking" the interoperability model.

And this is as it should be, IMHO. If you know, for certain, that your
entire network is made up of rbridges, rather than a mixture of various
types of bridging devices, then you could use L2 ECMP. If you don't,
then you (probably) can't.

I think this decision is in the hands of network operators and
implementors, though, not in the hands of the spec writers. If we say:
"X is dangerous in specific situation Y, therefore we will never allow
X," then we are shutting down possible avenues for growth--such as the
stuff we're talking about with F-Tags.

:-)

Russ

- --
[email-masked] CCIE <>< Grace Alone

Content-class: urn:content-classes:message
Date: Wed, 1 Nov 2006 08:23:24 -0800
From: "Silvano Gai" <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] VLANs
Status: RO
Content-Length: 7651

Eric,

> -----Original Message-----
> From: Gray, Eric [mailto:[email-masked]]
> Sent: Wednesday, November 01, 2006 8:07 AM
> To: Silvano Gai
> Cc: [email-masked]
> Subject: RE: [rbridge] VLANs
> 
> Silvano,
> 
> 	I believe I've stated my position on using the IVLAN/OVLAN
> terminology, but just in case - I don't think it's necessary and
> I don't think it helps.

I think it does.

> 
> 	It seems to me that the description you provide below is an
> ample demonstration of the confusion that the use of these terms
> can introduce.

No, it is a demonstration of the confusion that not introducing these
terms creates.

> 
> 	For example, let's really complicate your example by using
> stacked VLAN tagging both in the tunnel encapsulation and in the
> native encapsulation for portions of the assumed domain. 

You have already mentioned this stacking and other magic that TRILL
plans to do with VLANs, but you have never provided a consistent
explanation. Is this part of TRILL or not?

Is TRILL defined to be mapped on a single OVLAN or on multiple? 
Is this written in any draft?

Can you explain this clearly?

Thank You

-- Silvano

 In the
> (deliberately) complicated model I've just described, what does
> the IVLAN/OVLAN distinction mean?
> 
> 	In fact, one reason not to distinguish the two is that - in
> the text you're referring to - the impact of which it is that may
> apply is nil.  Hence by not making a distinction, we're allowed a
> certain economy in communicating.
> 
> --
> Eric
> 
> --> -----Original Message-----
> --> From: Silvano Gai [mailto:[email-masked]]
> --> Sent: Wednesday, November 01, 2006 12:55 AM
> --> To: Gray, Eric
> --> Cc: [email-masked]
> --> Subject: RE: [rbridge] VLANs
> -->
> -->
> --> Eric,
> -->
> --> I disagree and let me give you concrete examples why:
> -->
> --> draft-ietf-trill-rbridge-protocol-00.txt says:
> -->
> --> "each RBridge R1
> -->    will run a "core" instance of IS-IS for the core RBridge
> --> information,
> -->
> -->    and an instance per VLAN that R1 is attached to, for the
endnode
> -->    information for those VLANs."
> -->
> --> If we are speaking of OVLAN, IMO an RBridge runs a core instance
per
> --> each OVLAN and on that instance it propagates the endnode
> --> information
> --> for the IVLANs."
> -->
> --> " The endnode information for VLAN A, which is carried in
> --> the VLAN A
> -->    IS-IS instance injected by R1, contains:"
> -->
> --> This clearly refers to IVLAN.
> -->
> --> draft-ietf-trill-prob-01.txt says:
> -->
> --> It may alternately support
> -->    direct VLAN support, e.g., by the use of separate TRILL routing
> -->    protocol instances to separate traffic for each VLAN
> --> traversing a
> -->    TRILL solution.
> -->
> --> Is this an IVLAN or an OVLAN?
> -->
> -->
> --> draft-ietf-trill-rbridge-arch-01.txt says
> -->
> --> Ingress RBridge Tree: a tree computed for each edge RBridge -
> -->            and potentially for each VLAN in which that RBridge
> -->            participates
> -->
> --> I assume this is an OVLAN, I don't think TRILL computes an
> --> IRT for each
> --> IVLAN; it can prune an IRT for each VLAN.
> -->
> --> In an email to Dinesh you wrote:
> -->
> --> "Dinesh,
> -->
> --> 	We're making semantic distinctions here.  I can easily define a
> --> VLAN consisting of a group of RBridges that corresponds to the
same
> --> semantics as the FTAG.  "
> -->
> --> Were you referring to an IVLAN or an OVLAN?
> -->
> --> Also you claim that 16 bits are not sufficient for the RBridge ID.
> --> Is the RBridge ID space replicated per each OVLAN or is it shared?
> --> Does an RBridge have the same RBridge ID on all OVLANs?
> -->
> --> I think we need to explicitly introduce the IVLAN and OVLAN
> --> concepts and
> --> use them consistently. We don't want to hide complexity due
> --> to the lack
> --> of nomenclature.
> -->
> --> -- Silvano
> -->
> -->
> -->
> -->
> -->
> -->
> -->
> --> > -----Original Message-----
> --> > From: Gray, Eric [mailto:[email-masked]]
> --> > Sent: Tuesday, October 31, 2006 9:04 AM
> --> > To: Silvano Gai
> --> > Cc: [email-masked]
> --> > Subject: RE: [rbridge] VLANs
> --> >
> --> > Silvano,
> --> >
> --> > 	Actually, both "types" of VLANs are the same - applying
at
> --> > different layers, but defined using the same terminology.
Logic,
> --> > semantics and applicability are the same.
> --> >
> --> > 	For historic reasons, we are trying to avoid the terms
you
> --> > propose.  In fact, similar terms have been used previously and
> --> > removed as confusing.  Without constant reminders, "inner" and
> --> > "outer" will be taken in some instances as placement in the
frame
> --> > (as you are suggesting) or position relative to the CRED (a
usage
> --> > issue with the terms "ingress" and "egress" meaning "way in" and
> --> > "way out" respectively).
> --> >
> --> > 	Hence you are suggesting replacement with one potential
> --> > are of confusion with another one we've earlier discarded.
> --> >
> --> > 	The architecture document defines the term VLAN and - I
am
> --> > reasonably sure - uses that definition consistently.  Moreover,
> --> > the architecture document tries to be agnostic about the use of
> --> > VLANs - particularly with respect to VLAN tagged encapsulation
> --> > and port-based VLANs, and where these things might apply.  The
> --> > reason for this is simply that one aim of protocol development -
> --> > especially at the architectural level - should be to avoid
placing
> --> > constraints on implementation beyond those explicitly required
> --> > to ensure interoperability.
> --> >
> --> > --
> --> > Eric
> --> >
> --> > --> -----Original Message-----
> --> > --> From: [email-masked]
> --> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
> --> > --> Sent: Monday, October 30, 2006 12:29 PM
> --> > --> To: [email-masked]
> --> > --> Subject: [rbridge] VLANs
> --> > -->
> --> > -->
> --> > --> The second biggest issue I have with the four documents
> --> > --> (first one being
> --> > --> broadcast/multicast storm) is the definition of VLANs.
> --> > -->
> --> > --> I don't think the term VLAN is used consistently in
> --> the documents.
> --> > -->
> --> > --> 1) Sometimes VLAN refers to the VLANs present on the
> --> > --> untagged frames,
> --> > --> which must be propagated by ISIS, VLAN pruning must be
> --> > --> performed and so
> --> > --> on. They all share the same core instance of ISIS.
> --> > -->
> --> > --> 2) Sometimes VLANs refers to the fact that a CRED can be
> --> > --> encapsulated
> --> > --> into a VLAN (present as a 1Q tag in the outer header) and
> --> > --> therefore ISIS
> --> > --> will run per VLAN, i.e. there will be a core instance of
> --> > --> ISIS per each
> --> > --> VLAN. This seems to be the case in some part of the
> --> architectural
> --> > --> document.
> --> > -->
> --> > --> I propose to name the former IVLAN (inner VLAN) and the
latter
> --> OVLAN
> --> > --> (Outer VLAN), with reference to the position of the 1Q tag
> --> > --> in the frame.
> --> > -->
> --> > --> This is also very relevant for the discussion that we need
> --> > --> to complete
> --> > --> on the FTAG: it is my understanding that some folks think
> --> > --> that the FTAG
> --> > --> is not needed, since there may be an OVLAN.
> --> > -->
> --> > --> Comments?
> --> > -->
> --> > --> -- Silvano
> --> > -->
> --> > --> _______________________________________________
> --> > --> rbridge mailing list
> --> > --> [email-masked]
> --> > --> http://mailman.postel.org/mailman/listinfo/rbridge
> --> > -->
> -->

Date: Wed, 01 Nov 2006 11:22:34 -0500
From: Russ White <[email-masked]>
To: "Gray, Eric" <[email-masked]>
Cc: [email-masked]
Subject: Re: [rbridge] Comments on:	http://www.ietf.org/internet-drafts/dr aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 859

> However, we in the IETF are more familiar with the term "node." 
> 
> This is hardly a significant issue.  if people agree that we should
> use the term "station" as opposed to "node", then I will change it.

I prefer node, since that's the common IETF wording, and one that people
will understand. It also relates to graph theory better than "station"
does. It might be useful to note this relationship in the definitions
someplace or another, but I don't see a reason to change the entire doc
around.

:-)

Russ

- --
[email-masked] CCIE <>< Grace Alone

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 11:20:01 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 1667

Silvano,

	As I said in my other reply, this is not what the charter is meant
to
describe.

--
Eric 

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 1:08 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> 
--> Eric,
--> 
--> The charter says:
--> "load-splitting among multiple paths"
--> The pragmatic way to achieve this is to implement Layer 2 ECMP
--> 
--> -- Silvano
--> 
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Tuesday, October 31, 2006 9:25 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	See below...
--> > 
--> > --
--> > Eric
--> > 
--> > -- [snip] --
--> > -->
--> > --> Sgai 2> I think we should explicitly mention layer 2 
--> multipath.
--> > -->
--> > -- [snip] --
--> > -->
--> > 
--> > What do you mean by layer 2 multipath?
--> > 
--> > Do you mean "link bundling" or something else?
--> > 
--> > Are we trying now to apply ECMP to routing advertisements 
--> for layer
--> > two reachability?  That's a big step, particularly when we need to
--> > retain compatibility with existing 802.1 bridges.
--> > 
--> > I don't recall seeing anything about this in the problem statement
--> > document, so I don't know of any reason why we should 
--> include it in
--> > the architecture.
--> > 
--> > --
--> > Eric
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>, "Gray, Eric" <[email-masked]>
Date: Wed, 1 Nov 2006 11:19:20 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] Comments on: http://www.ietf.org/internet-drafts/dr	aft-ietf-trill-rbridge-arch-01.txt
Status: RO
Content-Length: 5326

Silvano,

	The first problem you're identifying is unavoidable if we intend to 
use an SPF routing protocol and we need to support multicast, broadcast 
and flooding.

	In your second problem, I believe you're reading something into the 
expression "load-splitting across multiple paths" that is not intended to 
be there.

	The intention is that we will use multiple paths because we are not
disabling links via STP.  If we use an SPF routing algorithm, instead of
STP, we will be splitting the traffic load over multiple paths.  Any more
complex form of load splitting implies sharing a lot of information about
- for example - link utilization, traffic patterns and trends, shortest 
path constraints, etc.

	The notion of using a L2 version of ECMP is - IMO - in no way
implied
by the text in the charter.  Nor is there any explicit intention to preclude
this type of activity - with the caveat that anyone doing so has to assume
responsibility for not "breaking" the interoperability model.

	Radia's discussion of how FTAG-like functionality might be done
using
the egress RBridge identifier is an example of one approach that might be
used by an ingress RBridge to split the load across multiple paths.  It is
also a good example of why this is very complicated - precisely because it
requires extending the process of setting up IRTs to include some form of
"token" used to distinguish intended paths.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 1:06 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] Comments on: 
--> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> -arch-01.txt
--> 
--> 
--> 
--> IRTs have two problems.
--> 
--> 1) They limit the number of Rbridges in a CRED, since each 
--> switch needs
--> to run a copy of Djikstra for each IRT.
--> 
--> 2) they don't support load balancing of traffic across 
--> multiple links.
--> The charter says: "Load-splitting among multiple paths", it 
--> does not say
--> "only for unicast". TRILL needs to provide a set of trees 
--> in the CRED
--> (what I call shared trees) and let each ingress RBridge balance the
--> traffic on a subset of them.
--> 
--> In a network with 1000 RBridges, 1000 IRTs are 
--> computationally difficult
--> and don't provide load-splitting among multiple paths, 8 
--> shared trees
--> are easy to compute and provide load-splitting among multiple paths.
--> 
--> -- Silvano
--> 
--> 
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Tuesday, October 31, 2006 9:19 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] Comments on: http://www.ietf.org/internet-
--> > drafts/draft-ietf-trill-rbridge-arch-01.txt
--> > 
--> > Silvano,
--> > 
--> > 	 See comments below...
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked]
--> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> > --> Sent: Monday, October 30, 2006 12:13 PM
--> > --> To: [email-masked]
--> > --> Subject: [rbridge] Comments on:
--> > --> http://www.ietf.org/internet-drafts/draft-ietf-trill-rbridge
--> > --> -arch-01.txt
--> > -->
--> > -->
--> > --> Comments inline marked "sgai n>"
--> > -->
--> > --> Sgai 1> This documents assumes that all multicast 
--> traffic must be
--> > --> propagated through the IRT (Ingress Rbridge Tree) and 
--> therefore
--> > --> denies any possibility for shared trees.
--> > 
--> > 
--> > I don't follow this comment.  Or perhaps I simply don't understand
--> > why this is our problem.
--> > 
--> > By creating ingress RBridge trees (as the concatenation 
--> of shortest
--> > path routes from an ingress to all egresses), we 
--> establish a "tree"
--> > which will deliver to all destinations in the broadcast 
--> domain.  If
--> > we then "prune" the tree for specific VLANs and multicast interest
--> > groups, we create "virtual trees" per-VLAN and for 
--> multicast groups.
--> > 
--> > In doing this, we are perhaps doing better than 
--> 802.1<whatever>, but
--> > we are still only trying to deliver broadcast, flooded 
--> and multicast
--> > frames to the destinations that 1) would receive them in 
--> an Ethernet
--> > network and 2) should receive them if optimizing an 
--> Ethernet network
--> > for IP multicast.
--> > 
--> > Frankly the intent to support optimization of IP 
--> multicast is a bit
--> > of a fragile compromise within the working group, but it is AFAIK
--> > what we are trying to do.
--> > 
--> > So, what I am trying to figure out is how what we're 
--> doing with the
--> > IRT differs from "shared tree" support with existing 
--> 802.1<whatever>
--> > bridges.
--> > 
--> > Are you saying that you would like RBridges to support the "shared
--> > tree" concept even though 802.1<whatever> bridges may or may not
--> > support it?
--> > 
--> > Or are you saying that there is something about the design of the
--> > ingress rbridge trees that get in the way of support for "shared
--> > trees" that might be provided in today's Ethernet bridges?
--> > 
--> > 
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> --------------------------------------------------------
--> > -->
--> > --> ... snip ...
--> 

From: "Gray, Eric" <[email-masked]>
To: Silvano Gai <[email-masked]>
Date: Wed, 1 Nov 2006 11:07:12 -0500 
Cc: [email-masked]
Subject: Re: [rbridge] VLANs
Status: RO
Content-Length: 6680

Silvano,

	I believe I've stated my position on using the IVLAN/OVLAN
terminology, but just in case - I don't think it's necessary and
I don't think it helps.

	It seems to me that the description you provide below is an
ample demonstration of the confusion that the use of these terms
can introduce.

	For example, let's really complicate your example by using
stacked VLAN tagging both in the tunnel encapsulation and in the
native encapsulation for portions of the assumed domain.  In the
(deliberately) complicated model I've just described, what does
the IVLAN/OVLAN distinction mean?

	In fact, one reason not to distinguish the two is that - in
the text you're referring to - the impact of which it is that may
apply is nil.  Hence by not making a distinction, we're allowed a
certain economy in communicating.

--
Eric

--> -----Original Message-----
--> From: Silvano Gai [mailto:[email-masked]] 
--> Sent: Wednesday, November 01, 2006 12:55 AM
--> To: Gray, Eric
--> Cc: [email-masked]
--> Subject: RE: [rbridge] VLANs
--> 
--> 
--> Eric,
--> 
--> I disagree and let me give you concrete examples why:
--> 
--> draft-ietf-trill-rbridge-protocol-00.txt says:
--> 
--> "each RBridge R1 
-->    will run a "core" instance of IS-IS for the core RBridge 
--> information,
--> 
-->    and an instance per VLAN that R1 is attached to, for the endnode 
-->    information for those VLANs."
--> 
--> If we are speaking of OVLAN, IMO an RBridge runs a core instance per
--> each OVLAN and on that instance it propagates the endnode 
--> information
--> for the IVLANs."
--> 
--> " The endnode information for VLAN A, which is carried in 
--> the VLAN A 
-->    IS-IS instance injected by R1, contains:"
--> 
--> This clearly refers to IVLAN.
--> 
--> draft-ietf-trill-prob-01.txt says:
--> 
--> It may alternately support 
-->    direct VLAN support, e.g., by the use of separate TRILL routing 
-->    protocol instances to separate traffic for each VLAN 
--> traversing a 
-->    TRILL solution.  
--> 
--> Is this an IVLAN or an OVLAN?
--> 
--> 
--> draft-ietf-trill-rbridge-arch-01.txt says
--> 
--> Ingress RBridge Tree: a tree computed for each edge RBridge - 
-->            and potentially for each VLAN in which that RBridge 
-->            participates
--> 
--> I assume this is an OVLAN, I don't think TRILL computes an 
--> IRT for each
--> IVLAN; it can prune an IRT for each VLAN.
--> 
--> In an email to Dinesh you wrote:
--> 
--> "Dinesh,
--> 
--> 	We're making semantic distinctions here.  I can easily define a
--> VLAN consisting of a group of RBridges that corresponds to the same
--> semantics as the FTAG.  "
--> 
--> Were you referring to an IVLAN or an OVLAN?
--> 
--> Also you claim that 16 bits are not sufficient for the RBridge ID.
--> Is the RBridge ID space replicated per each OVLAN or is it shared?
--> Does an RBridge have the same RBridge ID on all OVLANs?
--> 
--> I think we need to explicitly introduce the IVLAN and OVLAN 
--> concepts and
--> use them consistently. We don't want to hide complexity due 
--> to the lack
--> of nomenclature.
--> 
--> -- Silvano
--> 
--> 
--> 
--> 
--> 
-->   
--> 
--> > -----Original Message-----
--> > From: Gray, Eric [mailto:[email-masked]]
--> > Sent: Tuesday, October 31, 2006 9:04 AM
--> > To: Silvano Gai
--> > Cc: [email-masked]
--> > Subject: RE: [rbridge] VLANs
--> > 
--> > Silvano,
--> > 
--> > 	Actually, both "types" of VLANs are the same - applying at
--> > different layers, but defined using the same terminology.  Logic,
--> > semantics and applicability are the same.
--> > 
--> > 	For historic reasons, we are trying to avoid the terms you
--> > propose.  In fact, similar terms have been used previously and
--> > removed as confusing.  Without constant reminders, "inner" and
--> > "outer" will be taken in some instances as placement in the frame
--> > (as you are suggesting) or position relative to the CRED (a usage
--> > issue with the terms "ingress" and "egress" meaning "way in" and
--> > "way out" respectively).
--> > 
--> > 	Hence you are suggesting replacement with one potential
--> > are of confusion with another one we've earlier discarded.
--> > 
--> > 	The architecture document defines the term VLAN and - I am
--> > reasonably sure - uses that definition consistently.  Moreover,
--> > the architecture document tries to be agnostic about the use of
--> > VLANs - particularly with respect to VLAN tagged encapsulation
--> > and port-based VLANs, and where these things might apply.  The
--> > reason for this is simply that one aim of protocol development -
--> > especially at the architectural level - should be to avoid placing
--> > constraints on implementation beyond those explicitly required
--> > to ensure interoperability.
--> > 
--> > --
--> > Eric
--> > 
--> > --> -----Original Message-----
--> > --> From: [email-masked]
--> > --> [mailto:[email-masked]] On Behalf Of Silvano Gai
--> > --> Sent: Monday, October 30, 2006 12:29 PM
--> > --> To: [email-masked]
--> > --> Subject: [rbridge] VLANs
--> > -->
--> > -->
--> > --> The second biggest issue I have with the four documents
--> > --> (first one being
--> > --> broadcast/multicast storm) is the definition of VLANs.
--> > -->
--> > --> I don't think the term VLAN is used consistently in 
--> the documents.
--> > -->
--> > --> 1) Sometimes VLAN refers to the VLANs present on the
--> > --> untagged frames,
--> > --> which must be propagated by ISIS, VLAN pruning must be
--> > --> performed and so
--> > --> on. They all share the same core instance of ISIS.
--> > -->
--> > --> 2) Sometimes VLANs refers to the fact that a CRED can be
--> > --> encapsulated
--> > --> into a VLAN (present as a 1Q tag in the outer header) and
--> > --> therefore ISIS
--> > --> will run per VLAN, i.e. there will be a core instance of
--> > --> ISIS per each
--> > --> VLAN. This seems to be the case in some part of the 
--> architectural
--> > --> document.
--> > -->
--> > --> I propose to name the former IVLAN (inner VLAN) and the latter
--> OVLAN
--> > --> (Outer VLAN), with reference to the position of the 1Q tag
--> > --> in the frame.
--> > -->
--> > --> This is also very relevant for the discussion that we need
--> > --> to complete
--> > --> on the FTAG: it is my understanding that some folks think
--> > --> that the FTAG
--> > --> is not needed, since there may be an OVLAN.
--> > -->
--> > --> Comments?
--> > -->
--> > --> -- Silvano
--> > -->
--> > --> _______________________________________________
--> > --> rbridge mailing list
--> > --> [email-masked]
--> > --> http://mailman.postel.org/mailman/listinfo/rbridge
--> > -->
-->