1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
|
Network Working Group J. Touch
Request for Comments: 5556 USC/ISI
Category: Informational R. Perlman
Sun
May 2009
Transparent Interconnection of Lots of Links (TRILL):
Problem and Applicability Statement
Status of This Memo
This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.
Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
Abstract
Current IEEE 802.1 LANs use spanning tree protocols that have a
number of challenges. These protocols need to strictly avoid loops,
even temporary ones, during route propagation, because of the lack of
header loop detection support. Routing tends not to take full
advantage of alternate paths, or even non-overlapping pairwise paths
(in the case of spanning trees). This document addresses these
concerns and suggests applying modern network-layer routing protocols
at the link layer. This document assumes that solutions would not
address issues of scalability beyond that of existing IEEE 802.1
bridged links, but that a solution would be backward compatible with
802.1, including hubs, bridges, and their existing plug-and-play
capabilities.
Touch & Perlman Informational [Page 1]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
Table of Contents
1. Introduction ....................................................2
2. The TRILL Problem ...............................................3
2.1. Inefficient Paths ..........................................3
2.2. Multipath Forwarding .......................................5
2.3. Convergence and Safety .....................................6
2.4. Stability of IP Multicast Optimization .....................6
2.5. IEEE 802.1 Bridging Protocols ..............................7
2.6. Problems Not Addressed .....................................8
3. Desired Properties of Solutions to TRILL ........................9
3.1. No Change to Link Capabilities .............................9
3.2. Zero Configuration and Zero Assumption ....................10
3.3. Forwarding Loop Mitigation ................................10
3.4. Spanning Tree Management ..................................11
3.5. Multiple Attachments ......................................11
3.6. VLAN Issues ...............................................11
3.7. Operational Equivalence ...................................12
3.8. Optimizations .............................................12
3.9. Internet Architecture Issues ..............................13
4. Applicability ..................................................13
5. Security Considerations ........................................14
6. Acknowledgments ................................................15
7. Informative References .........................................15
1. Introduction
Conventional Ethernet networks -- known in the Internet as Ethernet
link subnets -- have a number of attractive features, allowing hosts
and routers to relocate within the subnet without requiring
renumbering, and supporting automatic configuration. The basis of
the simplicity of these subnets is the spanning tree, which although
simple and elegant, can have substantial limitations. With spanning
trees, the bandwidth across the subnet is limited because traffic
flows over a subset of links forming a single tree -- or, with the
latest version of the protocol and significant additional
configuration, over a small number of superimposed trees. The oldest
version of the spanning tree protocol can converge slowly when there
are frequent topology changes.
The alternative to an Ethernet link subnet is often a network subnet.
Network subnets can use link-state routing protocols that allow
traffic to traverse least-cost paths rather than being aggregated on
a spanning tree backbone, providing higher aggregate capacity and
more resistance to link failures. Unfortunately, IP -- the dominant
network layer technology -- requires that hosts be renumbered when
relocated in different network subnets, interrupting network (e.g.,
Touch & Perlman Informational [Page 2]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
tunnels, IPsec) and transport (e.g., TCP, UDP) associations that are
in progress during the transition.
It is thus useful to consider a new approach that combines the
features of these two existing solutions, hopefully retaining the
desirable properties of each. Such an approach would develop a new
kind of bridge system that was capable of using network-style
routing, while still providing Ethernet service. It allows reuse of
well-understood network routing protocols to benefit the link layer.
This document describes the challenge of such a combined approach.
This problem is known as "Transparent Interconnection of Lots of
Links" or "TRILL". The remainder of this document makes minimal
assumptions about a solution to TRILL.
2. The TRILL Problem
Ethernet subnets have evolved from 'thicknet' to 'thinnet' to twisted
pair with hubs to twisted pair with switches, becoming increasingly
simple to wire and manage. Each level has corresponding topology
restrictions; thicknet is inherently linear, whereas thinnet and hub-
connected twisted pair have to be wired as a tree. Switches, added
in IEEE 802.1D, allow network managers to avoid thinking in trees,
where the spanning tree protocol finds a valid tree automatically;
unfortunately, this additional simplicity comes with a number of
associated penalties [Pe99].
The spanning tree often results in inefficient use of the link
topology; traffic is concentrated on the spanning tree path, and all
traffic follows that path even when other more direct paths are
available. The addition in IEEE 802.1Q of support for multiple
spanning trees helps a little, but the use of multiple spanning trees
requires additional configuration, the number of trees is limited,
and these defects apply within each tree regardless. The spanning
tree protocol reacts to certain small topology changes with large
effects on the reconfiguration of links in use. Each of these
aspects of the spanning tree protocol can cause problems for current
link-layer deployments.
2.1. Inefficient Paths
The Spanning Tree Protocol (STP) helps break cycles in a set of
interconnected bridges, but it also can limit the bandwidth among
that set and cause traffic to take circuitous paths. For example, in
a set of N nodes that are interconnected pairwise along a ring, a
spanning tree will disable one physical link so that connectivity is
loop free. This will cause traffic between the pair of nodes
connected by that disabled link to have to go N-1 physical hops
Touch & Perlman Informational [Page 3]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
around the entire remainder of the ring rather than take the most
efficient single-hop path. Using modern routing protocols with such
a topology, no traffic should have to go more than N/2 hops.
For another example, consider the network shown in Figure 1, which
shows a number of bridges and their interconnecting links. End-hosts
and routers are not shown; they would connect to the bridges that are
shown, labeled A-H. Note that the network shown has cycles that
would cause packet storms if hubs (repeaters) were used instead of
spanning-tree-capable bridges. One possible spanning tree is shown
by double lines.
[A]
// \ [C]
// \ / \\ [D]
// \ / \\ //
[B]=====[H]=====[E]
\ // ||
\ // ||
\ // ||
[G]--------[F]
Figure 1: Bridged subnet with spanning tree shown
The spanning tree limits the capacity of the resulting subnet.
Assume that the links are 100 Mbps. Figure 2 shows how traffic from
hosts on A to hosts on C goes via the spanning tree path A-B-H-E-C
(links replaced with '1' in the figure); traffic from hosts on G to F
go via the spanning three path G-H-E-F (links replaced by '2' in the
figure). The link H-E is shared by both paths (alternating '1's and
'2's), resulting in an aggregate capacity for both A..C and G..F
paths of a total of 100 Mbps.
[A]
1 [C]
1 1
1 1
[B]1111111[H]121212[E]
2 2
2 2
2 2
[G] [F]
Figure 2: Traffic from A..C (1) and G..F (2) share a link
If traffic from G to F were to go directly using full routing, e.g.,
from G-F, both paths could have 100 Mbps each, and the total
aggregate capacity could be 200 Mbps (Figure 3). In this case, the
Touch & Perlman Informational [Page 4]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
H-F link carries only A-C traffic ('1's) and the G-F traffic ('2's)
is more direct.
[A]
1 [C]
1 1
1 1
[B]1111111[H]111111[E]
[G]2222222[F]
Figure 3: Traffic from A..C (1) and G..F (2) with full routing
There are a number of features of modern layer 3 routing protocols
which would be beneficial if available at layer 2, but which cannot
practically be integrated into the spanning tree system such as
multipath routing discussed in Section 2.2 below. Layer 3 routing
typically optimizes paths between pairs of endpoints based on a cost
metric, conventionally based on bandwidth, hop count, latency, and/or
policy measures.
2.2. Multipath Forwarding
The discussion above assumes that all traffic flowing from one point
to another follows a single path. Using spanning trees reduces
aggregate bandwidth by forcing all such paths onto one tree, while
modern routing causes such paths to be selected based on a cost
metric. However, extensions to modern routing protocols enable even
greater aggregate bandwidth by permitting traffic flowing from one
endpoint to another to be sent over multiple, typically equal-cost,
paths. (Traffic sent over different paths will generally encounter
different delays and may be reordered with respect to traffic on
another path. Thus, traffic must be divided into flows, such that
reordering of traffic between flows is not significant, and those
flows are allocated to paths.)
Multipathing typically spreads the traffic more evenly over the
available physical links. The addition of multipathing to a routed
network would typically result in only a small improvement in
capacity for a network with roughly equal traffic between all pairs
of nodes, because in that situation traffic is already fairly well
dispersed. Conversely, multipathing can produce a dramatic
improvement in a routed network where the traffic between a small
number of pairs of nodes dominates, because such traffic can -- under
the right circumstances -- be spread over multiple paths that might
otherwise be lightly loaded.
Touch & Perlman Informational [Page 5]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
2.3. Convergence and Safety
The spanning tree is dependent on the way a set of bridges are
interconnected, i.e., the link-layer topology. Small changes in this
topology can cause large changes in the spanning tree. Changes in
the spanning tree can take time to propagate and converge, especially
for older versions of STP.
One possible case occurs when one of the branches connected to the
root bridge fails, causing a large number of ports to block and
unblock before the network reconverges [Me04]. Consider a ring with
a stub as shown in Figure 4.
[R]----[A]----[B]----[C]----[D]----[E]
| |
+--------[F]-----[G]--------+
Figure 4: Ring with poor convergence under reconfiguration
If A is the root bridge, then the paths A->B->C->D and A->F->G->E are
the two open paths, while the D->E link is blocked. If the A->B link
fails, then E must unblock its port to D for traffic to flow again,
but it may require recomputation of the entire tree through BPDUs
(Bridge PDUs). Even worse, if R is root and R or the A-R connection
fails, BPDU updates related to the old and new root can lead to a
brief count-to-infinity event, and, if RSTP (Rapid Spanning Tree
Protocol) is in use, can delay convergence for a few seconds. The
original IEEE 802.1 spanning tree protocol can impose 30-second
delays in re-establishing data connectivity after a topology change
in order to be sure a new topology has stabilized and been fully
propagated.
The spanning tree protocol is inherently global to an entire layer 2
subnet; there is no current way to contain, partition, or otherwise
factor the protocol into a number of smaller, more stable subsets
that interact as groups. Contrast this with Internet routing, which
includes both intradomain and interdomain variants, split to provide
exactly that containment and scalability within a domain while
allowing domains to interact freely independent of what happens
within a domain.
2.4. Stability of IP Multicast Optimization
Although it is a layer violation, it is common for high-end bridges
to snoop on IP multicast control messages for the purpose of
optimizing the distribution of IP multicast data and of those control
messages [RFC4541].
Touch & Perlman Informational [Page 6]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
When such snooping and optimization is performed by spanning-tree-
based bridges, it done at each bridge based on the traffic observed
on that bridge's ports. Changes in topology may reverse or otherwise
change the required forwarding ports of messages for a multicast
group. Bridges must relearn the correct multicast forwarding from
the receipt of multicast control messages on new ports. Such control
messages are sent to establish multicast distribution state and then
to refresh it, sometimes at intervals of seconds. If a bridging
topology change has occurred during such intervals, multicast data
may be misdirected and lost.
However, a solution based on link-state routing, for example, can
form and maintain a global view of the multicast group membership and
multicast router situation in a similar fashion to that in which it
maintains a global view of the status of links. Thus, such a
solution can adjust the forwarding of multicast data and control
traffic immediately as it sees the LAN topology change.
2.5. IEEE 802.1 Bridging Protocols
There have been a variety of IEEE protocols beyond the initial
shared-media Ethernet variant, including:
o 802.1D - added bridges (i.e., switches) and a spanning tree
protocol (STP) (incorporates 802.1w, below) [IEEE04].
o 802.1w - extension for rapid reconvergence of the spanning tree
protocol (RTSP) [IEEE04].
o 802.1Q - added VLAN and priority support, where each link address
maps to one VLAN (incorporates 802.1v and 802.1s, below) [IEEE06].
o 802.1v - added VLANs where segments map to VLANs based on link
address together with network protocol and transport port
[IEEE06].
o 802.1s - added support for multiple spanning trees, up to a
maximum of 65, one per non-overlapping group of VLANs (Multiple
STP) [IEEE06].
This document presumes the above variants are supported on the
Ethernet subnet, i.e., that a TRILL solution would not interfere with
(i.e., would not affect) any of the above.
In addition, the following more recent extensions have been
standardized to specify provider/carrier Ethernet services that can
be effectively transparent to the previously specified customer
Ethernet services. The TRILL problem as described in this document
Touch & Perlman Informational [Page 7]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
is limited to customer Ethernet services; however, there is no reason
that a TRILL solution might not be easily applicable to both customer
and provider Ethernet.
o 802.1ad (Provider Bridges) - added support for a second level of
VLAN tag, called a "service tag", and renamed the original 802.1Q
tag a "customer tag". Also known as Q-in-Q because of the
stacking of 802.1Q VLAN tags.
o 802.1ah (Provider Backbone Bridges) - added support for stacking
of MAC addresses by providing a tag to contain the original source
and destination MAC addresses. Also know as MAC-in-MAC.
It is useful to note that no extension listed above in this section
addresses the issue of independent, localized routing in a single LAN
-- which is the focus of TRILL.
The TRILL problem and a sketch of a possible solution [Pe04] were
presented to both the IETF (via a BoF) and IEEE 802 (via an IEEE 802
Plenary Meeting Tutorial). The IEEE, in response, approved a project
called Shortest Path Bridging (IEEE Project P802.1aq), taking a
different approach than that presented in [Pe04]. The current Draft
of P802.1aq appears to describe two different techniques. One, which
does not use encapsulation, is, according to the IEEE Draft, limited
in applicability to small networks of no more than 100 shortest path
bridges. The other, which uses 802.1ah, is, according to the IEEE
Draft, limited in applicability to networks of no more than 1,000
shortest path bridges.
2.6. Problems Not Addressed
There are other challenges to deploying Ethernet subnets that are not
addressed in this document other than, in some cases, to mention
relevant IEEE 802.1 documents, although it is possible for a solution
to address one or more of these in addition to the TRILL problem.
These include:
o increased Ethernet link subnet scale
o increased node relocation
o security of the Ethernet link subnet management protocol
o flooding attacks on a Ethernet link subnet
o support for "provider" services such as Provider Bridges
(802.1ad), Provider Backbone Bridges (802.1ah), or Provider
Backbone Bridge Traffic Engineering (802.1Qay)
Touch & Perlman Informational [Page 8]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
Solutions to TRILL need not support deployment of larger scales of
Ethernet link subnets than current broadcast domains can support
(e.g., around 1,000 end-hosts in a single bridged LAN of 100 bridges,
or 100,000 end-hosts inside 1,000 VLANs served by 10,000 bridges).
Similarly, solutions to TRILL need not address link-layer node
migration, which can complicate the caches in learning bridges.
Similar challenges exist in the Address Resolution Protocol (ARP),
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 Autonomous
Systems (ASes), can help hide the effect of migration. That is a
side effect, however, and not a primary focus of this work.
Current link-layer control-plane protocols, including Ethernet link
subnet management (spanning tree) and link/network integration (ARP),
are vulnerable to a variety of attacks. Solutions to TRILL need not
address these insecurities. Similar attacks exist in the data plane,
e.g., source address spoofing, single address traffic attacks,
traffic snooping, and broadcast flooding. TRILL solutions need not
address any of these issues, although it is critical that they do not
introduce new vulnerabilities in the process (see Section 5).
3. Desired Properties of Solutions to TRILL
This section describes some of the desirable or required properties
of any system that would solve the TRILL problems, independent of the
details of such a solution. Most of these are based on retaining
useful properties of bridges, or maintaining those properties while
solving the problems listed in Section 2.
3.1. No Change to Link Capabilities
There must be no change to the service that Ethernet subnets already
provide as a result of deploying a TRILL solution. Ethernet supports
unicast, broadcast, and multicast natively. Although network
protocols, notably IP, can tolerate link layers that do not provide
all three, it would be useful to retain the support already in place
[RFC3819]. So called "zero configuration protocols" (also known as
"zeroconf", e.g., as used to configure link-local addresses
[RFC3927]), as well as existing bridge autoconfiguration, are also
dependent on broadcast.
Current Ethernet ensures in-order delivery for frames of the same
priority and no duplicated frames, under normal operation (excepting
transients during reconfiguration). These criteria apply in varying
degrees to the different types of Ethernet, e.g., basic Ethernet up
through basic VLAN (802.1Q) ensures that all frames with the same
Touch & Perlman Informational [Page 9]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
priority between two link addresses have both properties, but
protocol/port VLAN (802.1v) ensures this only for packets with the
same protocol and port. There are subtle implications to such a
requirement. Bridge autolearning already is susceptible to moving
nodes between ports, because previously learned associations between
the port and link address change. A TRILL solution could be
similarly susceptible to such changes.
3.2. Zero Configuration and Zero Assumption
Both bridges and hubs are zero configuration devices; hubs having no
configuration at all, and bridges being automatically self-
configured. Bridges are further zero-assumption devices, unlike
hubs. Bridges can be interconnected in arbitrary topologies, without
regard for cycles or even self-attachment. Spanning tree protocols
(STPs) remove the impact of cycles automatically, and port
autolearning reduces unnecessary broadcast of unicast traffic.
A TRILL solution should strive to have a similar zero-configuration,
zero-assumption operation. This includes having TRILL solution
components automatically discover other TRILL solution components and
organize themselves, as well as to configure that organization for
proper operation (plug-and-play). It also includes zero-
configuration backward compatibility with existing bridges and hubs,
which may include interacting with some of the bridge protocols, such
as spanning tree.
VLANs add a caveat to zero configuration; a TRILL solution should
support automatic use of a default VLAN (like non-VLAN bridges), but
would undoubtedly require explicit configuration for VLANs where
bridges require such configuration.
Autoconfiguration extends to optional services, such as multicast
support via Internet Group Management Protocol (IGMP) snooping,
broadcast support via serial copy, and support of multiple VLANs.
3.3. Forwarding Loop Mitigation
Using spanning trees avoids forwarding loops by construction,
although transient loops can occur, e.g., via the temporarily
undetected appearance of new link connectivity or the loss of a
sufficient number of spanning-tree control frames. Solutions to
TRILL are intended to use adapted network-layer routing protocols
that may introduce transient loops during routing convergence. A
TRILL solution thus needs to provide support for mitigating the
effect of such routing loops.
Touch & Perlman Informational [Page 10]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
In the Internet, loop mitigation is provided by decrementing hop
counts (Time To Live (TTL)); in other networks, packets include a
trace (sometimes referred to as 'serialized' or 'unioned') of visited
nodes [RFC1812]. In addition, there may be localized consistency
checks, such as whether traffic is received on an unexpected
interface, which indicates that routing is in flux and that such
traffic should probably be discarded for safety. These types of
mechanisms limit the impact of loops or detect them explicitly.
Mechanisms with similar effect should be included in TRILL solutions.
3.4. Spanning Tree Management
In order to address convergence under reconfiguration and robustness
to link interruption (Section 2.2), participation in the spanning
tree (STP) must be carefully managed. The goal is to provide the
desired stability of the TRILL solution and of the entire Ethernet
link subnet, which may include bridges using STP. This may involve a
TRILL solution participating in the STP, where the protocol used for
TRILL might dampen interactions with STP, or it may involve severing
the STP into separate STPs on 'stub' external Ethernet link subnet
segments.
A requirement is that a TRILL solution must not require modifications
or exceptions to the existing spanning tree protocols (e.g., STP,
RSTP (Rapid Spanning Tree Protocol), MSTP (Multiple Spanning Tree
Protocol)).
3.5. Multiple Attachments
In STP, a single node with multiple attachments to a single spanning
tree segment will always get and send traffic over only one of the
those attachment points. TRILL must manage all traffic, including
multicast and broadcast traffic, so as not to create traffic loops
involving Ethernet segments with multiple TRILL attachment points.
This includes multiple attachments to a single TRILL node and
attachments to multiple TRILL nodes. Support for multiple
attachments can improve support for forms of mobility that induce
topology changes, such as "make before break", although this is not a
major goal of TRILL.
3.6. VLAN Issues
A TRILL solution should support multiple customer VLANs (802.1Q,
which includes 802.1v and 802.1s). This may involve ignorance, just
as many bridge devices do not participate in the VLAN protocols. A
TRILL solution may alternately furnish direct VLAN support, e.g., by
providing configurable support for VLAN-ignorant end stations
equivalent to that provided by 802.1Q non-provider bridges.
Touch & Perlman Informational [Page 11]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
Provider VLANs (802.1ad) are outside of the scope of this document.
A TRILL solution might or might not be easily adaptable to handling
provider VLANs.
3.7. Operational Equivalence
As with any extension to an existing architecture, it would be useful
-- though not strictly necessary -- to be able to describe or
consider a TRILL solution as equivalent to an existing link layer
component. Such equivalence provides a validation model for the
architecture and a way for users to predict the effect of the use of
a TRILL solution on a deployed Ethernet. In this case, 'user' refers
to users of the Ethernet protocol, whether at the host (data
segments), bridge (ST control segments), or VLAN (VLAN control).
This provides a sanity check, i.e., "we got it right if we can
exchange a TRILL solution component or components with an X" (where
"X" might be a single bridge, a hub, or some other link layer
abstraction). It does not matter whether "X" can be implemented on
the same scale as the corresponding TRILL solution. It also does not
matter if it can -- there may be utility to deploying the TRILL
solution components incrementally, in ways that a single "X" could
not be installed.
For example, if a TRILL solution's components were equivalent to a
single IEEE 802.1D bridge, it would mean that they would -- as a
whole - participate in the STP. This need not require that TRILL
solution components would propagate STP, any more than a bridge need
do so in its on-board control. It would mean that the solution would
interact with BPDUs at the edge, where the solution would -- again,
as a whole - participate as if a single node in the spanning tree.
Note that this equivalence is not required; a solution may act as if
an IEEE 802.1 hub, or may not have a corresponding equivalent link
layer component at all.
3.8. Optimizations
There are a number of optimizations that may be applied to TRILL
solutions. These must be applied in a way that does not affect
functionality as a tradeoff for increased performance. Such
optimizations may address broadcast and multicast frame distribution,
VLAN support, and snooping of ARP and IPv6 neighbor discovery.
In addition, there may be optimizations which make the implementation
of a TRILL solution easier than roughly equivalent existing bridge
devices. For example, in many bridged LANs, there are topologies
such that central ("core") bridges which have both a greater volume
of traffic flowing through them as well as traffic to and from a
Touch & Perlman Informational [Page 12]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
larger variety of end station than do non-core bridges. Thus means
that such core bridges need to learn a large number of end station
addresses and need to do lookups based on such addresses very
rapidly. This might require large high speed content addressable
memory making implementation of such core bridges difficult.
Although a TRILL solution need not provide such optimizations, it may
reduce the need for such large, high speed content addressable
memories or provide other similar optimizations.
3.9. Internet Architecture Issues
TRILL solutions are intended to have no impact on the Internet
network layer architecture. In particular, the Internet and higher
layer headers should remain intact when traversing a deployed TRILL
solution, just as they do when traversing any other link subnet
technologies. This means that the IP TTL field cannot be co-opted
for forwarding loop mitigation, as it would interfere with the
Internet layer assuming that the link subnet was reachable with no
changes in TTL. (Internet TTLs are changed only at routers, as per
RFC 1812, and even if IP TTL were considered, TRILL is expected to
support non-IP payloads, and so requires a separate solution anyway
[RFC1812]).
TRILL solutions should also have no impact on Internet routing or
signaling, which also means that broadcast and multicast, both of
which can pervade an entire Ethernet link subnet, must be able to
transparently pervade a deployed TRILL solution. Changing how either
of these capabilities behaves would have significant effects on a
variety of protocols, including RIP (broadcast), RIPv2 (multicast),
ARP (broadcast), IPv6 neighbor discovery (multicast), etc.
Note that snooping of network-layer packets may be useful, especially
for certain optimizations. These include snooping multicast
control-plane packets (IGMP) to tune link multicast to match the
network multicast topology, as is already done in existing smart
switches [RFC3376] [RFC4286]. This also includes snooping IPv6
neighbor discovery messages to assist with governing TRILL solution
edge configuration, as is the case in some smart learning bridges
[RFC4861]. Other layers may similarly be snooped, notably ARP
packets, for similar reasons as for IPv4 [RFC826].
4. Applicability
As might be expected, TRILL solutions are intended to be used to
solve the problems described in Section 2. However, not all such
installations are appropriate environments for such solutions. This
section outlines the issues in the appropriate use of these
solutions.
Touch & Perlman Informational [Page 13]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
TRILL solutions are intended to address problems of path efficiency
and concentration, inability to multipath, and path stability within
a single Ethernet link subnet. Like bridges, individual TRILL
solution components may find other TRILL solution components within a
single Ethernet link subnet and aggregate into a single TRILL
solution.
TRILL solutions are not intended to span separate Ethernet link
subnets interconnected by network-layer (e.g., router) devices,
except via link-layer tunnels, where such tunnels render the distinct
subnet undetectably equivalent from a single Ethernet link subnet.
A currently open question is whether a single Ethernet link subnet
should contain components of only one TRILL solution, either of
necessity of architecture or utility. Multiple TRILL solutions, like
Internet ASes, may allow TRILL routing protocols to be partitioned in
ways that help their stability, but this may come at the price of
needing the TRILL solutions to participate more fully as nodes (each
modeling a bridge) in the Ethernet link subnet STP. Each
architecture solution should decide whether multiple TRILL solutions
are supported within a single Ethernet link subnet, and mechanisms
should be included to enforce whatever decision is made.
TRILL solutions need not address scalability limitations in bridged
subnets. Although there may be scale benefits of other aspects of
solving TRILL problems, e.g., of using network-layer routing to
provide stability under link changes or intermittent outages, this is
not a focus of this work.
As also noted earlier, TRILL solutions are not intended to address
security vulnerabilities in either the data plane or control plane of
the link layer. This means that TRILL solutions should not limit
broadcast frames, ARP requests, or spanning tree protocol messages
(if such are interpreted by the TRILL solution or solution edge).
5. Security Considerations
TRILL solutions should not introduce new vulnerabilities compared to
traditional bridged subnets.
TRILL solutions are not intended to be a solution to Ethernet link
subnet vulnerabilities, including spoofing, flooding, snooping, and
attacks on the link control plane (STP, flooding the learning cache)
and link-network control plane (ARP). Although TRILL solutions are
intended to provide more stable routing than STP, this stability is
limited to performance, and the subsequent robustness is intended to
address non-malicious events.
Touch & Perlman Informational [Page 14]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
There may be some side-effects to the use of TRILL solutions that can
provide more robust operation under certain attacks, such as those
interrupting or adding link service, but TRILL solutions should not
be relied upon for such capabilities.
Finally, TRILL solutions should not interfere with other protocols
intended to address these vulnerabilities, such as those to secure
IPv6 neighbor discovery [RFC3971].
6. Acknowledgments
Portions of this document are based on documents that describe a
preliminary solution, and on a related network-layer solution [Pe04]
[Pe05] [To03]. Donald Eastlake III provided substantial text and
comments. Additional comments and feedback were provided by the
members of the IETF TRILL WG, in which this document was developed,
and by the IESG.
This document was prepared using 2-Word-v2.0.template.dot.
7. Informative References
[IEEE04] IEEE 802.1D bridging standard, "IEEE Standard for Local and
metropolitan area networks: Media Access Control (MAC)
Bridges", (incorporates 802.1w), Jun. 2004.
[IEEE06] IEEE 802.1Q VLAN standard, "IEEE Standards for Local and
metropolitan area networks: Virtual Bridged Local Area
Networks", (incorporates 802.1v and 802.1s), May 2006.
[Me04] Myers, A., T.E. Ng, H. Zhang, "Rethinking the Service
Model: Scaling Ethernet to a Million Nodes", Proc. ACM
Third Workshop on Hot Topics in Networks (HotNets-III),
Mar. 2004.
[Pe99] Perlman, R., "Interconnection: Bridges, Routers, Switches,
and Internetworking Protocols", Addison Wesley, Chapter 3,
1999.
[Pe04] Perlman, R., "RBridges: Transparent Routing", Proc. Infocom
2005, Mar. 2004.
[Pe05] Perlman, R., J. Touch, A. Yegin, "RBridges: Transparent
Routing," (expired work in progress), Apr. 2004 - May 2005.
Touch & Perlman Informational [Page 15]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
[RFC826] Plummer, D., "Ethernet Address Resolution Protocol: Or
Converting Network Protocol Addresses to 48.bit Ethernet
Address for Transmission on Ethernet Hardware", STD 37, RFC
826, November 1982.
[RFC1812] Baker, F., Ed., "Requirements for IP Version 4 Routers",
RFC 1812, June 1995.
[RFC3376] Cain, B., Deering, S., Kouvelas, I., Fenner, B., and A.
Thyagarajan, "Internet Group Management Protocol, Version
3", RFC 3376, October 2002.
[RFC3819] Karn, P., Ed., Bormann, C., Fairhurst, G., Grossman, D.,
Ludwig, R., Mahdavi, J., Montenegro, G., Touch, J., and L.
Wood, "Advice for Internet Subnetwork Designers", BCP 89,
RFC 3819, July 2004.
[RFC3927] Cheshire, S., Aboba, B., and E. Guttman, "Dynamic
Configuration of IPv4 Link-Local Addresses", RFC 3927, May
2005.
[RFC3971] Arkko, J., Ed., Kempf, J., Zill, B., and P. Nikander,
"SEcure Neighbor Discovery (SEND)", RFC 3971, March 2005.
[RFC4286] Rosenberg, J., "Extensible Markup Language (XML) Formats
for Representing Resource Lists", RFC 4826, May 2007.
[RFC4541] Christensen, M., Kimball, K., and F. Solensky,
"Considerations for Internet Group Management Protocol
(IGMP) and Multicast Listener Discovery (MLD) Snooping
Switches", RFC 4541, May 2006.
[RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
"Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
September 2007.
[To03] Touch, J., Y. Wang, L. Eggert, G. Finn, "A Virtual Internet
Architecture", ISI Technical Report ISI-TR-570, Presented
at the Workshop on Future Directions in Network
Architecture (FDNA) 2003 at Sigcomm 2003, March 2003.
Touch & Perlman Informational [Page 16]
^L
RFC 5556 TRILL: Problem and Applicability May 2009
Authors' Addresses
Joe Touch
USC/ISI
4676 Admiralty Way
Marina del Rey, CA 90292-6695
U.S.A.
Phone: +1 (310) 448-9151
EMail: touch@isi.edu
URL: http://www.isi.edu/touch
Radia Perlman
Sun Microsystems
16 Network Circle
umpk16-161
Menlo Park, CA 94025
U.S.A.
EMail: Radia.Perlman@sun.com
Touch & Perlman Informational [Page 17]
^L
|