draft-ietf-idr-ls-trill-01.txt | draft-ietf-idr-ls-trill-02.txt | |||
---|---|---|---|---|
IDR Working Group W. Hao | ||||
D. Eastlake | ||||
Internet Draft Huawei | ||||
Intended status: Standard Track S. Hares | ||||
Hickory Hill Consulting | ||||
S.Gupta | ||||
IP Infusion | ||||
M. Durrani | ||||
Cisco | ||||
Y. Li | ||||
Huawei | ||||
Expires: February 2017 August 16, 2016 | ||||
IDR Working Group W,. Hao | Distribution of TRILL Link-State using BGP | |||
Internet-Draft D. Eastlake | draft-ietf-idr-ls-trill-02.txt | |||
Intended status: Standards Track S. Hares | ||||
Expires: September 21, 2016 Huawei Technologies | ||||
B. Pithawala | ||||
IP Infusion | ||||
M. Durrani | ||||
Cisco Systems | ||||
Y. Li | ||||
Huawei Technologies | ||||
March 20, 2016 | ||||
Distribution of TRILL Link-State using BGP | ||||
draft-ietf-idr-ls-trill-01.txt | ||||
Abstract | Abstract | |||
This draft describes a TRILL link state and MAC address reachability | This draft describes a TRILL link state and MAC address reachability | |||
information distribution mechanism using a BGP LS extension. | information distribution mechanism using a BGP LS extension. | |||
External components such as an SDN Controller can use the information | External components such as an SDN Controller can use the | |||
for topology visibility, troubleshooting, network automation, etc. | information for topology visibility, troubleshooting, network | |||
automation, etc. | ||||
Status of This Memo | Status of this Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF), its areas, and its working groups. Note that | |||
working documents as Internet-Drafts. The list of current Internet- | other groups may also distribute working documents as Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six | |||
and may be updated, replaced, or obsoleted by other documents at any | months and may be updated, replaced, or obsoleted by other documents | |||
time. It is inappropriate to use Internet-Drafts as reference | at any time. It is inappropriate to use Internet-Drafts as | |||
material or to cite them other than as "work in progress." | reference material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on September 21, 2016. | The list of current Internet-Drafts can be accessed at | |||
http://www.ietf.org/1id-abstracts.html | ||||
The list of Internet-Draft Shadow Directories can be accessed at | ||||
http://www.ietf.org/shadow.html. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2016 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with | |||
to this document. Code Components extracted from this document must | respect to this document. Code Components extracted from this | |||
include Simplified BSD License text as described in Section 4.e of | document must include Simplified BSD License text as described in | |||
the Trust Legal Provisions and are provided without warranty as | Section 4.e of the Trust Legal Provisions and are provided without | |||
described in the Simplified BSD License. | warranty as described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction ................................................ 2 | |||
2. Conventions used in this document . . . . . . . . . . . . . . 3 | 2. Conventions used in this document............................ 4 | |||
3. Carrying Trill Link-State Information in BGP . . . . . . . . 4 | 3. Carrying TRILL Link-State Information in BGP................. 4 | |||
3.1. Node Descriptors . . . . . . . . . . . . . . . . . . . . 5 | 3.1. Node Descriptors........................................ 6 | |||
3.1.1. IGP Router-ID . . . . . . . . . . . . . . . . . . . . 6 | 3.1.1. IGP Router-ID...................................... 6 | |||
3.2. MAC Address Descriptors . . . . . . . . . . . . . . . . . 6 | 3.2. MAC Address Descriptors................................. 6 | |||
3.2.1. MAC-Reachability TLV . . . . . . . . . . . . . . . . 6 | 3.2.1. MAC-Reachability TLV............................... 7 | |||
3.3. BGP-LS attribute . . . . . . . . . . . . . . . . . . . . 7 | 3.3. The BGP-LS Attribute.................................... 8 | |||
3.3.1. Node Attribute TLVs . . . . . . . . . . . . . . . . . 7 | 3.3.1. Node Attribute TLVs................................ 8 | |||
3.3.2. Link Attribute TLVs . . . . . . . . . . . . . . . . . 8 | 3.3.1.1. Node Flag Bits TLV............................ 8 | |||
4. Operational Considerations . . . . . . . . . . . . . . . . . 8 | 3.3.1.2. Opaque Node Attribute TLV..................... 8 | |||
5. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | 3.3.2. Link Attribute TLVs................................ 9 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | 4. Operational Considerations................................... 9 | |||
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10 | 5. Security Considerations..................................... 10 | |||
8. Normative References . . . . . . . . . . . . . . . . . . . . 10 | 6. IANA Considerations ........................................ 11 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 11 | 7. References ................................................. 11 | |||
7.1. Normative References................................... 11 | ||||
7.2. Informative References................................. 12 | ||||
8. Acknowledgments ............................................ 12 | ||||
1. Introduction | 1. Introduction | |||
BGP has been extended to distribute IGP link-state and traffic | BGP has been extended to distribute IGP link-state and traffic | |||
engineering information to some external components [RFC7752] such as | engineering information to some external components [I-D.ietf-idr- | |||
the PCE and ALTO servers. The information can be used by these | ls-distribution], such as the PCE and ALTO servers. The information | |||
external components to compute a MPLS-TE path across IGP areas, | can be used by these external components to compute a MPLS-TE path | |||
visualize and abstract network topology, and the like. | across IGP areas, visualize and abstract network topology, and the | |||
like. | ||||
TRILL (Transparent Interconnection of Lots of Links) protocol | TRILL (Transparent Interconnection of Lots of Links) protocol | |||
[RFC6325] provides a solution for least cost transparent routing in | [RFC6325] provides a solution for least cost transparent routing in | |||
multi-hop networks with arbitrary topologies and link technologies, | multi-hop networks with arbitrary topologies and link technologies, | |||
using [IS-IS] [RFC7176] link-state routing and a hop count. TRILL | using [IS-IS] [RFC7176] link-state routing and a hop count. TRILL | |||
switches are sometimes called RBridges (Routing Bridges). | switches are sometimes called RBridges (Routing Bridges). | |||
The TRILL protocol has been deployed in many data center networks. | The TRILL protocol has been deployed in many data center networks. | |||
Data center automation is a vital step to increase the speed and | Data center automation is a vital step to increase the speed and | |||
agility of business. An SDN controller as an external component | agility of business. An SDN controller as an external component | |||
normally can be used to provide centralized control and automation | normally can be used to provide centralized control and automation | |||
for the data center network. Making a holistic view of whole network | for the data center network. Making a holistic view of whole network | |||
topology available to the SDN controller is an important part for | topology available to the SDN controller is an important part for | |||
data center network automation and troubleshooting. | data center network automation and troubleshooting. | |||
+-------------+ | +-------------+ | |||
| SDN | | | SDN | | |||
--------| Controller |-------- | --------| Controller |-------- | |||
| +-------------+ | | | +-------------+ | | |||
| | | | | | |||
+ + + + | + + + + | |||
+ +-----------+ + | + +-----------+ + | |||
| | | | | | |||
+--------+ |IP Network | +--------+ | +--------+ |IP Network | +--------+ | |||
| | +----+ +----+ | | | | | +----+ +----+ | | | |||
+---+ +---+ | | | | | | | | +---+ +---+ | +---+ +---+ | | | | | | | | +---+ +---+ | |||
|ES1|-|RB1|-| Area 1 |-|BRB1| |BRB2|-| Area 2 |-|RB2|-|ES2| | |ES1|-|RB1|-| Area 1 |-|BRB1| |BRB2|-| Area 2 |-|RB2|-|ES2| | |||
+---+ +---+ | | +----+ +----+ | | +---+ +---+ | +---+ +---+ | | +----+ +----+ | | +---+ +---+ | |||
| | | | | | | | | | | | | | |||
+--------+ +-----------+ +--------+ | +--------+ +-----------+ +--------+ | |||
|<----TRILL ------>|<IP tunnel>|<-----TRILL ----->| | |<----TRILL ------>|<IP tunnel>|<-----TRILL ----->| | |||
Figure 1: TRILL interconnection | Figure 1: TRILL interconnection | |||
In Data Center interconnection scenario illustrated in figure 1, a | In Data Center interconnection scenario illustrated in figure 1, a | |||
single SDN Controller or network management system (NMS) can be used | single SDN Controller or network management system (NMS) can be used | |||
for end-to-end network management. End-to-end topology visibility on | for end-to-end network management. End-to-end topology visibility on | |||
the SDN controller or NMS is very useful for whole network automation | the SDN controller or NMS is very useful for whole network | |||
and troubleshooting. BGP LS can be used by the external SDN | automation and troubleshooting. BGP LS can be used by the external | |||
controller to collect multiple TRILL domain's link-state. | SDN controller to collect multiple TRILL domain's link-state. | |||
If ESADI (End Station Address Distribution Information) protocol | ||||
[RFC7357] is used for control plane MAC learning in each data center, | ||||
BGP LS also can be used for MAC address reachability information | BGP LS also can be used for MAC address reachability information | |||
synchronization across multiple TRILL domains. End-to-end unicast | synchronization across multiple TRILL domains. The transported MAC | |||
forwarding paths can be calculated based on the synchronized | reachability information and the like is for telemetry purposes and | |||
information. | for use by SDN controller(s) where the coordination or protocol | |||
between the SDN controllers is out of scope. | ||||
This document describes the detailed BGP LS extension mechanisms for | This document describes the detailed BGP LS extension mechanisms for | |||
TRILL link state and MAC address reachability information | TRILL link state and MAC address reachability information | |||
distribution. | distribution. | |||
2. Conventions used in this document | 2. Conventions used in this document | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
document are to be interpreted as described in [RFC2119] | document are to be interpreted as described in [RFC2119]. | |||
BGP - Border Gateway Protocol | BGP - Border Gateway Protocol | |||
BGP-LS - BGP Link-State | BGP-LS - BGP Link-State | |||
Data label - VLAN or FGL (Fine Grained Label) [RFC7172] | ||||
Data label - VLAN or FGL (Fine Grained Label [RFC7172]) | ||||
IS - Intermediate System (for this document, all relevant | IS - Intermediate System (for this document, all relevant | |||
intermediate systems are RBridges). | intermediate systems are RBridges) | |||
NLRI - Network Layer Reachability Information | NLRI - Network Layer Reachability Information | |||
SDN - Software Defined Networking | SDN - Software Defined Networking | |||
RBridge - A device implementing the TRILL protocol | RBridge - A device implementing the TRILL protocol | |||
TRILL - Transparent Interconnection of Lots of Links | TRILL - Transparent Interconnection of Lots of Links | |||
3. Carrying Trill Link-State Information in BGP | 3. Carrying TRILL Link-State Information in BGP | |||
In [RFC7752], four NLRI types are defined as follows: Node NLRI, Link | In [I-D.ietf-idr-ls-distribution], four NLRI types are defined as | |||
NLRI, IPv4 Topology Prefix NLRI and IPv6 Topology Prefix NLRI. For | follows: Node NLRI, Link NLRI, IPv4 Topology Prefix NLRI and IPv6 | |||
TRILL link-state distribution, the Node NLRI and Link NLRI are | Topology Prefix NLRI. For TRILL link-state distribution, the Node | |||
extended to carry layer 3 gateway role and link MTU information. | NLRI and Link NLRI are extended to carry layer 3 gateway role and | |||
TRILL specific attributes are carried using opaque Node Attribute | link MTU information. TRILL specific attributes are carried using | |||
TLVs, such as nickname, distribution tree number and identifiers, | opaque Node Attribute TLVs, such as nickname, distribution tree | |||
interested VLANs/Fine Grained Label, and multicast group address, and | number and identifiers, interested VLANs/Fine Grained Label, and | |||
etc. | multicast group address, etc. | |||
To differentiate TRILL protocol from layer 3 IGP protocol, a new | To differentiate TRILL protocol from layer 3 IGP protocol, a new | |||
TRILL Protocol-ID is defined. | TRILL Protocol-ID is defined. | |||
+-------------+----------------------------------+ | +-------------+----------------------------------+ | |||
| Protocol-ID | NLRI information source protocol | | | Protocol-ID | NLRI information source protocol | | |||
+-------------+----------------------------------+ | +-------------+----------------------------------+ | |||
| 1 | IS-IS Level 1 | | | 1 | IS-IS Level 1 | | |||
| 2 | IS-IS Level 2 | | | 2 | IS-IS Level 2 | | |||
| 3 | OSPFv2 | | | 3 | OSPFv2 | | |||
| 4 | Direct | | | 4 | Direct | | |||
| 5 | Static configuration | | | 5 | Static configuration | | |||
| 6 | OSPFv3 | | | 6 | OSPFv3 | | |||
| TBD | TRILL | | | TBD | TRILL | | |||
+-------------+----------------------------------+ | +-------------+----------------------------------+ | |||
Table 1: Protocol Identifiers | Table 1: Protocol Identifiers | |||
ESADI (End Station Address Distribution Information) protocol | ESADI (End Station Address Distribution Information) protocol | |||
[RFC7357] is a per data label control plane MAC learning solution. | [RFC7357] is a per data label control plane MAC learning solution. | |||
MAC address reachability information is carried in ESADI packets. | MAC address reachability information is carried in ESADI packets. | |||
Compared with data plane MAC learning solution, ESADI protocol has | Compared with data plane MAC learning solution, ESADI protocol has | |||
security and fast update advantage that are pointed out in [RFC7357]. | security and fast update advantage that are pointed out in [RFC7357]. | |||
For an RBridge that is announcing participation in ESADI, the RBridge | For an RBridge that is announcing participation in ESADI, the | |||
can distribute MAC address reachability information to external | RBridge can distribute MAC address reachability information to | |||
components using BGP. A new NLRI type of ''MAC Reachability NLRI'' | external components using BGP. A new NLRI type of ''MAC Reachability | |||
is requested for the MAC address reachability distribution. | NLRI'' is requested for the MAC address reachability distribution. | |||
+------+---------------------------+ | +------+---------------------------+ | |||
| Type | NLRI Type | | | Type | NLRI Type | | |||
+------+---------------------------+ | +------+---------------------------+ | |||
| 1 | Node NLRI | | | 1 | Node NLRI | | |||
| 2 | Link NLRI | | | 2 | Link NLRI | | |||
| 3 | IPv4 Topology Prefix NLRI | | | 3 | IPv4 Topology Prefix NLRI | | |||
| 4 | IPv6 Topology Prefix NLRI | | | 4 | IPv6 Topology Prefix NLRI | | |||
| TBD | MAC Reachability NLRI | | | TBD | MAC Reachability NLRI | | |||
+------+---------------------------+ | +------+---------------------------+ | |||
Table 2: NLRI Types | Table 2: NLRI Types | |||
The MAC Reachability NLRI uses the format as shown in the following | The MAC Reachability NLRI uses the format as shown in the following | |||
figure. | figure. | |||
0 1 2 3 | 0 1 2 3 | |||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Protocol-ID | | | Protocol-ID | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Identifier | | | Identifier | | |||
| (64 bits) | | | (64 bits) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
// Local Node Descriptor (variable) // | // Local Node Descriptor (variable) // | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
// MAC Address Descriptors (variable) // | // MAC Address Descriptors (variable) // | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Figure 2: The MAC Reachability NLRI format | Figure 2: The MAC Reachability NLRI format | |||
3.1. Node Descriptors | 3.1. Node Descriptors | |||
The Node Descriptor Sub-TLV types include Autonomous System and BGP- | The Node Descriptor Sub-TLV types include Autonomous System and BGP- | |||
LS Identifier, iS-IS Area-ID and IGP Router-ID. TRILL uses a fixed | LS Identifier, IS-IS Area-ID and IGP Router-ID. TRILL uses a fixed | |||
zero Area Address as specified in [RFC6325], Section 4.2.3. This is | zero Area Address as specified in [RFC6325], Section 4.2.3. This is | |||
encoded in a 4-byte Area Address TLV (TLV #1) as follows: | encoded in a 4-byte Area Address TLV (TLV #1) as follows: | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 0x01, Area Address Type | (1 byte) | | 0x01, Area Address Type | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 0x02, Length of Value | (1 byte) | | 0x02, Length of Value | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 0x01, Length of Address | (1 byte) | | 0x01, Length of Address | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 0x00, zero Area Address | (1 byte) | | 0x00, zero Area Address | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Figure 3: Area Address TLV | Figure 3: Area Address TLV | |||
3.1.1. IGP Router-ID | 3.1.1. IGP Router-ID | |||
Similar to layer 3 IS-IS, TRILL protocol uses 7-octet "IS-IS ID" as | Similar to layer 3 IS-IS, TRILL protocol uses 7-octet "IS-IS ID" as | |||
the identity of an RBridge or a pseudonode, IGP Router ID sub-TLV in | the identity of an RBridge or a pseudonode, IGP Router ID sub-TLV in | |||
Node Descriptor TLVs contains the 7-octet "IS-IS ID". In TRILL | Node Descriptor TLVs contains the 7-octet "IS-IS ID". In TRILL | |||
network, each RBridge has a unique 48-bit (6-octet) IS-IS System ID. | network, each RBridge has a unique 48-bit (6-octet) IS-IS System ID. | |||
This ID may be derived from any of the RBridge's unique MAC addresses | This ID may be derived from any of the RBridge's unique MAC | |||
or configured. A pseudonode is assigned a 7-octet ID by the DRB | addresses or configured. A pseudonode is assigned a 7-octet ID by | |||
(Designated RBridge) that created it, the DRB is similar to the | the DRB (Designated RBridge) that created it, the DRB is similar to | |||
"Designated Intermediate System" (DIS) corresponding to a LAN. | the "Designated Intermediate System" (DIS) corresponding to a LAN. | |||
3.2. MAC Address Descriptors | 3.2. MAC Address Descriptors | |||
The ''MAC Address Descriptor'' field is a set of Type/Length/Value | The ''MAC Address Descriptor'' field is a set of Type/Length/Value | |||
(TLV) triplets. ''MAC Address Descriptor'' TLVs uniquely identify an | (TLV) triplets. ''MAC Address Descriptor'' TLVs uniquely identify an | |||
MAC address reachable by a Node. The following attributes TLVs are | MAC address reachable by a Node. The following attributes TLVs are | |||
defined: | defined: | |||
+--------------+-----------------------+----------+-----------------+ | +--------------+-----------------------+----------+-----------------+ | |||
| TLV Code | Description | Length | Value defined | | | TLV Code | Description | Length | Value defined | | |||
| Point | | | in: | | | Point | | | in: | | |||
+--------------+-----------------------+----------+-----------------+ | +--------------+-----------------------+----------+-----------------+ | |||
| 1 | MAC-Reachability | variable | section 3.2.1 | | | 1 | MAC-Reachability | variable | section 3.2.1 | | |||
+--------------+-----------------------+----------+-----------------+ | +--------------+-----------------------+----------+-----------------+ | |||
Table 3: MAC Address Descriptor TLVs | Table 3: MAC Address Descriptor TLVs | |||
3.2.1. MAC-Reachability TLV | 3.2.1. MAC-Reachability TLV | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Type= MAC-RI | (1 byte) | | Type= MAC-RI | (1 byte) | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| Length | (1 byte) | | Length | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+ | |||
|V|F| RESV | Data Label | (4 bytes) | |V|F| RESV | Data Label | (4 bytes) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| MAC (1) (6 bytes) | | | MAC (1) (6 bytes) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
skipping to change at page 7, line 8 ¶ | skipping to change at page 7, line 37 ¶ | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| MAC (N) (6 bytes) | | | MAC (N) (6 bytes) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Figure 4: MAC-Reachability TLV format | Figure 4: MAC-Reachability TLV format | |||
Length is 4 plus a multiple of 6. | Length is 4 plus a multiple of 6. | |||
The bits of 'V' and 'F' are used to identify Data Label type and are | The bits of 'V' and 'F' are used to identify Data Label type and are | |||
defined as follows: | defined as follows: | |||
+----------+-------------------------+ | +----------+-------------------------+ | |||
| Bit | Description | | | Bit | Description | | |||
+----------+-------------------------+ | +----------+-------------------------+ | |||
| 'V' | VLAN | | | 'V' | VLAN | | |||
| 'F' | Fine Grained Label | | | 'F' | Fine Grained Label | | |||
+----------+-------------------------+ | +----------+-------------------------+ | |||
Table 4: Data Label Type Bits Definitions | Table 4: Data Label Type Bits Definitions | |||
Notes: If BGP LS is used for NVO3 network MAC address distribution | Notes: If BGP LS is used for NVO3 network MAC address distribution | |||
between external SDN Controller and NVE, Data Label can be used to | between external SDN Controller and NVE, Data Label can be used to | |||
represent 24 bits VN ID. | represent 24 bits VN ID. | |||
3.3. BGP-LS attribute | 3.3. The BGP-LS Attribute | |||
3.3.1. Node Attribute TLVs | 3.3.1. Node Attribute TLVs | |||
3.3.1.1. Node Flag Bits TLV | 3.3.1.1. Node Flag Bits TLV | |||
A new Node Flag bit is added as follows: | A new Node Flag bit is added as follows: | |||
0 1 2 3 | 0 1 2 3 | |||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Type | Length | | | Type | Length | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
|O|T|E|B|G| Reserved | | |O|T|E|B|G| Reserved | | |||
+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+ | |||
Figure 5: Node Flag Bits TLV format | Figure 5: Node Flag Bits TLV format | |||
The new bit and remaining reserved bits are defined as follows: | The new bit and remaining reserved bits are defined as follows: | |||
+----------+----------------------------+-----------+ | +----------+----------------------------+-----------+ | |||
| Bit | Description | Reference | | | Bit | Description | Reference | | |||
+----------+----------------------------+-----------+ | +----------+----------------------------+-----------+ | |||
| 'G' | Layer 3 Gateway Bit | [RFC7176] | | | 'G' | Layer 3 Gateway Bit | [RFC7176] | | |||
| Reserved | Reserved for future use | | | | Reserved | Reserved for future use | | | |||
+----------+----------------------------+-----------+ | +----------+----------------------------+-----------+ | |||
Table 5: Node Flag Bits Definitions | Table 5: Node Flag Bits Definitions | |||
3.3.1.2. Opaque Node Attribute TLV | 3.3.1.2. Opaque Node Attribute TLV | |||
The Opaque Node Attribute TLV is used as the envelope to | The Opaque Node Attribute TLV is used as the envelope to | |||
transparently carry TRILL specific information. In [RFC7176], there | transparently carry TRILL specific information. In [RFC7176], there | |||
are the following Sub-TLVs in the Router Capability and MT- | are the following Sub-TLVs in the Router Capability and MT- | |||
Capability TLVs and the Group Address (GADDR) TLV that need to be | Capability TLVs and the Group Address (GADDR) TLV that need to be | |||
carried. Future possible TRILL TLVs/Sub-TLVs extension also can be | carried. Future possible TRILL TLVs/Sub-TLVs extension also can be | |||
carried using the Opaque Node Attribute TLV. | carried using the Opaque Node Attribute TLV. | |||
Descriptions IS-IS TLV/Sub-TLV | Descriptions IS-IS TLV/Sub-TLV | |||
------------------------------------ | ------------------------------------ | |||
TRILL-VER 22/13 | TRILL-VER 22/13 | |||
NICKNAME 22/6 | NICKNAME 22/6 | |||
TREES 22/7 | TREES 22/7 | |||
TREE-RT-IDs 22/8 | TREE-RT-IDs 22/8 | |||
TREE-USE-IDs 22/9 | TREE-USE-IDs 22/9 | |||
INT-VLAN 22/10 | INT-VLAN 22/10 | |||
VLAN-GROUP 22/14 | VLAN-GROUP 22/14 | |||
INT-LABEL 22/15 | INT-LABEL 22/15 | |||
RBCHANNELS 22/16 | RBCHANNELS 22/16 | |||
AFFINITY 22/17 | AFFINITY 22/17 | |||
LABEL-GROUP 22/18 | LABEL-GROUP 22/18 | |||
GMAC-ADDR 142/1 | GMAC-ADDR 142/1 | |||
GIP-ADDR 142/2 | GIP-ADDR 142/2 | |||
GIPV6-ADDR 142/3 | GIPV6-ADDR 142/3 | |||
GLMAC-ADDR 142/4 | GLMAC-ADDR 142/4 | |||
GLIP-ADDR 142/5 | GLIP-ADDR 142/5 | |||
GLIPV6-ADDR 142/6 | GLIPV6-ADDR 142/6 | |||
Table 6: TRILL TLVs/Sub-TLVs | Table 6: TRILL TLVs/Sub-TLVs | |||
3.3.2. Link Attribute TLVs | 3.3.2. Link Attribute TLVs | |||
Link attribute TLVs are TLVs that may be encoded in the BGP-LS | Link attribute TLVs are TLVs that may be encoded in the BGP-LS | |||
attribute with a link NLRI. Besides the TLVs that has been defined | attribute with a link NLRI. Besides the TLVs that has been defined | |||
in [RFC7752] section 3.3.2 table 9, the following 'Link Attribute' | in [I-D.ietf-idr-ls-distribution] section 3.3.2 table 9, the | |||
TLV is provided for TRILL. | following 'Link Attribute' TLV is provided for TRILL. | |||
+-----------+----------------+--------------+------------------+ | +-----------+----------------+--------------+------------------+ | |||
| TLV Code | Description | IS-IS TLV | Defined in: | | | TLV Code | Description | IS-IS TLV | Defined in: | | |||
| Point | | /Sub-TLV | | | | Point | | /Sub-TLV | | | |||
+-----------+----------------+--------------+------------------+ | +-----------+----------------+--------------+------------------+ | |||
| TBD | Link MTU | 22/28 | [RFC7176]/2.4 | | | TBD | Link MTU | 22/28 | [RFC7176]/2.4 | | |||
+-----------+----------------+--------------+------------------+ | +-----------+----------------+--------------+------------------+ | |||
Table 7: Link Attribute TLVs | Table 7: Link Attribute TLVs | |||
4. Operational Considerations | 4. Operational Considerations | |||
This document does not require any MIB or Yang model to configure | This document does not require any MIB or Yang model to configure | |||
operational parameters. | operational parameters. | |||
An implementation of this specification[idr-ls-trill], MUST do the | Any implementation of the protocol in this specification (i.e. that | |||
distributes TRILL Link-State information using BGP), MUST do the | ||||
malformed attribute checks below, and if it detects a malformed | malformed attribute checks below, and if it detects a malformed | |||
attribute, it should use the 'Attribute Discard' action per [RFC7606] | attribute, it should use the 'Attribute Discard' action per [I- | |||
section 2. | D.ietf.idr-error-handling] section 2. | |||
An implementation MUST perform the following expanded [BGP-LS] | An implementation MUST perform the following expanded [BGP-LS] | |||
syntactic check for determining if the message is malformed: | syntactic check for determining if the message is malformed: | |||
o Does the sum of all TLVs found in the BGP LS attribute correspond | o Does the sum of all TLVs found in the BGP LS attribute | |||
to the BGP LS path attribute length ? | correspond to the BGP LS path attribute length ? | |||
o Does the sum of all TLVs found in the BGP MP_REACH_NLRI attribute | o Does the sum of all TLVs found in the BGP MP_REACH_NLRI | |||
correspond to the BGP MP_REACH_NLRI length ? | attribute correspond to the BGP MP_REACH_NLRI length ? | |||
o Does the sum of all TLVs found in the BGP MP_UNREACH_NLRI | o Does the sum of all TLVs found in the BGP MP_UNREACH_NLRI | |||
attribute correspond to the BGP MP_UNREACH_NLRI length ? | attribute correspond to the BGP MP_UNREACH_NLRI length ? | |||
o Does the sum of all TLVs found in a Node-, Link, prefix (IPv4 or | o Does the sum of all TLVs found in a Node-, Link, prefix (IPv4 | |||
IPv6) NLRI attribute correspond to the Node-, Link- or Prefix | or IPv6) NLRI attribute correspond to the Node-, Link- or Prefix | |||
Descriptors 'Total NLRI Length' field ? | Descriptors 'Total NLRI Length' field ? | |||
o Does any fixed length TLV correspond to the TLV Length field in | o Does any fixed length TLV correspond to the TLV Length field | |||
this document ? | in this document ? | |||
o Does the sum of MAC reachability TLVs equal the length of the | o Does the sum of MAC reachability TLVs equal the length of the | |||
field? | field? | |||
In addition, the following checks need to be made for the fields | In addition, the following checks need to be made for the fields | |||
specific to the BGP LS for TRILL: | specific to the BGP LS for TRILL: | |||
o PROTOCOL ID is TRILL, | PROTOCOL ID is TRILL | |||
o NLRI types are valid per table 2, | NLRI types are valid per table 2 | |||
o MAC Reachability NLRI has correct format including: | MAC Reachability NLRI has correct format including: | |||
* Identifier (64 bits), | o Identifier (64 bits), | |||
* local node descriptor with AREA address TLV has the form found | o local node descriptor with AREA address TLV has the form | |||
in figure 2, | found in figure 2 | |||
o opaque TLV support the range of ISIS-TLV/SUB-TLV shown in table 3, | opaque TLV support the range of ISIS-TLV/SUB-TLV shown in | |||
and link TLVs support the range in figure 8. | table 3, and link TLVs support the range in figure 8. | |||
5. Security Considerations | 5. Security Considerations | |||
Procedures and protocol extensions defined in this document do not | Procedures and protocol extensions defined in this document do not | |||
affect the BGP security model. See [RFC6952] for details. | affect the BGP security model. See [RFC6952] for details. | |||
6. IANA Considerations | 6. IANA Considerations | |||
This section complies with [RFC7153]. For all of the following | For all of the following assignments, [this document] is the | |||
assignments, [this document] is the reference. | reference. | |||
IANA is requested to requested to assign one Protocol-ID for "TRILL" | IANA is requested to assign one Protocol-ID for "TRILL" from the | |||
from the BGP-LS registry of Protocol-IDs | BGP-LS registry of Protocol-IDs. | |||
IANA is requested to assign one NLRI Type for "MAC Reachability" from | IANA is requested to assign one NLRI Type for "MAC Reachability" | |||
the BGP-LS registry of NLRI Types. | from the BGP-LS registry of NLRI Types. | |||
IANA is requested to assign one Node Flag bit for "Layer 3 Gateway" | IANA is requested to assign one Node Flag bit for "Layer 3 Gateway" | |||
from the BGP-LS registry of BGP-LS Attribute TLVs. | from the BGP-LS registry of BGP-LS Attribute TLVs. | |||
IANA is requested to assign one new TLV type for "Link MTU" from the | IANA is requested to assign one new TLV type for "Link MTU" from the | |||
BGP-LS registry of BGP-LS Attribute TLVs. | BGP-LS registry of BGP-LS Attribute TLVs. | |||
7. Acknowledgements | 7. References | |||
Authors like to thank Andrew Qu, Jie Dong, Mingui Zhang, Qin Wu, | ||||
Shunwan Zhuang, Zitao Wang, Lili Wang for their valuable inputs. | ||||
8. Normative References | 7.1. Normative References | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [1] [I-D.ietf-idr-ls-distribution] Gredler, H., Medved, J., | |||
Requirement Levels", BCP 14, RFC 2119, | Previdi, S., Farrel, A., and S.Ray, "North-Bound Distribution of | |||
DOI 10.17487/RFC2119, March 1997, | Link-State and TE Information using BGP", draft-ietf-idr-ls- | |||
<http://www.rfc-editor.org/info/rfc2119>. | distribution-10(work in progress), January 2015. | |||
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A | [2] [I-D.ietf.idr-error-handling] Enke, C., John, S., Pradosh, M., | |||
Border Gateway Protocol 4 (BGP-4)", RFC 4271, | Keyur,P., "Revised Error Handling for BGP UPDATE Messages", | |||
DOI 10.17487/RFC4271, January 2006, | draft-ietf-idr-error-handling-19(work in progress), April 2015. | |||
<http://www.rfc-editor.org/info/rfc4271>. | ||||
[RFC6325] Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S., and A. | [3] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Ghanwani, "Routing Bridges (RBridges): Base Protocol | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
Specification", RFC 6325, DOI 10.17487/RFC6325, July 2011, | ||||
<http://www.rfc-editor.org/info/rfc6325>. | ||||
[RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of | [4] [RFC6325] Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S.,and | |||
BGP, LDP, PCEP, and MSDP Issues According to the Keying | A. Ghanwani, "Routing Bridges (RBridges): Base Protocol | |||
and Authentication for Routing Protocols (KARP) Design | Specification", RFC 6325, July 2011. | |||
Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013, | ||||
<http://www.rfc-editor.org/info/rfc6952>. | ||||
[RFC7153] Rosen, E. and Y. Rekhter, "IANA Registries for BGP | [5] [RFC7172] Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, | |||
Extended Communities", RFC 7153, DOI 10.17487/RFC7153, | R., and D. Dutt, "Transparent Interconnection of Lots of Links | |||
March 2014, <http://www.rfc-editor.org/info/rfc7153>. | (TRILL): Fine-Grained Labeling", RFC 7172, DOI 10.17487/RFC7172, | |||
May 2014, <http://www.rfc-editor.org/info/rfc7172>. | ||||
[RFC7172] Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, R., and | [6] [RFC7176] Eastlake, D., Senevirathne, T., Ghanwani, A., Dutt, | |||
D. Dutt, "Transparent Interconnection of Lots of Links | D., Banerjee, A.," Transparent Interconnection of Lots of Links | |||
(TRILL): Fine-Grained Labeling", RFC 7172, | (TRILL) Use of IS-IS'', May 2014. | |||
DOI 10.17487/RFC7172, May 2014, | ||||
<http://www.rfc-editor.org/info/rfc7172>. | ||||
[RFC7176] Eastlake 3rd, D., Senevirathne, T., Ghanwani, A., Dutt, | [7] [RFC7357] - Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., | |||
D., and A. Banerjee, "Transparent Interconnection of Lots | and O. Stokes, "Transparent Interconnection of Lots of Links | |||
of Links (TRILL) Use of IS-IS", RFC 7176, | (TRILL): End Station Address Distribution Information (ESADI) | |||
DOI 10.17487/RFC7176, May 2014, | Protocol", RFC 7357, September 2014, <http://www.rfc- | |||
<http://www.rfc-editor.org/info/rfc7176>. | editor.org/info/rfc7357>. | |||
[RFC7357] Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., and O. | 7.2. Informative References | |||
Stokes, "Transparent Interconnection of Lots of Links | ||||
(TRILL): End Station Address Distribution Information | ||||
(ESADI) Protocol", RFC 7357, DOI 10.17487/RFC7357, | ||||
September 2014, <http://www.rfc-editor.org/info/rfc7357>. | ||||
[RFC7606] Chen, E., Ed., Scudder, J., Ed., Mohapatra, P., and K. | 8. Acknowledgments | |||
Patel, "Revised Error Handling for BGP UPDATE Messages", | ||||
RFC 7606, DOI 10.17487/RFC7606, August 2015, | ||||
<http://www.rfc-editor.org/info/rfc7606>. | ||||
[RFC7752] Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., and | Authors like to thank Ross Callon, Andrew Qu, Jie Dong, Mingui Zhang, | |||
S. Ray, "North-Bound Distribution of Link-State and | Qin Wu, Shunwan Zhuang, Zitao Wang, Lili Wang for their valuable | |||
Traffic Engineering (TE) Information Using BGP", RFC 7752, | inputs. | |||
DOI 10.17487/RFC7752, March 2016, | ||||
<http://www.rfc-editor.org/info/rfc7752>. | ||||
Authors' Addresses | Authors' Addresses | |||
Weiquo Hao | ||||
Weiguo Hao | ||||
Huawei Technologies | Huawei Technologies | |||
101 Software Avenue, | 101 Software Avenue, | |||
Nanjing 210012 | Nanjing 210012 | |||
China | China | |||
Phone: +86-25-56623144 | Phone: +86-25-56623144 | |||
Email: haoweiguo@huawei.com | Email: haoweiguo@huawei.com | |||
Donald E. Eastlake | Donald E. Eastlake | |||
Huawei Technologies | Huawei Technologies | |||
155 Beaver Street | 155 Beaver Street | |||
Milford , MA 01757 | Milford, MA 01757 USA | |||
USA | ||||
Phone: +1-508-333-2270 | Phone: +1-508-333-2270 | |||
Email: d3e3e3@gmail.com | Email: d3e3e3@gmail.com | |||
Susan Hares | Susan K. Hares | |||
Huawei Technologies | Hickory Hill Consulting | |||
7453 Hickory | 7453 Hickory Hill | |||
Saline , MI 48176 | Saline, MI 48176 USA | |||
USA | ||||
Phone: +1-734-604-0332 | ||||
Email: shares@ndzh.com | Email: shares@ndzh.com | |||
Sujay Gupta | Sujay Gupta | |||
IP Infusion | IP Infusion | |||
Email: sujay.gupta@ipinfusion.com | Email: sujay.gupta@ipinfusion.com | |||
Muhammad Durrani | Muhammad Durrani | |||
Cisco Systems | Cisco | |||
Phone: +1-408-527-6921 | Phone: +1-408-527-6921 | |||
Email: mdurrani@cisco.com | Email: mdurrani@cisco.com | |||
Yizhou Li | Yizhou Li | |||
Huawei Technologies | Huawei Technologies | |||
101 Software Avenue, | 101 Software Avenue, | |||
Nanjing 210012 | Nanjing 210012, China | |||
China | ||||
Phone: +86-25-56625375 | ||||
Email: liyizhou@huawei.com | Email: liyizhou@huawei.com | |||
End of changes. 98 change blocks. | ||||
315 lines changed or deleted | 303 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |