📄 rfc2105.txt
字号:
Network Working Group Y. Rekhter
Request for Comments: 2105 B. Davie
Category: Informational D. Katz
E. Rosen
G. Swallow
Cisco Systems, Inc.
February 1997
Cisco Systems' Tag Switching Architecture Overview
Status of this Memo
This memo provides information for the Internet community. This memo
does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.
IESG Note:
This protocol is NOT the product of an IETF working group nor is it a
standards track document. It has not necessarily benefited from the
widespread and in depth community review that standards track
documents receive.
Abstract
This document provides an overview of a novel approach to network
layer packet forwarding, called tag switching. The two main
components of the tag switching architecture - forwarding and
control - are described. Forwarding is accomplished using simple
label-swapping techniques, while the existing network layer routing
protocols plus mechanisms for binding and distributing tags are used
for control. Tag switching can retain the scaling properties of IP,
and can help improve the scalability of IP networks. While tag
switching does not rely on ATM, it can straightforwardly be applied
to ATM switches. A range of tag switching applications and deployment
scenarios are described.
Table of Contents
1 Introduction ........................................... 2
2 Tag Switching components ............................... 3
3 Forwarding component ................................... 3
3.1 Tag encapsulation ...................................... 4
4 Control component ...................................... 4
4.1 Destination-based routing .............................. 5
4.2 Hierarchy of routing knowledge ......................... 7
4.3 Multicast .............................................. 8
Rekhter, et. al. Informational [Page 1]
RFC 2105 Cisco's Tag Switching Architecture February 1997
4.4 Flexible routing (explicit routes) ..................... 9
5 Tag switching with ATM ................................. 9
6 Quality of service ..................................... 11
7 Tag switching migration strategies ..................... 11
8 Summary ................................................ 12
9 Security Considerations ................................ 12
10 Intellectual Property Considerations ................... 12
11 Acknowledgments ........................................ 12
12 Authors' Addresses ..................................... 13
1. Introduction
Continuous growth of the Internet demands higher bandwidth within the
Internet Service Providers (ISPs). However, growth of the Internet is
not the only driving factor for higher bandwidth - demand for higher
bandwidth also comes from emerging multimedia applications. Demand
for higher bandwidth, in turn, requires higher forwarding performance
(packets per second) by routers, for both multicast and unicast
traffic.
The growth of the Internet also demands improved scaling properties
of the Internet routing system. The ability to contain the volume of
routing information maintained by individual routers and the ability
to build a hierarchy of routing knowledge are essential to support a
high quality, scalable routing system.
We see the need to improve forwarding performance while at the same
time adding routing functionality to support multicast, allowing more
flexible control over how traffic is routed, and providing the
ability to build a hierarchy of routing knowledge. Moreover, it
becomes more and more crucial to have a routing system that can
support graceful evolution to accommodate new and emerging
requirements.
Tag switching is a technology that provides an efficient solution to
these challenges. Tag switching blends the flexibility and rich
functionality provided by Network Layer routing with the simplicity
provided by the label swapping forwarding paradigm. The simplicity
of the tag switching forwarding paradigm (label swapping) enables
improved forwarding performance, while maintaining competitive
price/performance. By associating a wide range of forwarding
granularities with a tag, the same forwarding paradigm can be used to
support a wide variety of routing functions, such as destination-
based routing, multicast, hierarchy of routing knowledge, and
flexible routing control. Finally, a combination of simple
forwarding, a wide range of forwarding granularities, and the ability
to evolve routing functionality while preserving the same forwarding
paradigm enables a routing system that can gracefully evolve to
Rekhter, et. al. Informational [Page 2]
RFC 2105 Cisco's Tag Switching Architecture February 1997
accommodate new and emerging requirements.
The rest of the document is organized as follows. Section 2
introduces the main components of tag switching, forwarding and
control. Section 3 describes the forwarding component. Section 4
describes the control component. Section 5 describes how tag
switching could be used with ATM. Section 6 describes the use of tag
switching to help provide a range of qualities of service. Section 7
briefly describes possible deployment scenarios. Section 8 summarizes
the results.
2. Tag Switching components
Tag switching consists of two components: forwarding and control.
The forwarding component uses the tag information (tags) carried by
packets and the tag forwarding information maintained by a tag switch
to perform packet forwarding. The control component is responsible
for maintaining correct tag forwarding information among a group of
interconnected tag switches.
3. Forwarding component
The fundamental forwarding paradigm employed by tag switching is
based on the notion of label swapping. When a packet with a tag is
received by a tag switch, the switch uses the tag as an index in its
Tag Information Base (TIB). Each entry in the TIB consists of an
incoming tag, and one or more sub-entries of the form (outgoing tag,
outgoing interface, outgoing link level information). If the switch
finds an entry with the incoming tag equal to the tag carried in the
packet, then for each (outgoing tag, outgoing interface, outgoing
link level information) in the entry the switch replaces the tag in
the packet with the outgoing tag, replaces the link level information
(e.g MAC address) in the packet with the outgoing link level
information, and forwards the packet over the outgoing interface.
From the above description of the forwarding component we can make
several observations. First, the forwarding decision is based on the
exact match algorithm using a fixed length, fairly short tag as an
index. This enables a simplified forwarding procedure, relative to
longest match forwarding traditionally used at the network layer.
This in turn enables higher forwarding performance (higher packets
per second). The forwarding procedure is simple enough to allow a
straightforward hardware implementation.
A second observation is that the forwarding decision is independent
of the tag's forwarding granularity. For example, the same forwarding
algorithm applies to both unicast and multicast - a unicast entry
would just have a single (outgoing tag, outgoing interface, outgoing
Rekhter, et. al. Informational [Page 3]
RFC 2105 Cisco's Tag Switching Architecture February 1997
link level information) sub-entry, while a multicast entry may have
one or more (outgoing tag, outgoing interface, outgoing link level
information) sub-entries. (For multi-access links, the outgoing link
level information in this case would include a multicast MAC
address.) This illustrates how with tag switching the same forwarding
paradigm can be used to support different routing functions (e.g.,
unicast, multicast, etc...)
The simple forwarding procedure is thus essentially decoupled from
the control component of tag switching. New routing (control)
functions can readily be deployed without disturbing the forwarding
paradigm. This means that it is not necessary to re-optimize
forwarding performance (by modifying either hardware or software) as
new routing functionality is added.
3.1. Tag encapsulation
Tag information can be carried in a packet in a variety of ways:
- as a small "shim" tag header inserted between the layer 2 and
the Network Layer headers;
- as part of the layer 2 header, if the layer 2 header provides
adequate semantics (e.g., ATM, as discussed below);
- as part of the Network Layer header (e.g., using the Flow Label
field in IPv6 with appropriately modified semantics).
It is therefore possible to implement tag switching over virtually
any media type including point-to-point links, multi-access links,
and ATM.
Observe also that the tag forwarding component is Network Layer
independent. Use of control component(s) specific to a particular
Network Layer protocol enables the use of tag switching with
different Network Layer protocols.
4. Control component
Essential to tag switching is the notion of binding between a tag and
Network Layer routing (routes). To provide good scaling
characteristics, while also accommodating diverse routing
functionality, tag switching supports a wide range of forwarding
granularities. At one extreme a tag could be associated (bound) to a
group of routes (more specifically to the Network Layer Reachability
Information of the routes in the group). At the other extreme a tag
could be bound to an individual application flow (e.g., an RSVP
flow). A tag could also be bound to a multicast tree.
Rekhter, et. al. Informational [Page 4]
RFC 2105 Cisco's Tag Switching Architecture February 1997
The control component is responsible for creating tag bindings, and
then distributing the tag binding information among tag switches.
The control component is organized as a collection of modules, each
designed to support a particular routing function. To support new
routing functions, new modules can be added. The following describes
some of the modules.
4.1. Destination-based routing
In this section we describe how tag switching can support
destination-based routing. Recall that with destination-based routing
a router makes a forwarding decision based on the destination address
carried in a packet and the information stored in the Forwarding
Information Base (FIB) maintained by the router. A router constructs
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -