draft-ietf-idr-ls-trill-00.txt | draft-ietf-idr-ls-trill-01.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: March 2016 September 10, 2015 | ||||
Distribution of TRILL Link-State using BGP | IDR Working Group W,. Hao | |||
draft-ietf-idr-ls-trill-00.txt | Internet-Draft D. Eastlake | |||
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 | External components such as an SDN Controller can use the information | |||
information for topology visibility, troubleshooting, network | for topology visibility, troubleshooting, network automation, etc. | |||
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), its areas, and its working groups. Note that | Task Force (IETF). Note that other groups may also distribute | |||
other groups may also distribute working documents as Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six | ||||
months and may be updated, replaced, or obsoleted by other documents | ||||
at any time. It is inappropriate to use Internet-Drafts as | ||||
reference material or to cite them other than as "work in progress." | ||||
The list of current Internet-Drafts can be accessed at | Internet-Drafts are draft documents valid for a maximum of six months | |||
http://www.ietf.org/1id-abstracts.html | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | ||||
material or to cite them other than as "work in progress." | ||||
The list of Internet-Draft Shadow Directories can be accessed at | This Internet-Draft will expire on September 21, 2016. | |||
http://www.ietf.org/shadow.html. | ||||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2015 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 | carefully, as they describe your rights and restrictions with respect | |||
respect to this document. Code Components extracted from this | to this document. Code Components extracted from this document must | |||
document must include Simplified BSD License text as described in | include Simplified BSD License text as described in Section 4.e of | |||
Section 4.e of the Trust Legal Provisions and are provided without | the Trust Legal Provisions and are provided without warranty as | |||
warranty as described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction ................................................ 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
2. Conventions used in this document............................ 4 | 2. Conventions used in this document . . . . . . . . . . . . . . 3 | |||
3. Carrying TRILL Link-State Information in BGP................. 4 | 3. Carrying Trill Link-State Information in BGP . . . . . . . . 4 | |||
3.1. Node Descriptors........................................ 6 | 3.1. Node Descriptors . . . . . . . . . . . . . . . . . . . . 5 | |||
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............................... 7 | 3.2.1. MAC-Reachability TLV . . . . . . . . . . . . . . . . 6 | |||
3.3. The BGP-LS Attribute.................................... 8 | 3.3. BGP-LS attribute . . . . . . . . . . . . . . . . . . . . 7 | |||
3.3.1. Node Attribute TLVs................................ 8 | 3.3.1. Node Attribute TLVs . . . . . . . . . . . . . . . . . 7 | |||
3.3.1.1. Node Flag Bits TLV............................ 8 | 3.3.2. Link Attribute TLVs . . . . . . . . . . . . . . . . . 8 | |||
3.3.1.2. Opaque Node Attribute TLV..................... 8 | 4. Operational Considerations . . . . . . . . . . . . . . . . . 8 | |||
3.3.2. Link Attribute TLVs................................ 9 | 5. Security Considerations . . . . . . . . . . . . . . . . . . . 10 | |||
4. Operational Considerations................................... 9 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 | |||
5. Security Considerations..................................... 10 | 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 10 | |||
6. IANA Considerations ........................................ 11 | 8. Normative References . . . . . . . . . . . . . . . . . . . . 10 | |||
7. References ................................................. 11 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 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 as | |||
ls-distribution], such as the PCE and ALTO servers. The information | 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 | |||
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 | 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. | |||
If ESADI (End Station Address Distribution Information) protocol | If ESADI (End Station Address Distribution Information) protocol | |||
[RFC7357] is used for control plane MAC learning in each data center, | [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. End-to-end unicast | |||
forwarding paths can be calculated based on the synchronized | forwarding paths can be calculated based on the synchronized | |||
information. | information. | |||
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 [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, and | |||
multicast group address, and 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'' | |||
NLRI'' is requested for the MAC address reachability distribution. | 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 | 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 | 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 37 ¶ | skipping to change at page 7, line 8 ¶ | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-...+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| 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. The BGP-LS Attribute | 3.3. 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 [I-D.ietf-idr-ls-distribution] section 3.3.2 table 9, the | in [RFC7752] section 3.3.2 table 9, the following 'Link Attribute' | |||
following 'Link Attribute' TLV is provided for TRILL. | 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 | An implementation of this specification[idr-ls-trill], 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 [RFC7606] | |||
D.ietf.idr-error-handling] section 2. | 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 | o PROTOCOL ID is TRILL, | |||
NLRI types are valid per table 2 | o NLRI types are valid per table 2, | |||
MAC Reachability NLRI has correct format including: | o MAC Reachability NLRI has correct format including: | |||
o Identifier (64 bits), | * Identifier (64 bits), | |||
o local node descriptor with AREA address TLV has the | * local node descriptor with AREA address TLV has the form found | |||
form found in figure 2, | in figure 2, | |||
opaque TLV support the range of ISIS-TLV/SUB-TLV shown in | o opaque TLV support the range of ISIS-TLV/SUB-TLV shown in table 3, | |||
table 3, and link TLVs support the range in figure 8. | 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 | |||
For all of the following assignments, [this document] is the | This section complies with [RFC7153]. For all of the following | |||
reference. | assignments, [this document] is the reference. | |||
IANA is requested to assign one Protocol-ID for "TRILL" from the | IANA is requested to requested to assign one Protocol-ID for "TRILL" | |||
BGP-LS registry of Protocol-IDs. | from the BGP-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 | 7. Acknowledgements | |||
7.1. Normative References | Authors like to thank Andrew Qu, Jie Dong, Mingui Zhang, Qin Wu, | |||
Shunwan Zhuang, Zitao Wang, Lili Wang for their valuable inputs. | ||||
[1] [I-D.ietf-idr-ls-distribution] Gredler, H., Medved, J., | 8. Normative References | |||
Previdi, S., Farrel, A., and S.Ray, "North-Bound Distribution of | ||||
Link-State and TE Information using BGP", draft-ietf-idr-ls- | ||||
distribution-10(work in progress), January 2015. | ||||
[2] [I-D.ietf.idr-error-handling] Enke, C., John, S., Pradosh, M., | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Keyur,P., "Revised Error Handling for BGP UPDATE Messages", | Requirement Levels", BCP 14, RFC 2119, | |||
draft-ietf-idr-error-handling-19(work in progress), April 2015. | DOI 10.17487/RFC2119, March 1997, | |||
<http://www.rfc-editor.org/info/rfc2119>. | ||||
[3] [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | Border Gateway Protocol 4 (BGP-4)", RFC 4271, | |||
DOI 10.17487/RFC4271, January 2006, | ||||
<http://www.rfc-editor.org/info/rfc4271>. | ||||
[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, DOI 10.17487/RFC6325, July 2011, | |||
<http://www.rfc-editor.org/info/rfc6325>. | ||||
[5] [RFC7172] Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, | [RFC6952] Jethanandani, M., Patel, K., and L. Zheng, "Analysis of | |||
R., and D. Dutt, "Transparent Interconnection of Lots of Links | BGP, LDP, PCEP, and MSDP Issues According to the Keying | |||
(TRILL): Fine-Grained Labeling", RFC 7172, DOI 10.17487/RFC7172, | and Authentication for Routing Protocols (KARP) Design | |||
May 2014, <http://www.rfc-editor.org/info/rfc7172>. | Guide", RFC 6952, DOI 10.17487/RFC6952, May 2013, | |||
<http://www.rfc-editor.org/info/rfc6952>. | ||||
[6] [RFC7176] Eastlake, D., Senevirathne, T., Ghanwani, A., Dutt, | [RFC7153] Rosen, E. and Y. Rekhter, "IANA Registries for BGP | |||
D., Banerjee, A.," Transparent Interconnection of Lots of Links | Extended Communities", RFC 7153, DOI 10.17487/RFC7153, | |||
(TRILL) Use of IS-IS'', May 2014. | March 2014, <http://www.rfc-editor.org/info/rfc7153>. | |||
[7] [RFC7357] - Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., | [RFC7172] Eastlake 3rd, D., Zhang, M., Agarwal, P., Perlman, R., and | |||
and O. Stokes, "Transparent Interconnection of Lots of Links | D. Dutt, "Transparent Interconnection of Lots of Links | |||
(TRILL): End Station Address Distribution Information (ESADI) | (TRILL): Fine-Grained Labeling", RFC 7172, | |||
Protocol", RFC 7357, September 2014, <http://www.rfc- | DOI 10.17487/RFC7172, May 2014, | |||
editor.org/info/rfc7357>. | <http://www.rfc-editor.org/info/rfc7172>. | |||
7.2. Informative References | [RFC7176] Eastlake 3rd, D., Senevirathne, T., Ghanwani, A., Dutt, | |||
D., and A. Banerjee, "Transparent Interconnection of Lots | ||||
of Links (TRILL) Use of IS-IS", RFC 7176, | ||||
DOI 10.17487/RFC7176, May 2014, | ||||
<http://www.rfc-editor.org/info/rfc7176>. | ||||
8. Acknowledgments | [RFC7357] Zhai, H., Hu, F., Perlman, R., Eastlake 3rd, D., and O. | |||
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>. | ||||
Authors like to thank Andrew Qu, Jie Dong, Mingui Zhang, Qin Wu, | [RFC7606] Chen, E., Ed., Scudder, J., Ed., Mohapatra, P., and K. | |||
Shunwan Zhuang, Zitao Wang, Lili Wang for their valuable inputs. | Patel, "Revised Error Handling for BGP UPDATE Messages", | |||
RFC 7606, DOI 10.17487/RFC7606, August 2015, | ||||
<http://www.rfc-editor.org/info/rfc7606>. | ||||
Authors' Addresses | [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, | ||||
<http://www.rfc-editor.org/info/rfc7752>. | ||||
Weiguo Hao | Authors' Addresses | |||
Weiquo 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 Hares | |||
Hickory Hill Consulting | Huawei Technologies | |||
7453 Hickory Hill | 7453 Hickory | |||
Saline, MI 48176 USA | Saline , MI 48176 | |||
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 | Cisco Systems | |||
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, China | Nanjing 210012 | |||
China | ||||
Email: liyizhou@huawei.com | Email: liyizhou@huawei.com | |||
End of changes. 96 change blocks. | ||||
297 lines changed or deleted | 311 lines changed or added | |||
This html diff was produced by rfcdiff 1.44. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |