Advertising Layer 2 Bundle Member Link
Attributes in IS-ISCisco Systems, Inc.ginsberg@cisco.comCisco Systems170 West Tasman DriveSan Jose95134CAUnited States of Americaabashandy.ietf@gmail.com
Cisco Systemscf@cisco.comeBaymnanduri@ebay.comArrcus Inc.2077 Gateway Place, Suite #400San Jose95119
CAUnited States of America
exa@arrcus.com
Routing Area
Networking Working GroupThere are deployments where the Layer 3 interface on which IS-IS
operates is a Layer 2 interface bundle. Existing IS-IS advertisements
only support advertising link attributes of the Layer 3 interface. If
entities external to IS-IS wish to control traffic flows on the
individual physical links that comprise the Layer 2 interface bundle
link attribute information about the bundle members is required.This document introduces the ability for IS-IS to advertise the link
attributes of Layer 2 (L2) Bundle Members.There are deployments where the Layer 3 interface on which an IS-IS
adjacency is established is a Layer 2 interface bundle, for instance, a
Link Aggregation Group (LAG) . This reduces the number of
adjacencies that need to be maintained by the routing protocol in cases
where there are parallel links between the neighbors. Entities external
to IS-IS such as Path Computation Elements (PCEs) may wish to
control traffic flows on individual members of the underlying Layer 2
bundle. In order to do so, link attribute information about individual
bundle members is required. The protocol extensions defined in this
document provide the means to advertise this information.This document introduces a new TLV to advertise link attribute
information for each of the L2 Bundle Members that comprise the Layer 3
interface on which IS-IS operates. introduces a new link attribute, adjacency segment
identifier (Adj-SID), which can be used as an instruction to forwarding
to send traffic over a specific link. This document introduces
additional sub-TLVs to advertise Adj-SIDs for L2 Bundle Members.Note that the new advertisements defined in this document are
intended to be provided to external (to IS-IS) entities. The following
items are intentionally not defined and/or are outside the scope of this
document:What link attributes will be advertised. This is determined by
the needs of the external entities.A minimum or default set of link attributes.How these attributes are configured.How the advertisements are used.What impact the use of these advertisements may have on traffic
flow in the network.How the advertisements are passed to external entities.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14
when, and only when, they appear in all capitals, as shown here.
A new TLV is introduced to advertise L2 Bundle Member attributes.
Although much of the information is identical to and uses the same
sub-TLVs included in Extended IS-Neighbor advertisements (TLVs 22 and
222), a new TLV is used so that changes to the advertisement of the L2
Bundle Member link attributes do not trigger unnecessary action by the
Decision Process.Advertisement of this information implies that the identified link is
a member of the L2 Bundle associated with the identified Parent L3
Neighbor and that the member link is operationally up. Therefore,
advertisements MUST be withdrawn if the link becomes operationally down
or it is no longer a member of the identified L2 Bundle.This new TLV utilizes the sub-TLV space defined for TLVs 22, 23, 141,
222, and 223.The following new TLV is introduced:
L2 Bundle Member Attributes
Type:
25
Length:
Number of octets to follow
Parent L3 Neighbor Descriptor
L3 Neighbor System ID + pseudonode ID (7 octets)
Flags: 1-octet field of the following flags:
where:
P-flag:
When set to 1, one of the sub-TLVs
described in Section 3.1 immediately follows the flags field. If the P-flag
is set to 0, then none of the sub-TLVs described in Section 3.1 are
present.
Other bits:
MUST be zero when originated and ignored when received.
One or more L2 Bundle Attribute Descriptors (as defined below).
Length of L2 Bundle Attribute Descriptor (1 octet)
NOTE: This includes all fields described below.
Number of L2 Bundle Member Descriptors (1 octet)
L2 Bundle Member Link Local Identifiers (4 * Number of L2 Bundle Member Descriptors octets)
NOTE: An L2 Bundle Member Descriptor is a Link Local Identifier as defined
in .
Sub-TLV(s)
A sub-TLV may define an attribute common to all of the bundle members
listed, or it may define an attribute unique to each bundle member. Use of
these two classes of sub-TLVs is described in the following
sections.
NOTE: Only one Parent L3 Neighbor Descriptor is present in a given
TLV. Multiple L2 Bundle Attribute Descriptors may be present in a single
TLV.
When there exist multiple L3 adjacencies to the same neighbor,
additional information is required to uniquely identify the L3
Neighbor. One and only one of the following three sub-TLVs is used to
uniquely identify the L3 adjacency:IPv4 Interface Address (sub-TLV 6 defined in )IPv6 Interface Address (sub-TLV 12 defined in )Link Local/Remote Identifiers (sub-TLV 4 defined in
)When the P-flag is set in the flags field in the Parent L3 Neighbor
Descriptor, one and only one of the above sub-TLVs MUST be present. The
chosen sub-TLV MUST immediately follow the flags field described in
.These sub-TLVs MAY be omitted if no parallel adjacencies to the
neighbor exist.These sub-TLVs advertise a single copy of an attribute (e.g., link
bandwidth). The attribute applies to all of the L2 Bundle Members in
the set advertised under the preceding L2 Bundle Member
Attribute Descriptor. No more than one copy of a given sub-TLV in this
category may appear in the set of sub-TLVs under the preceding L2
Bundle Member Attribute Descriptor. If multiple copies of a given
sub-TLV are present, all copies MUST be ignored.The set of L2 Bundle Member Descriptors that may be advertised
under a single L2 Bundle Member Attribute Descriptor is therefore
limited to bundle members that share the set of attributes advertised
in the shared attribute sub-TLVs.All existing sub-TLVs defined in the IANA registry for sub-TLVs for TLVs 22, 23,
141, 222, and 223 are in the category of shared attribute
sub-TLVs unless otherwise specified in this document. defines sub-TLVs to advertise Adj-SIDs for L3 adjacencies.
However, these sub-TLVs only support the advertisement of a single Adj-SID.
As it is expected that each L2 Bundle Member will have unique Adj-SIDs
in many deployments, it is desirable to define a new sub-TLV that allows
more efficient encoding of a set of Adj-SIDs in a single sub-TLV. Two
new sub-TLVs are therefore introduced to support advertising Adj-SIDs
for L2 Bundle Members. The format of the new sub-TLVs is similar to that
used for L3 adjacencies, but it is optimized to allow advertisement of a
set of Adj-SIDs (one per L2 Bundle Member) in a single sub-TLV.The two new sub-TLVs defined in the following sections do not fall
into the category of shared attribute sub-TLVs.This sub-TLV is used to advertise Adj-SIDs for L2 Bundle Members
associated with a parent L3 adjacency that is point-to-point. The
following format is defined for this sub-TLV:This sub-TLV is used to advertise Adj-SIDs for L2 Bundle Members
associated with a parent L3 adjacency that is a LAN adjacency. In LAN
subnetworks, the Designated Intermediate System (DIS) is elected and
originates the Pseudonode-LSP (PN-LSP) including all neighbors of the
DIS. When Segment Routing is used, each router in the LAN MAY
advertise the Adj-SID of each of its neighbors on the LAN. Similarly,
for each L2 Bundle Member, a router MAY advertise an Adj-SID to each
neighbor on the LAN.The following format is defined for this sub-TLV:This document adds the following new TLV to the IS-IS "TLV Codepoints
Registry".Value: 25Name: L2 Bundle Member AttributesThe name of the IANA registry for sub-TLVs for TLVs 22, 23, 141, 222, and 223
has been changed to include sub-TLV 25. An additional column has been added to the registry to
indicate which sub-TLVs may appear in the new L2 Bundle Member
Attributes TLV. The column for TLV 25 has one of the following three
values:sub-TLV may appear in TLV 25 but MUST
NOT be shared by multiple L2 Bundle Members
sub-TLV may appear in TLV 25 and MAY
be shared by multiple L2 Bundle Members
sub-TLV MUST NOT appear in TLV 25
The following table indicates the appropriate settings for all
currently defined sub-TLVs with regard to their use in the new L2 Bundle
Member Attributes TLV.This document adds the following new sub-TLVs to the above registry.Value: 41Name: L2 Bundle Member Adj-SIDThis sub-TLV is allowed in the following TLVs:Value: 42Name: L2 Bundle Member LAN Adj-SIDThis sub-TLV is allowed in the following TLVs:The IS-IS protocol has supported the advertisement of link attribute
information, including link identifiers, for many years. The
advertisements defined in this document are identical to existing
advertisements defined in , , , and , but are associated with L2 links that are part of a bundle interface
on which the IS-IS protocol operates. There are therefore no new
security issues introduced by the extensions in this document.As always, if the protocol is used in an environment where
unauthorized access to the physical links on which IS-IS Protocol Data
Units (PDUs) are sent occurs, then attacks are possible. The use of
authentication as defined in and is recommended to prevent such attacks.Information technology -- Telecommunications and information
exchange between systems -- Intermediate System to Intermediate
System intra-domain routeing information exchange protocol for use
in conjunction with the protocol for providing the
connectionless-mode network service (ISO 8473)International Organization for
StandardizationIEEE Standard for Local and metropolitan area networks -- Link
AggregationIEEEIS-IS Extensions for Segment RoutingBelow is an example encoding of L2 Bundle advertisements in a case
where we have two parallel adjacencies to the same neighbor whose
system-id is 1234.1234.1234.00. The two L2 bundles have the following
sets of attributes:This requires two TLVs, one for each L3 adjacency.TLV for Adjacency #1:TLV for Adjacency #2The authors would like to thank Jon Mitchell for his careful
review.The following people gave a substantial contribution to the content
of this document and should be considered coauthors: