control channels.
GMPLS does not specify how these control channels must be
implemented, but GMPLS requires IP to transport the signaling and
routing protocols over them. Control channels can be either in-band
or out-of-band, and several solutions can be used to carry IP. Note
also that one type of LMP message (the Test message) is used in-band
in the data plane and may not be transported over IP, but this is a
particular case, needed to verify connectivity in the data plane.
1.4. GMPLS Key Extensions to MPLS-TE
Some key extensions brought by GMPLS to MPLS-TE are highlighted in
the following. Some of them are key advantages of GMPLS to control
TDM, LSC and FSC layers.
- In MPLS-TE, links traversed by an LSP can include an intermix of
links with heterogeneous label encoding (e.g., links between
routers, links between routers and ATM-LSRs, and links between
ATM-LSRs. GMPLS extends this by including links where the label is
encoded as a time slot, or a wavelength, or a position in the
(real world) physical space.
- In MPLS-TE, an LSP that carries IP has to start and end on a
router. GMPLS extends this by requiring an LSP to start and end
on similar type of interfaces.
- The type of a payload that can be carried in GMPLS by an LSP is
extended to allow such payloads as SONET/SDH, G.709, 1Gb or 10Gb
Ethernet, etc.
- The use of Forwarding Adjacencies (FA) provides a mechanism that
can improve bandwidth utilization, when bandwidth allocation can
be performed only in discrete units. It offers also a mechanism
to aggregate forwarding state, thus allowing the number of
required labels to be reduced.
- GMPLS allows suggesting a label by an upstream node to reduce the
setup latency. This suggestion may be overridden by a downstream
node but in some cases, at the cost of higher LSP setup time.
- GMPLS extends on the notion of restricting the range of labels
that may be selected by a downstream node. In GMPLS, an upstream
node may restrict the labels for an LSP along either a single hop
or the entire LSP path. This feature is useful in photonic
networks where wavelength conversion may not be available.
- While traditional TE-based (and even LDP-based) LSPs are
unidirectional, GMPLS supports the establishment of bi-directional
LSPs.
- GMPLS supports the termination of an LSP on a specific egress
port, i.e., the port selection at the destination side.
- GMPLS with RSVP-TE supports an RSVP specific mechanism for rapid
failure notification.
Note also some other key differences between MPLS-TE and GMPLS:
- For TDM, LSC and FSC interfaces, bandwidth allocation for an LSP
can be performed only in discrete units.
- It is expected to have (much) fewer labels on TDM, LSC or FSC
links than on PSC or L2SC links, because the former are physical
labels instead of logical labels.
2. Routing and Addressing Model
GMPLS is based on the IP routing and addressing models. This assumes
that IPv4 and/or IPv6 addresses are used to identify interfaces but
also that traditional (distributed) IP routing protocols are reused.
Indeed, the discovery of the topology and the resource state of all
links in a routing domain is achieved via these routing protocols.
Since control and data planes are de-coupled in GMPLS, control-plane
neighbors (i.e., IGP-learnt neighbors) may not be data-plane
neighbors. Hence, mechanisms like LMP are needed to associate TE
links with neighboring nodes.
IP addresses are not used only to identify interfaces of IP hosts and
routers, but more generally to identify any PSC and non-PSC
interfaces. Similarly, IP routing protocols are used to find routes
for IP datagrams with a SPF algorithm; they are also used to find
routes for non-PSC circuits by using a CSPF algorithm.
However, some additional mechanisms are needed to increase the
scalability of these models and to deal with specific traffic
engineering requirements of non-PSC layers. These mechanisms will be
introduced in the following.
Re-using existing IP routing protocols allows for non-PSC layers
taking advantage of all the valuable developments that took place
since years for IP routing, in particular, in the context of intra-
domain routing (link-state routing) and inter-domain routing (policy
routing).
In an overlay model, each particular non-PSC layer can be seen as a
set of Autonomous Systems (ASs) interconnected in an arbitrary way.
Similarly to the traditional IP routing, each AS is managed by a
single administrative authority. For instance, an AS can be an
SONET/SDH network operated by a given carrier. The set of
interconnected ASs can be viewed as SONET/SDH internetworks.
Exchange of routing information between ASs can be done via an
inter-domain routing protocol like BGP-4. There is obviously a huge
value of re-using well-known policy routing facilities provided by
BGP in a non-PSC context. Extensions for BGP traffic engineering
(BGP-TE) in the context of non-PSC layers are left for further study.
Each AS can be sub-divided in different routing domains, and each can
run a different intra-domain routing protocol. In turn, each
routing-domain can be divided in areas.
A routing domain is made of GMPLS enabled nodes (i.e., a network
device including a GMPLS entity). These nodes can be either edge
nodes (i.e., hosts, ingress LSRs or egress LSRs), or internal LSRs.
An example of non-PSC host is an SONET/SDH Terminal Multiplexer (TM).
Another example is an SONET/SDH interface card within an IP router or
ATM switch.
Note that traffic engineering in the intra-domain requires the use of
link-state routing protocols like OSPF or IS-IS.
GMPLS defines extensions to these protocols. These extensions are
needed to disseminate specific TDM, LSC and FSC static and dynamic
characteristics related to nodes and links. The current focus is on
intra-area traffic engineering. However, inter-area traffic
engineering is also under investigation.
2.1. Addressing of PSC and non-PSC Layers
The fact that IPv4 and/or IPv6 addresses are used does not imply at
all that they should be allocated in the same addressing space than
public IPv4 and/or IPv6 addresses used for the Internet. Private IP
addresses can be used if they do not require to be exchanged with any
other operator; public IP addresses are otherwise required. Of
course, if an integrated model is used, two layers could share the
same addressing space. Finally, TE links may be "unnumbered" i.e.,
not have any IP addresses, in case IP addresses are not available, or
the overhead of managing them is considered too high.
Note that there is a benefit of using public IPv4 and/or IPv6
Internet addresses for non-PSC layers if an integrated model with the
IP layer is foreseen.
If we consider the scalability enhancements proposed in the next
section, the IPv4 (32 bits) and the IPv6 (128 bits) addressing spaces
are both more than sufficient to accommodate any non-PSC layer. We
can reasonably expect to have much less non-PSC devices (e.g.,
SONET/SDH nodes) than we have today IP hosts and routers.
2.2. GMPLS Scalability Enhancements
TDM, LSC and FSC layers introduce new constraints on the IP
addressing and routing models since several hundreds of parallel
physical links (e.g., wavelengths) can now connect two nodes. Most
of the carriers already have today several tens of wavelengths per
fiber between two nodes. New generation of DWDM systems will allow
several hundreds of wavelengths per fiber.
It becomes rather impractical to associate an IP address with each
end of each physical link, to represent each link as a separate
routing adjacency, and to advertise and to maintain link states for
each of these links. For that purpose, GMPLS enhances the MPLS
routing and addressing models to increase their scalability.
Two optional mechanisms can be used to increase the scalability of
the addressing and the routing: unnumbered links and link bundling.
These two mechanisms can also be combined. They require extensions
to signaling (RSVP-TE and CR-LDP) and routing (OSPF-TE and IS-IS-TE)
protocols.
2.3. TE Extensions to IP Routing Protocols
Traditionally, a TE link is advertised as an adjunct to a "regular"
OSPF or IS-IS link, i.e., an adjacency is brought up on the link.
When the link is up, both the regular IGP properties of the link
(basically, the SPF metric) and the TE properties of the link are
then advertised.
However, GMPLS challenges this notion in three ways:
- First, links that are non-PSC may yet have TE properties; however,
an OSPF adjacency could not be brought up directly on such links.
- Second, an LSP can be advertised as a point-to-point TE link in
the routing protocol, i.e., as a Forwarding Adjacency (FA); thus,
an advertised TE link need no longer be between two OSPF direct
neighbors. Forwarding Adjacencies (FA) are further described in
Section 8.
- Third, a number of links may be advertised as a single TE link
(e.g., for improved scalability), so again, there is no longer a
one-to-one association of a regular adjacency and a TE link.
Thus, we have a more general notion of a TE link. A TE link is a
logical link that has TE properties. Some of these properties may be
configured on the advertising LSR, others may be obtained from other
LSRs by means of some protocol, and yet others may be deduced from
the component(s) of the TE link.
An important TE property of a TE link is related to the bandwidth
accounting for that link. GMPLS will define different accounting
rules for different non-PSC layers. Generic bandwidth attributes are
however defined by the TE routing extensions and by GMPLS, such as
the unreserved bandwidth, the maximum reservable bandwidth and the
maximum LSP bandwidth.
It is expected in a dynamic environment to have frequent changes of
bandwidth accounting information. A flexible policy for triggering
link state updates based on bandwidth thresholds and link-dampening
mechanism can be implemented.
TE properties associated with a link should also capture protection
and restoration related characteristics. For instance, shared
protection can be elegantly combined with bundling. Protection and
restoration are mainly generic mechanisms also applicable to MPLS. It
is expected that they will first be developed for MPLS and later on
generalized to GMPLS.
A TE link between a pair of LSRs does not imply the existence of an
IGP adjacency between these LSRs. A TE link must also have some
means by which the advertising LSR can know of its liveness (e.g., by
using LMP hellos). When an LSR knows that a TE link is up, and can
determine the TE link’s TE properties, the LSR may then advertise
that link to its GMPLS enhanced OSPF or IS-IS neighbors using the TE
objects/TLVs. We call the interfaces over which GMPLS enhanced OSPF
or IS-IS adjacencies are established "control channels".
3. Unnumbered Links
Unnumbered links (or interfaces) are links (or interfaces) that do
not have IP addresses. Using such links involves two capabilities:
the ability to specify unnumbered links in MPLS TE signaling, and the
ability to carry (TE) information about unnumbered links in IGP TE
extensions of IS-IS-TE and OSPF-TE.
A. The ability to specify unnumbered links in MPLS TE signaling
requires extensions to RSVP-TE [RFC3477] and CR-LDP [RFC3480].
The MPLS-TE signaling does not provide support for unnumbered
links, because it does not provide a way to indicate an unnumbered
link in its Explicit Route Object/TLV and in its Record Route
Object (there is no such TLV for CR-LDP). GMPLS defines simple
extensions to indicate an unnumbered link in these two
Objects/TLVs, using a new Unnumbered Interface ID sub-object/sub-
TLV.
Since unnumbered links are not identified by an IP address, then
for the purpose of MPLS TE each end need some other identifier,
local to the LSR to which the link belongs. LSRs at the two end-
points of an unnumbered link exchange with each other the
identifiers they assign to the link. Exchanging the identifiers
may be accomplished by configuration, by means of a protocol such
as LMP ([LMP]), by means of RSVP-TE/CR-LDP (especially in the case
where a link is a Forwarding Adjacency, see below), or by means of
IS-IS or OSPF extensions ([ISIS-TE-GMPLS], [OSPF-TE-GMPLS]).
Consider an (unnumbered) link between LSRs A and B. LSR A chooses
an identifier for that link. So does LSR B. From A’s perspective
we refer to the identifier that A assigned to the link as the
"link local identifier" (or just "local identifier"), and to the
identifier that B assigned to the link as the "link remote
identifier" (or just "remote identifier"). Likewise, from B’s
perspective the identifier that B assigned to the link is the
local identifier, and the identifier that A assigned to the link
is the remote identifier.
The new Unnumbered Interface ID sub-object/sub-TLV for the ER
Object/TLV contains the Router ID of the LSR at the upstream end
of the unnumbered link and the link local identifier with respect
to that upstream LSR.
The new Unnumbered Interface ID sub-object for the RR Object
contains the link local identifier with respect to the LSR that
adds it in the RR Object.
B. The ability to carry (TE) information about unnumbered links in
IGP TE extensions requires new sub-TLVs for the extended IS
reachability TLV defined in IS-IS-TE and for the TE LSA (which is
an opaque LSA) defined in OSPF-TE. A Link Local Identifier sub-
TLV and a Link Remote Identifier sub-TLV are defined.
3.1. Unnumbered Forwarding Adjacencies
If an LSR that originates an LSP advertises this LSP as an unnumbered
FA in IS-IS or OSPF, or the LSR uses this FA as an unnumbered
component link of a bundled link, the LSR must allocate an Interface
ID to that FA. If the LSP is bi-directional, the tail end does the
same and allocates an Interface ID to the reverse FA.
Signaling has been enhanced to carry the Interface ID of a FA in the
new LSP Tunnel Interface ID object/TLV. This object/TLV contains the
Router ID (of the LSR that generates it) and the Interface ID. It is
called the Forward Interface ID when it appears in a Path/REQUEST
message, and it is called the Reverse Interface ID when it appears in
the Resv/MAPPING message.
4. Link Bundling
The concept of link bundling is essential in certain networks
employing the GMPLS control plane as is defined in [BUNDLE]. A
typical example is an optical meshed network where adjacent optical
cross-connects (LSRs) are connected by several hundreds of parallel
wavelengths. In this network, consider the application of link state
routing protocols, like OSPF or IS-IS, with suitable extensions for
resource discovery and dynamic route computation. Each wavelength
must be advertised separately to be used, except if link bundling is
used.
When a pair of LSRs is connected by multiple links, it is possible to
advertise several (or all) of these links as a single link into OSPF
and/or IS-IS. This process is called link bundling, or just
bundling. The resulting logical link is called a bundled link as its
physical links are called component links (and are identified by
interface indexes).
The result is that a combination of three identifiers ((bundled) link
identifier, component link identifier, label) is sufficient to
unambiguously identify the appropriate resources used by an LSP.
The purpose of link bundling is to improve routing scalability by
reducing the amount of information that has to be handled by OSPF
and/or IS-IS. This reduction is accomplished by performing
information aggregation/abstraction. As with any other information
aggregation/abstraction, this results in losing some of the
information. To limit the amount of losses one need to restrict the
type of the information that can be aggregated/abstracted.
4.1. Restrictions on Bundling
The following restrictions are required for bundling links. All
component links in a bundle must begin and end on the same pair of
LSRs; and share some common characteristics or properties defined in
[OSPF-TE] and [ISIS-TE], i.e., they must have the same:
- Link Type (i.e., point-to-point or multi-access),
- TE Metric (i.e., an administrative cost),
- Set of Resource Classes at each end of the links (i.e., colors).
Note that a FA may also be a component link. In fact, a bundle can
consist of a mix of point-to-point links and FAs, but all sharing
some common properties.
4.2. Routing Considerations for Bundling
A bundled link is just another kind of TE link such as those defined
by [GMPLS-ROUTING]. The liveness of the bundled link is determined
by the liveness of each its component links. A bundled link is alive
when at least one of its component links is alive. The liveness of a
component link can be determined by any of several means: IS-IS or
OSPF hellos over the component link, or RSVP Hello (hop local), or
LMP hellos (link local), or from layer 1 or layer 2 indications.
Note that (according to the RSVP-TE specification [RFC3209]) the RSVP
Hello mechanism is intended to be used when notification of link
layer failures is not available and unnumbered links are not used, or
when the failure detection mechanisms provided by the link layer are
not sufficient for timely node failure detection.
Once a bundled link is determined to be alive, it can be advertised
as a TE link and the TE information can be flooded. If IS-IS/OSPF
hellos are run over the component links, IS-IS/OSPF flooding can be
restricted to just one of the component links.
Note that advertising a (bundled) TE link between a pair of LSRs does
not imply that there is an IGP adjacency between these LSRs that is
associated with just that link. In fact, in certain cases a TE link
between a pair of LSRs could be advertised even if there is no IGP
adjacency at all between the LSR (e.g., when the TE link is an FA).
Forming a bundled link consist in aggregating the identical TE
parameters of each individual component link to produce aggregated TE
parameters. A TE link as defined by [GMPLS-ROUTING] has many
parameters; adequate aggregation rules must be defined for each one.
Some parameters can be sums of component characteristics such as the
unreserved bandwidth and the maximum reservable bandwidth. Bandwidth
information is an important part of a bundle advertisement and it
must be clearly defined since an abstraction is done.
A GMPLS node with bundled links must apply admission control on a
per-component link basis.
4.3. Signaling Considerations
Typically, an LSP’s explicit route (e.g., contained in an explicit
route Object/TLV) will choose the bundled link to be used for the
LSP, but not the component link(s). This because information about
the bundled link is flooded but information about the component links
is not.
The choice of the component link to use is always made by an upstream
node. If the LSP is bi-directional, the upstream node chooses a
component link in each direction.
Three mechanisms for indicating this choice to the downstream node
are possible.
4.3.1. Mechanism 1: Implicit Indication
This mechanism requires that each component link has a dedicated
signaling channel (e.g., the link is a Sonet/SDH link using the DCC
for in-band signaling). The upstream node tells the receiver which
component link to use by sending the message over the chosen
component link’s dedicated signaling channel. Note that this
signaling channel can be in-band or out-of-band. In this last case,
the association between the signaling channel and that component link
need to be explicitly configured.
4.3.2. Mechanism 2: Explicit Indication by Numbered Interface ID
This mechanism requires that the component link has a unique remote
IP address. The upstream node indicates the choice of the component
link by including a new IF_ID RSVP_HOP object/IF_ID TLV carrying
either an IPv4 or an IPv6 address in the Path/Label Request message
(see [RFC3473]/[RFC3472], respectively). For a bi-directional LSP, a
component link is provided for each direction by the upstream node.
This mechanism does not require each component link to have its own
control channel. In fact, it does not even require the whole
(bundled) link to have its own control channel.
4.3.3. Mechanism 3: Explicit Indication by Unnumbered Interface ID
With this mechanism, each component link that is unnumbered is
assigned a unique Interface Identifier (32 bits value). The upstream
node indicates the choice of the component link by including a new
IF_ID RSVP_HOP object/IF_ID TLV in the Path/Label Request message
(see [RFC3473]/[RFC3472], respectively).
This object/TLV carries the component interface ID in the downstream
direction for a unidirectional LSP, and in addition, the component
interface ID in the upstream direction for a bi-directional LSP.
The two LSRs at each end of the bundled link exchange these
identifiers. Exchanging the identifiers may be accomplished by
configuration, by means of a protocol such as LMP (preferred
solution), by means of RSVP-TE/CR-LDP (especially in the case where a
component link is a Forwarding Adjacency), or by means of IS-IS or
OSPF extensions.
This mechanism does not require each component link to have its own
control channel. In fact, it does not even require the whole
(bundled) link to have its own control channel.
4.4. Unnumbered Bundled Link
A bundled link may itself be numbered or unnumbered independent of
whether the component links are numbered or not. This affects how
the bundled link is advertised in IS-IS/OSPF and the format of LSP
EROs that traverse the bundled link. Furthermore, unnumbered
Interface Identifiers for all unnumbered outgoing links of a given
LSR (whether component links, Forwarding Adjacencies or bundled
links) must be unique in the context of that LSR.
4.5. Forming Bundled Links
The generic rule for bundling component links is to place those links
that are correlated in some manner in the same bundle. If links may
be correlated based on multiple properties then the bundling may be
applied sequentially based on these properties. For instance, links
may be first grouped based on the first property. Each of these
groups may be then divided into smaller groups based on the second
property and so on. The main principle followed in this process is
that the properties of the resulting bundles should be concisely
summarizable. Link bundling may be done automatically or by
configuration. Automatic link bundling can apply bundling rules
sequentially to produce bundles.
For instance, the first property on which component links may be
correlated could be the Interface Switching Capability
[GMPLS-ROUTING], the second property could be the Encoding
[GMPLS-ROUTING], the third property could be the Administrative
Weight (cost), the fourth property could be the Resource Classes and
finally links may be correlated based on other metrics such as SRLG
(Shared Risk Link Groups).
When routing an alternate path for protection purposes, the general
principle followed is that the alternate path is not routed over any
link belonging to an SRLG that belongs to some link of the primary
path. Thus, the rule to be followed is to group links belonging to
exactly the same set of SRLGs.
This type of sequential sub-division may result in a number of
bundles between two adjacent nodes. In practice, however, the link
properties may not be very heterogeneous among component links
between two adjacent nodes. Thus, the number of bundles in practice
may not be large.