Inter-Domain Routing | P. Lapukhov |
Internet-Draft | |
Intended status: Standards Track | March 12, 2016 |
Expires: September 13, 2016 |
Use of BGP for dissemination of ILA mapping information
draft-lapukhov-bgp-ila-afi-00
Identifier-Locator Addressing [I-D.herbert-nvo3-ila] relies on splitting the 128-bit IPv6 address into identifier and locator parts to implement identifier mobility, and network virtualization. This document proposes a method for distributing the identifier to locator mapping information using Multiprotocol Extensions for BGP-4 [RFC4760].
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-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."
This Internet-Draft will expire on September 13, 2016.
Copyright (c) 2016 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.
Under the ILA proposal, the IPv6 address is split in 64-bit identifier (lower address bits) and locator (higher address bits) portions. The locator part is determined from a mapping table that maintains associations between the location-independent identifiers and topologically significant locators. The hosts that collectively implement and maintain such mappings are referred to as "ILA domain" in this document. This document proposes a new address family identifier (AFI) for the purpose of disseminating the locator-identifier mappings among the nodes participating in the ILA domain.
This document introduces a new AFI known as a "Identifier-Locator AFI" with the actual value to be assigned by IANA. The purpose of this AFI is disseminating the mapping information between identifiers and locators in ILA domain. This document defines the use of SAFI values of "1" (unicast) and "2" (multicast) only.
A BGP speaker that wishes to exchange ILA mapping information MUST use the Multiprotocol Extensions Capability Code, as defined in [RFC4760], to advertise the corresponding AFI/SAFI pair.
For the purpose of ILA mapping encoding, the 8-octet locator field SHALL be encoded in the "next-hop address" field. The "length of the next-hop address" MUST be set to "8" (64-bit). The identifiers bound to the locator SHALL be encoded within the NLRI portion of MP_REACH_NLRI attribute. The NLRI portion of MP_REACH_NLRI starts with the two-octet "Length of identifiers" field. The rest of the NLRI is a collection of 8-octet (64-bit) identifiers that are bound to the locator specified in the "next-hop address" field.
+---------------------------------------------------------+ | Address Family Identifier (2 octets) | +---------------------------------------------------------+ | Subsequent Address Family Identifier (1 octet) | +---------------------------------------------------------+ | Length of Next Hop Address (1 octet, set to "8") | +---------------------------------------------------------+ | Locator value (8 octets) | +---------------------------------------------------------+ | Reserved (1 octet), must be zero | +---------------------------------------------------------+ | Length of identifiers field (2 octets, multiple of 8) | +---------------------------------------------------------+ | Identifiers (variable, 8 octets each) | +---------------------------------------------------------+
Figure 1: MP_REACH_NLRI Layout
Withdrawal of ILA mapping information is performed via an MP_UNREACH_NLRI attribute advertisement organized as following:
+---------------------------------------------------------+ | Address Family Identifier (2 octets) | +---------------------------------------------------------+ | Subsequent Address Family Identifier (1 octet) | +---------------------------------------------------------+ | Length of witdrawn identifiers (2 octets) | +---------------------------------------------------------+ | Identifiers (variable, 8 octets each) | +---------------------------------------------------------+
Figure 2: MP_UNREACH_NLRI Layout
Only the locator part of ILA address is used for packet routing, and every node that hosts an identifier MUST have a unique routable /64 prefix within the scope of the ILA domain. The identifiers advertised under the ILA AFI are expected to be used by the data-plane implementation to perform match on a full IPv6 address and decide whether the locator portion of the address needs a re-write. It is up to the implementation to decide which full 128-bit IPv6 addresses need a rewrite, e.g. by matching on a Standard Identifier Representation (SIR) prefix as defined in [I-D.herbert-nvo3-ila].
The locator rewrite information comes from the next-hop "address" associated with the identifier. The next-hop field of MP_REACH_NLRI attribute MUST NOT be used for any routing resolutions/lookups by the BGP process itself. It should be used purely to create a rewrite rule in the data-plane forwarding table. The actual forwarding decision is then based on subsequent lookup in the forwarding table to find the next hop to send the packet to.
For multicast packets, the RPF check process SHALL be modified for use with ILA source addresses. Specifically, source ILA IPv6 addresses with the identifier portion matching the mapping table SHALL be mapped to proper locator, prior to performing the RPF check. The ILA source addresses need to be identified by some means specific to ILA implementation, e.g. by matching on configured SIR prefixes. The ILA addresses that do not match any mapping entry SHALL be considered as failing the RPF check.
For the purpose of this work, IANA would be asked to allocate values for the new AFI.
TBD
This document does not introduce any changes in terms of BGP security. Defining ILA security model is outside of scope of this document.
The author would like to thank Doug Porter for the initial idea suggestion and discussion of this proposal.
[RFC2119] | Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997. |
[RFC4271] | Rekhter, Y., Li, T. and S. Hares, "A Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI 10.17487/RFC4271, January 2006. |
[I-D.herbert-nvo3-ila] | Herbert, T., "Identifier-locator addressing for network virtualization", Internet-Draft draft-herbert-nvo3-ila-01, October 2015. |
[RFC4760] | Bates, T., Chandra, R., Katz, D. and Y. Rekhter, "Multiprotocol Extensions for BGP-4", RFC 4760, DOI 10.17487/RFC4760, January 2007. |