draft-ietf-idr-ls-trill-02.txt | draft-ietf-idr-ls-trill-03.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 | ||||
Distribution of TRILL Link-State using BGP | INTERNET-DRAFT D. Eastlake | |||
draft-ietf-idr-ls-trill-02.txt | Intended status: Proposed Standard W. Hao | |||
Huawei | ||||
S. Hares | ||||
Hickory Hill Consulting | ||||
S. Gupta | ||||
IP Infusion | ||||
M. Durrani | ||||
Cisco | ||||
Y. Li | ||||
Huawei | ||||
Expires: April 2, 2018 October 3, 2017 | ||||
Distribution of TRILL Link-State using BGP | ||||
<draft-ietf-idr-ls-trill-03.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 | External components such as an SDN Controller can use the information | |||
information for topology visibility, troubleshooting, network | for topology visibility, troubleshooting, network automation, and the | |||
automation, etc. | like. | |||
Status of this Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted to IETF in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
Distribution of this document is unlimited. Comments should be sent | ||||
to the authors or the IDR working group mailing list: idr@ietf.org. | ||||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
other groups may also distribute working documents as Internet- | other groups may also distribute working documents as Internet- | |||
Drafts. | Drafts. | |||
Internet-Drafts are draft documents valid for a maximum of six | Internet-Drafts are draft documents valid for a maximum of six months | |||
months and may be updated, replaced, or obsoleted by other documents | and may be updated, replaced, or obsoleted by other documents at any | |||
at any time. It is inappropriate to use Internet-Drafts as | time. It is inappropriate to use Internet-Drafts as reference | |||
reference material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
http://www.ietf.org/1id-abstracts.html | http://www.ietf.org/1id-abstracts.html. The list of Internet-Draft | |||
Shadow Directories can be accessed at | ||||
The list of Internet-Draft Shadow Directories can be accessed at | ||||
http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
Copyright Notice | INTERNET-DRAFT BGP LS For TRILL | |||
Copyright (c) 2016 IETF Trust and the persons identified as the | Table of Contents | |||
document authors. All rights reserved. | ||||
This document is subject to BCP 78 and the IETF Trust's Legal | 1. Introduction............................................3 | |||
Provisions Relating to IETF Documents | 2. Conventions used in this document.......................5 | |||
(http://trustee.ietf.org/license-info) in effect on the date of | ||||
publication of this document. Please review these documents | ||||
carefully, as they describe your rights and restrictions with | ||||
respect to this document. Code Components extracted from this | ||||
document must include Simplified BSD License text as described in | ||||
Section 4.e of the Trust Legal Provisions and are provided without | ||||
warranty as described in the Simplified BSD License. | ||||
Table of Contents | 3. Carrying TRILL Link-State Information in BGP............6 | |||
3.1 Node Descriptors.......................................7 | ||||
3.1.1 IGP Router-ID........................................8 | ||||
3.2 MAC Address Descriptors................................8 | ||||
3.2.1 MAC-Reachability TLV.................................9 | ||||
3.3 The BGP-LS Attribute...................................9 | ||||
3.3.1 Node Attribute TLVs..................................9 | ||||
3.3.1.1 Node Flag Bits TLV................................10 | ||||
3.3.1.2 Opaque Node Attribute TLV.........................10 | ||||
3.3.2. Link Attribute TLVs................................11 | ||||
1. Introduction ................................................ 2 | 4. Operational Considerations.............................12 | |||
2. Conventions used in this document............................ 4 | ||||
3. Carrying TRILL Link-State Information in BGP................. 4 | 5. Security Considerations................................13 | |||
3.1. Node Descriptors........................................ 6 | 6. IANA Considerations....................................13 | |||
3.1.1. IGP Router-ID...................................... 6 | ||||
3.2. MAC Address Descriptors................................. 6 | Normative References......................................14 | |||
3.2.1. MAC-Reachability TLV............................... 7 | Informative References....................................14 | |||
3.3. The BGP-LS Attribute.................................... 8 | Acknowledgments...........................................15 | |||
3.3.1. Node Attribute TLVs................................ 8 | ||||
3.3.1.1. Node Flag Bits TLV............................ 8 | Authors' Addresses........................................16 | |||
3.3.1.2. Opaque Node Attribute TLV..................... 8 | ||||
3.3.2. Link Attribute TLVs................................ 9 | INTERNET-DRAFT BGP LS For TRILL | |||
4. Operational Considerations................................... 9 | ||||
5. Security Considerations..................................... 10 | ||||
6. IANA Considerations ........................................ 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 [I-D.ietf-idr- | engineering information to some external components [RFC7752], such | |||
ls-distribution], such as the PCE and ALTO servers. The information | as the PCE and ALTO servers. The information can be used by these | |||
can be used by these external components to compute a MPLS-TE path | external components to compute a MPLS-TE path across IGP areas, | |||
across IGP areas, visualize and abstract network topology, and the | visualize and abstract network topology, and the like. | |||
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 | |||
skipping to change at page 3, line 37 ¶ | skipping to change at page 3, line 47 ¶ | |||
+--------+ |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 | the SDN controller or NMS is very useful for whole network automation | |||
automation and troubleshooting. BGP LS can be used by the external | and troubleshooting. BGP LS can be used by the external SDN | |||
SDN controller to collect multiple TRILL domain's link-state. | controller to collect multiple TRILL domain's link-state. | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
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. The transported MAC | synchronization across multiple TRILL domains. The transported MAC | |||
reachability information and the like is for telemetry purposes and | reachability information and the like is for telemetry purposes and | |||
for use by SDN controller(s) where the coordination or protocol | for use by SDN controller(s) where the coordination or protocol | |||
between the SDN controllers is out of scope. | 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. | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
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 | |||
skipping to change at page 4, line 32 ¶ | skipping to change at page 6, line 5 ¶ | |||
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 | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
3. Carrying TRILL Link-State Information in BGP | 3. Carrying TRILL Link-State Information in BGP | |||
In [I-D.ietf-idr-ls-distribution], four NLRI types are defined as | In [RFC7752], four NLRI types are defined as follows: Node NLRI, Link | |||
follows: Node NLRI, Link NLRI, IPv4 Topology Prefix NLRI and IPv6 | NLRI, IPv4 Topology Prefix NLRI and IPv6 Topology Prefix NLRI. For | |||
Topology Prefix NLRI. For TRILL link-state distribution, the Node | TRILL link-state distribution, the Node NLRI and Link NLRI are | |||
NLRI and Link NLRI are extended to carry layer 3 gateway role and | extended to carry layer 3 gateway role and link MTU information. | |||
link MTU information. TRILL specific attributes are carried using | TRILL specific attributes are carried using opaque Node Attribute | |||
opaque Node Attribute TLVs, such as nickname, distribution tree | TLVs, such as nickname, distribution tree number and identifiers, | |||
number and identifiers, interested VLANs/Fine Grained Label, and | interested VLANs/Fine Grained Label, and multicast group address, | |||
multicast group address, etc. | 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 | For an RBridge that is announcing participation in ESADI, the RBridge | |||
RBridge can distribute MAC address reachability information to | can distribute MAC address reachability information to external | |||
external components using BGP. A new NLRI type of ''MAC Reachability | components using BGP. A new NLRI type of "MAC Reachability NLRI" is | |||
NLRI'' is requested for the MAC address reachability distribution. | requested for the MAC address reachability distribution. | |||
+------+---------------------------+ | INTERNET-DRAFT BGP LS For TRILL | |||
| Type | NLRI Type | | ||||
+------+---------------------------+ | +------+---------------------------+ | |||
| 1 | Node NLRI | | | Type | NLRI Type | | |||
| 2 | Link NLRI | | +------+---------------------------+ | |||
| 3 | IPv4 Topology Prefix NLRI | | | 1 | Node NLRI | | |||
| 4 | IPv6 Topology Prefix NLRI | | | 2 | Link NLRI | | |||
| TBD | MAC Reachability NLRI | | | 3 | IPv4 Topology Prefix NLRI | | |||
+------+---------------------------+ | | 4 | IPv6 Topology Prefix NLRI | | |||
Table 2: NLRI Types | | TBD | MAC Reachability NLRI | | |||
+------+---------------------------+ | ||||
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) // | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
skipping to change at page 6, line 17 ¶ | skipping to change at page 7, line 34 ¶ | |||
+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| 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: | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 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 | ||||
3.1.1. IGP Router-ID | Figure 3: Area Address TLV | |||
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 | This ID may be derived from any of the RBridge's unique MAC addresses | |||
addresses or configured. A pseudonode is assigned a 7-octet ID by | or configured. A pseudonode is assigned a 7-octet ID by the DRB | |||
the DRB (Designated RBridge) that created it, the DRB is similar to | (Designated RBridge) that created it, the DRB is similar to the | |||
the "Designated Intermediate System" (DIS) corresponding to a LAN. | "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 | ||||
3.2.1. MAC-Reachability TLV | Table 3: MAC Address Descriptor TLVs | |||
+-+-+-+-+-+-+-+-+ | INTERNET-DRAFT BGP LS For TRILL | |||
| Type= MAC-RI | (1 byte) | ||||
+-+-+-+-+-+-+-+-+ | 3.2.1 MAC-Reachability TLV | |||
| Length | (1 byte) | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
|V|F| RESV | Data Label | (4 bytes) | | Type= MAC-RI | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+ | |||
| MAC (1) (6 bytes) | | | Length | (1 byte) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+ | |||
| ................. | | |V|F| RESV | Data Label | (4 bytes) | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| MAC (N) (6 bytes) | | | MAC (1) (6 bytes) | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Figure 4: MAC-Reachability TLV format | | ................. | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| MAC (N) (6 bytes) | | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
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 | ||||
Notes: If BGP LS is used for NVO3 network MAC address distribution | Table 4: Data Label Type Bits Definitions | |||
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. The BGP-LS Attribute | 3.3 The BGP-LS Attribute | |||
3.3.1. Node Attribute TLVs | 3.3.1 Node Attribute TLVs | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
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 | ||||
3.3.1.2. Opaque Node Attribute TLV | Table 5: Node Flag Bits Definitions | |||
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 | INTERNET-DRAFT BGP LS For TRILL | |||
------------------------------------ | ||||
TRILL-VER 22/13 | ||||
NICKNAME 22/6 | ||||
TREES 22/7 | ||||
TREE-RT-IDs 22/8 | ||||
TREE-USE-IDs 22/9 | ||||
INT-VLAN 22/10 | ||||
VLAN-GROUP 22/14 | ||||
INT-LABEL 22/15 | ||||
RBCHANNELS 22/16 | ||||
AFFINITY 22/17 | ||||
LABEL-GROUP 22/18 | ||||
GMAC-ADDR 142/1 | ||||
GIP-ADDR 142/2 | ||||
GIPV6-ADDR 142/3 | ||||
GLMAC-ADDR 142/4 | ||||
GLIP-ADDR 142/5 | ||||
GLIPV6-ADDR 142/6 | ||||
Table 6: TRILL TLVs/Sub-TLVs | Descriptions IS-IS TLV/Sub-TLV | |||
------------------------------------ | ||||
TRILL-VER 22/13 | ||||
NICKNAME 22/6 | ||||
TREES 22/7 | ||||
TREE-RT-IDs 22/8 | ||||
TREE-USE-IDs 22/9 | ||||
INT-VLAN 22/10 | ||||
VLAN-GROUP 22/14 | ||||
INT-LABEL 22/15 | ||||
RBCHANNELS 22/16 | ||||
AFFINITY 22/17 | ||||
LABEL-GROUP 22/18 | ||||
GMAC-ADDR 142/1 | ||||
GIP-ADDR 142/2 | ||||
GIPV6-ADDR 142/3 | ||||
GLMAC-ADDR 142/4 | ||||
GLIP-ADDR 142/5 | ||||
GLIPV6-ADDR 142/6 | ||||
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 | |||
in [I-D.ietf-idr-ls-distribution] section 3.3.2 table 9, the | [RFC7752] section 3.3.2 Table 9, the following 'Link Attribute' TLV | |||
following 'Link Attribute' TLV is provided for TRILL. | is provided for TRILL. | |||
+-----------+----------------+--------------+------------------+ | ||||
| TLV Code | Description | IS-IS TLV | Defined in: | | ||||
| Point | | /Sub-TLV | | | ||||
+-----------+----------------+--------------+------------------+ | ||||
| TBD | Link MTU | 22/28 | [RFC7176]/2.4 | | ||||
+-----------+----------------+--------------+------------------+ | ||||
+-----------+----------------+--------------+------------------+ | ||||
| TLV Code | Description | IS-IS TLV | Defined in: | | ||||
| Point | | /Sub-TLV | | | ||||
+-----------+----------------+--------------+------------------+ | ||||
| TBD | Link MTU | 22/28 | [RFC7176]/2.4 | | ||||
+-----------+----------------+--------------+------------------+ | ||||
Table 7: Link Attribute TLVs | Table 7: Link Attribute TLVs | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
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. | |||
Any implementation of the protocol in this specification (i.e. that | Any implementation of the protocol in this specification (i.e. that | |||
distributes TRILL Link-State information using BGP), MUST do the | 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 [I- | attribute, it should use the 'Attribute Discard' action per [I- | |||
D.ietf.idr-error-handling] 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 | o Does the sum of all TLVs found in the BGP LS attribute correspond | |||
correspond to the BGP LS path attribute length ? | to the BGP LS path attribute length ? | |||
o Does the sum of all TLVs found in the BGP MP_REACH_NLRI | o Does the sum of all TLVs found in the BGP MP_REACH_NLRI attribute | |||
attribute correspond to the BGP MP_REACH_NLRI length ? | 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 | o Does the sum of all TLVs found in a Node-, Link, prefix (IPv4 or | |||
or IPv6) NLRI attribute correspond to the Node-, Link- or Prefix | 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 | o Does any fixed length TLV correspond to the TLV Length field in | |||
in this document ? | 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: | |||
PROTOCOL ID is TRILL | PROTOCOL ID is TRILL | |||
NLRI types are valid per table 2 | NLRI types are valid per Table 2 | |||
MAC Reachability NLRI has correct format including: | MAC Reachability NLRI has correct format including: | |||
o Identifier (64 bits), | o Identifier (64 bits), | |||
o local node descriptor with AREA address TLV has the form | o local node descriptor with AREA address TLV has the form | |||
found in figure 2 | found in Figure 2 | |||
opaque TLV support the range of ISIS-TLV/SUB-TLV shown in | opaque TLV support the range of ISIS-TLV/SUB-TLV shown in Table | |||
table 3, and link TLVs support the range in figure 8. | 3, and link TLVs support the range in Figure 8. | |||
INTERNET-DRAFT BGP LS For TRILL | ||||
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 | |||
For all of the following assignments, [this document] is the | For all of the following assignments, [this document] is the | |||
reference. | reference. | |||
IANA is requested to assign one Protocol-ID for "TRILL" from the | IANA is requested to assign one Protocol-ID for "TRILL" from the BGP- | |||
BGP-LS registry of Protocol-IDs. | LS registry of Protocol-IDs. | |||
IANA is requested to assign one NLRI Type for "MAC Reachability" | IANA is requested to assign one NLRI Type for "MAC Reachability" from | |||
from the BGP-LS registry of NLRI Types. | 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. References | INTERNET-DRAFT BGP LS For TRILL | |||
7.1. Normative References | Normative References | |||
[1] [I-D.ietf-idr-ls-distribution] Gredler, H., Medved, J., | [I-D.ietf.idr-error-handling] - Enke, C., John, S., Pradosh, M., | |||
Previdi, S., Farrel, A., and S.Ray, "North-Bound Distribution of | Keyur,P., "Revised Error Handling for BGP UPDATE Messages", | |||
Link-State and TE Information using BGP", draft-ietf-idr-ls- | draft-ietf-idr-error-handling-19(work in progress), April 2015. | |||
distribution-10(work in progress), January 2015. | ||||
[2] [I-D.ietf.idr-error-handling] Enke, C., John, S., Pradosh, M., | [IS-IS] - International Organization for Standardization, | |||
Keyur,P., "Revised Error Handling for BGP UPDATE Messages", | "Information technology -- Telecommunications and information | |||
draft-ietf-idr-error-handling-19(work in progress), April 2015. | 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)", ISO/IEC | ||||
10589:2002, Second Edition, November 2002. | ||||
[3] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] - Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
[4] [RFC6325] Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S.,and | [RFC6325] - Perlman, R., Eastlake 3rd, D., Dutt, D., Gai, S.,and A. | |||
A. Ghanwani, "Routing Bridges (RBridges): Base Protocol | Ghanwani, "Routing Bridges (RBridges): Base Protocol | |||
Specification", RFC 6325, July 2011. | Specification", RFC 6325, July 2011. | |||
[5] [RFC7172] Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, | [RFC7172] - Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, R., | |||
R., and D. Dutt, "Transparent Interconnection of Lots of Links | and D. Dutt, "Transparent Interconnection of Lots of Links | |||
(TRILL): Fine-Grained Labeling", RFC 7172, DOI 10.17487/RFC7172, | (TRILL): Fine-Grained Labeling", RFC 7172, DOI | |||
May 2014, <http://www.rfc-editor.org/info/rfc7172>. | 10.17487/RFC7172, May 2014, <http://www.rfc- | |||
editor.org/info/rfc7172>. | ||||
[6] [RFC7176] Eastlake, D., Senevirathne, T., Ghanwani, A., Dutt, | [RFC7176] - Eastlake, D., Senevirathne, T., Ghanwani, A., Dutt, D., | |||
D., Banerjee, A.," Transparent Interconnection of Lots of Links | Banerjee, A.," Transparent Interconnection of Lots of Links | |||
(TRILL) Use of IS-IS'', May 2014. | (TRILL) Use of IS-IS", May 2014. | |||
[7] [RFC7357] - Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., | [RFC7357] - Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., and O. | |||
and O. Stokes, "Transparent Interconnection of Lots of Links | Stokes, "Transparent Interconnection of Lots of Links (TRILL): | |||
(TRILL): End Station Address Distribution Information (ESADI) | End Station Address Distribution Information (ESADI) Protocol", | |||
Protocol", RFC 7357, September 2014, <http://www.rfc- | RFC 7357, September 2014, <http://www.rfc- | |||
editor.org/info/rfc7357>. | editor.org/info/rfc7357>. | |||
7.2. Informative References | [RFC7752] - Gredler, H., Ed., Medved, J., Previdi, S., Farrel, A., | |||
and S. Ray, "North-Bound Distribution of Link-State and Traffic | ||||
Engineering (TE) Information Using BGP", RFC 7752, DOI | ||||
10.17487/RFC7752, March 2016, <https://www.rfc- | ||||
editor.org/info/rfc7752>. | ||||
8. Acknowledgments | Informative References | |||
[RFC6952] - Jethanandani, M., Patel, K., and L. Zheng, "Analysis of | ||||
BGP, LDP, PCEP, and MSDP Issues According to the Keying and | ||||
Authentication for Routing Protocols (KARP) Design Guide", RFC | ||||
INTERNET-DRAFT BGP LS For TRILL | ||||
6952, DOI 10.17487/RFC6952, May 2013, <https://www.rfc- | ||||
editor.org/info/rfc6952> | ||||
Acknowledgments | ||||
Authors like to thank Ross Callon, Andrew Qu, Jie Dong, Mingui Zhang, | Authors like to thank Ross Callon, Andrew Qu, Jie Dong, Mingui Zhang, | |||
Qin Wu, Shunwan Zhuang, Zitao Wang, Lili Wang for their valuable | Qin Wu, Shunwan Zhuang, Zitao Wang, Lili Wang for their valuable | |||
inputs. | inputs. | |||
The document was prepared in raw nroff. All macros used were defined | ||||
within the source file. | ||||
INTERNET-DRAFT BGP LS For TRILL | ||||
Authors' Addresses | Authors' Addresses | |||
Weiguo 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 USA | Milford, MA 01757 USA | |||
Phone: +1-508-333-2270 | Phone: +1-508-333-2270 | |||
Email: d3e3e3@gmail.com | Email: d3e3e3@gmail.com | |||
Susan K. Hares | Susan K. Hares | |||
Hickory Hill Consulting | Hickory Hill Consulting | |||
7453 Hickory Hill | 7453 Hickory Hill | |||
Saline, MI 48176 USA | Saline, MI 48176 USA | |||
Email: shares@ndzh.com | Email: shares@ndzh.com | |||
Sujay Gupta | ||||
IP Infusion | ||||
Email: sujay.gupta@ipinfusion.com | ||||
Muhammad Durrani | Sujay Gupta | |||
Cisco | IP Infusion | |||
Phone: +1-408-527-6921 | ||||
Email: mdurrani@cisco.com | ||||
Yizhou Li | Email: sujay.gupta@ipinfusion.com | |||
Huawei Technologies | ||||
101 Software Avenue, | ||||
Nanjing 210012, China | ||||
Phone: +86-25-56625375 | Muhammad Durrani | |||
Email: liyizhou@huawei.com | Cisco | |||
Phone: +1-408-527-6921 | ||||
Email: mdurrani@cisco.com | ||||
Yizhou Li | ||||
Huawei Technologies | ||||
101 Software Avenue, | ||||
Nanjing 210012, China | ||||
Phone: +86-25-56625375 | ||||
Email: liyizhou@huawei.com | ||||
INTERNET-DRAFT BGP LS For TRILL | ||||
Copyright, Disclaimer, and Additional IPR Provisions | ||||
Copyright (c) 2017 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 | ||||
(http://trustee.ietf.org/license-info) in effect on the date of | ||||
publication of this document. Please review these documents | ||||
carefully, as they describe your rights and restrictions with respect | ||||
to this document. Code Components extracted from this document must | ||||
include Simplified BSD License text as described in Section 4.e of | ||||
the Trust Legal Provisions and are provided without warranty as | ||||
described in the Simplified BSD License. The definitive version of | ||||
an IETF Document is that published by, or under the auspices of, the | ||||
IETF. Versions of IETF Documents that are published by third parties, | ||||
including those that are translated into other languages, should not | ||||
be considered to be definitive versions of IETF Documents. The | ||||
definitive version of these Legal Provisions is that published by, or | ||||
under the auspices of, the IETF. Versions of these Legal Provisions | ||||
that are published by third parties, including those that are | ||||
translated into other languages, should not be considered to be | ||||
definitive versions of these Legal Provisions. For the avoidance of | ||||
doubt, each Contributor to the IETF Standards Process licenses each | ||||
Contribution that he or she makes as part of the IETF Standards | ||||
Process to the IETF Trust pursuant to the provisions of RFC 5378. No | ||||
language to the contrary, or terms, conditions or rights that differ | ||||
from or are inconsistent with the rights and licenses granted under | ||||
RFC 5378, shall have any effect and shall be null and void, whether | ||||
published or posted by such Contributor, or included with or in such | ||||
Contribution. | ||||
End of changes. 87 change blocks. | ||||
266 lines changed or deleted | 307 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/ |