Internet DRAFT - draft-li-bess-4pe
draft-li-bess-4pe
BGP Enabled Services Z. Li
Internet-Draft China Mobile
Intended status: Standards Track March 9, 2017
Expires: September 10, 2017
Connecting IPv4 Islands over IPv6 MPLS Using IPv4 Provider Edge Routers
(4PE)
draft-li-bess-4pe-02
Abstract
This document explains how to interconnect IPv4 islands over a
Multiprotocol Label Switching (MPLS)-enabled IPv6-only core. This
approach relies on IPv4 Provider Edge routers (4PE), which are Dual
Stacks in order to connect to IPv4 islands and to the MPLS core. The
4PE routers exchange the IPv4 reachability information transparently
over the core using the Multiprotocol Border Gateway Protocol (MP-
BGP). MP-BGP is extended to do this. A new Subsequence Address
Family Identifier (SAFI) with corresponding new format Network Layer
Reachability Information (NLRI), is introduced. The BGP Next Hop
field is used to convey the IPv4 address of the 4PE router, a field
is added in Network Layer Reachability Information (NLRI) to convey
the IPv6 address of the 4PE router, so that dynamically established
IPv6-signaled MPLS Label Switched Paths (LSPs) can be used without
explicit tunnel configuration.
Requirements Language
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 [RFC2119].
Status of This Memo
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."
Li Expires September 10, 2017 [Page 1]
Internet-Draft 4PE March 2017
This Internet-Draft will expire on September 10, 2017.
Copyright Notice
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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 3
3. 4PE SAFI . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4. Exchange IPv4 reachability information among 4PE routers . . 6
5. Transport IPv4 packets among 4PE routers . . . . . . . . . . 7
6. IANA Requirements . . . . . . . . . . . . . . . . . . . . . . 8
7. Security Consideration . . . . . . . . . . . . . . . . . . . 8
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
8.1. Normative References . . . . . . . . . . . . . . . . . . 8
8.2. Informative References . . . . . . . . . . . . . . . . . 9
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction
After IPv6 [RFC2460] is widely deployed, IPv6-only networks and nodes
will become dominate. How to provide the connectivity for the
remaining IPv4-only islands through the IPv6-only MPLS network will
become a problem, as depicted in the following figure.
Li Expires September 10, 2017 [Page 2]
Internet-Draft 4PE March 2017
+--------------+
| IPv4-only |
| island A CE--4PE----------------+
| | | |
+--------------+ | | +----------------+
| IPv6-only | | |
| MPLS network 4PE--CE IPv4-only |
| | | island C |
+--------------+ | | +----------------+
| IPv4-only | | |
| island B CE--4PE----------------+
| |
+--------------+
IPv6 Provider Edge Routers (6PE), as specified in [RFC4798], are used
to connect IPv6 islands over IPv4 MPLS network. However, [RFC7439]
pointed out that there is no solution to address the above problem.
So, in this document, 4PE is proposed to meet this gap.
2. Protocol Overview
Each IPv4 island is connected to at least one Provider Edge router
that is located on the border of the IPv6-only MPLS network. We call
such a router a IPv4 Provider Edge router (4PE). The 4PE router MUST
be IPv4 and IPv6 dual stack. At least one IPv4 address MUST be
configured for the 4PE to connect the IPv4-only island. And at least
one IPv6 address on the IPv6-ony MPLS network side MUST be
configured. The configured IPv6 address needs to be routable in the
IPv6-only network, and there needs to be a label bound via an IPv6
label distribution protocol to this IPv6 route. The configured IPv4
address MUST be unique among the IPv4 islands.
As a result of this, every considered 4PE router knows which MPLS
label (we call it forwarding label) to use to send packets to any
other 4PE router. Note that [RFC5036] updated by [RFC7552] fulfills
these requirements.
We call the 4PE router receiving IPv4 packets from an IPv4 island an
ingress 4PE router (relative to these IPv4 packets). We call a 4PE
router forwarding IPv4 packets to an IPv4 island an egress 4PE router
(relative to these IPv4 packets).
Interconnecting IPv4 islands over an IPv6 MPLS network mainly
includes the following two steps:
1. Exchange IPv4 reachability information among 4PE routers with MP-
BGP [RFC4760]
Li Expires September 10, 2017 [Page 3]
Internet-Draft 4PE March 2017
The IPv4 routes MUST not be injected in the IPv6-only MPLS
network.
The 4PE routers MUST exchange the IPv4 routes over MP-BGP
sessions running over IPv6. To do so, a new Subsequence
Address Family Identifier (SAFI) with corresponding new format
Network Layer Reachability Information (NLRI), is introduced
in this document. We call this new SAFI 4PE SAFI, the detail
of which is illustrated in section 3. The MP-BGP Address
Family Identifier (AFI) used MUST be IPv4 (value 1). The MP-
BGP Network Address of Next Hop MUST be the 4PE IPv4 address
from which the 4PE receives the IPv4 routes of the IPv4
island. The IPv6 address of the 4PE, the IPv4 routes of the
IPv4 island, and the corresponding MPLS label for the IPv4
routes (we call it 4PE label) MUST be encoded in the NLRI.
The reason to allocate MPLS label for the IPv4 route is to
reduce the requirements for the IPv6-only MPLS network, as
explained in [RFC4798]. Here it is. While this approach
could theoretically operate in some situations using a single
level of labels, there are significant advantages in using a
second level of labels that are bound to IPv4 prefixes via MP-
BGP advertisements.
For instance, the use of a second level label allows
Penultimate Hop Popping (PHP) on the IPv6 Label Switch Router
(LSR) upstream of the egress 4PE router, without any IPv4
capabilities on the penultimate router. This is because it
still transmits MPLS packets even after the PHP (instead of
having to transmit IPv4 packets and encapsulate them
appropriately).
2. Transport IPv4 packets from the ingress 4PE router to the egress
4PE router over the IPv6-signaled LSPs
The ingress 4PE router MUST forward IPv4 data over the
IPv6-signaled LSP towards the egress 4PE router identified by
the IPv6 address advertised in the new introduced NLRI for the
corresponding IPv4 route.
3. 4PE SAFI
As depicted in the following figure, 4PE SAFI is proposed to carry
the IPv4 routes for the IPv4-only island, the MPLS label for the IPv4
routes, the IPv4 and IPv6 IP addresses of the 4PE router.
Li Expires September 10, 2017 [Page 4]
Internet-Draft 4PE March 2017
+---------------------------------------------------------+
| Address Family Identifier (2 octets) |
+---------------------------------------------------------+
| Subsequent Address Family Identifier (1 octet) |
+---------------------------------------------------------+
| Length of Next Hop Network Address (1 octet) |
+---------------------------------------------------------+
| Network Address of Next Hop (variable) |
+---------------------------------------------------------+
| Reserved (1 octet) |
+---------------------------------------------------------+
| Network Layer Reachability Information (variable) |
+---------------------------------------------------------+
The use and meaning of these fields are as follows:
Address Family Identifier (AFI):
This field MUST be 1, to indicate IPv4 routes are carried in
the NLRI. This is in accordance with [RFC4760]
Subsequent Address Family Identifier (SAFI):
This field is used to indicate the new introduced 4PE SAFI.
The value for this field is be assigned by IANA.
Length of Next Hop Network Address:
This field MUST be 4, to indicate an IPv4 address is encoded in
the "Network Address of Next Hop" field.
Network Address of Next Hop:
This field MUST be one of the 4PE IPv4 address from which the
4PE receives the IPv4 routes of the IPv4 island.
Reserved:
A 1 octet field that MUST be set to 0, and SHOULD be ignored
upon receipt.
Network Layer Reachability Information (NLRI):
The format and meaning of this field is specified in the
following.
Li Expires September 10, 2017 [Page 5]
Internet-Draft 4PE March 2017
+---------------------------+
| IPv6 Next Hop (16 octets) |
+---------------------------+
| Length (1 octet) |
+---------------------------+
| Label (3 octets) |
+---------------------------+
.............................
+---------------------------+
| Prefix (variable) |
+---------------------------+
The "IPv6 Next Hop" field MUST be the IPv6 address of the 4PE,
through which the corresponding 4PE can be reached in the
IPv6-only MPLS network.
The "Label" field MUST be the MPLS label allocated by the 4PE
for the IPv4 routes carried in the Prefix field. This label is
called 4PE label.
The "Prefix" field MUST be used to carry the IPv4 routes for
the IPv4-only island.
The "Length" field indicates the length in bits of the Prefix
plus the Label.
One or more triples of the form <length, label, prefix > can be
encoded in this NLRI. The use and meaning of the fields in
this NLRI, except IPv6 Next Hop, are in accordance with
[RFC3107].
4. Exchange IPv4 reachability information among 4PE routers
4PE routers MUST encode the IPv4 routes for the IPv4-only island in
the UPDATE message of [RFC4271]. MP_REACH_NLRI (Type Code 14) and
MP_UNREACH_NLRI (Type Code 15) defined in [RFC4760] MUST be used for
route advertisement and withdraw respectively. 4PE SAFI defined in
this document MUST be used in MP_REACH_NLRI or MP_UNREACH_NLRI to
complete the exchange of IPv4 routes.
For advertisement, the 4PE router sets the fields of MP_REACH_NLRI as
following, and then send the UPDATE message to its 4PE peers (or
Route Reflectors(RR) in the network where RRs are deployed) over the
MP-BGP session established on IPv6.
Li Expires September 10, 2017 [Page 6]
Internet-Draft 4PE March 2017
+--------------------------------------------------------------+
| Address Family Identifier (2 octets, value = 1) |
+--------------------------------------------------------------+
| Subsequent Address Family Identifier |
| (1 octet, value = 4PE SAFI ) |
+--------------------------------------------------------------+
| Length of Next Hop Network Address (1 octet, value = 4) |
+--------------------------------------------------------------+
| Network Address of Next Hop (variable, value = IPv4 address |
| of 4PE router, from which IPv4 routes are received) |
+--------------------------------------------------------------+
| Reserved (1 octet, value = 0) |
+--------------------------------------------------------------+
| IPv6 Next Hop (16 octets, value = IPv6 address of the 4PE |
| router, through which the 4PE can be reached in the |
| IPv6-only MPLS network) |
+--------------------------------------------------------------+
| Length (1 octet, |
| value = the length in bits of the Prefix plus the Label) |
+--------------------------------------------------------------+
| Label (3 octets, value = MPLS label allocated by the 4PE |
| router for the IPv4 routes carried in the Prefix field) |
+--------------------------------------------------------------+
| Prefix (variable, |
| value = the IPv4 route to be carried to 4PE MP-BGP peers) |
+--------------------------------------------------------------+
......... (if needed, more triples of <Length, Label, Prefix>
......... can be encoded here)
+--------------------------------------------------------------+
When receiving the UPDATE message, the 4PE MP-BGP peer treats the
message as per [RFC4760] and [RFC3107]. Since the 4PE router can
learn IPv4 routes from other 4PE routers through 4PE SAFI defined in
this document, and from the IPv4-only island directly connected to
it, 4PE routers MUST distinguish those two kinds of IPv4 routes.
Further, the 4PE MP-BGP peer MUST establish the relation between
Network Address of Next Hop and IPv6 Next Hop carried in the 4PE
SAFI. Through this relation, 4PE routers can get IPv6 Next Hop using
Network Address of Next Hop. The method or data structure used to do
this is out of scope of this document.
5. Transport IPv4 packets among 4PE routers
When ingress 4PE router receives IPv4 packet, it treats the IPv4
packet as normal IPv4 router does except for the following steps. If
the matching IPv4 route for this packet is learned from other 4PE
routers through the 4PE SAFI defined in this document, the 4PE router
has further to get the IPv6 Next Hop using the IPv4 next hop of the
Li Expires September 10, 2017 [Page 7]
Internet-Draft 4PE March 2017
matching IPv4 route. Then, ingress 4PE router uses the IPv6 Next Hop
to lookup in its IPv6 routing table to get the IPv6-signaled LSP to
reach the egress 4PE router. Next, ingress 4PE router encapsulates
the received IPv4 packet using two labels as shown in the figure
below. Finally, ingress 4PE router forwards the encapsulated packet
to egress 4PE router through the IPv6-signaled LSP.
+------------------------+
| Forwarding label |
+------------------------+
| 4PE label |
+------------------------+
| IPv4 packet |
+------------------------+
When the packet reaches egress 4PE router, only 4PE label is left
since the forwarding label is popped up by the penultimate hop toward
egress 4PE router. Egress 4PE router pops up the 4PE label, looks up
in the IPv4 routing table using the destination address of the IPv4
packet, and then forwards the IPv4 packets to the IPv4-only island.
6. IANA Requirements
IANA is requested to assign a new SAFI for the 4PE SAFI from range
1-63, the registy of Subsequent Address Family Identifiers (SAFI)
Parameters. 4PE routers use this SAFI to transport IPv4 routes, the
corresponding MPLS label, IPv4 and IPv6 next hop addresses among 4PE
routers.
7. Security Consideration
This document raises no new security issues.
8. References
8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", RFC 2460, DOI 10.17487/RFC2460,
December 1998, <http://www.rfc-editor.org/info/rfc2460>.
Li Expires September 10, 2017 [Page 8]
Internet-Draft 4PE March 2017
[RFC3107] Rekhter, Y. and E. Rosen, "Carrying Label Information in
BGP-4", RFC 3107, DOI 10.17487/RFC3107, May 2001,
<http://www.rfc-editor.org/info/rfc3107>.
[RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
Border Gateway Protocol 4 (BGP-4)", RFC 4271,
DOI 10.17487/RFC4271, January 2006,
<http://www.rfc-editor.org/info/rfc4271>.
[RFC4760] Bates, T., Chandra, R., Katz, D., and Y. Rekhter,
"Multiprotocol Extensions for BGP-4", RFC 4760,
DOI 10.17487/RFC4760, January 2007,
<http://www.rfc-editor.org/info/rfc4760>.
8.2. Informative References
[RFC4798] De Clercq, J., Ooms, D., Prevost, S., and F. Le Faucheur,
"Connecting IPv6 Islands over IPv4 MPLS Using IPv6
Provider Edge Routers (6PE)", RFC 4798,
DOI 10.17487/RFC4798, February 2007,
<http://www.rfc-editor.org/info/rfc4798>.
[RFC5036] Andersson, L., Ed., Minei, I., Ed., and B. Thomas, Ed.,
"LDP Specification", RFC 5036, DOI 10.17487/RFC5036,
October 2007, <http://www.rfc-editor.org/info/rfc5036>.
[RFC7439] George, W., Ed. and C. Pignataro, Ed., "Gap Analysis for
Operating IPv6-Only MPLS Networks", RFC 7439,
DOI 10.17487/RFC7439, January 2015,
<http://www.rfc-editor.org/info/rfc7439>.
[RFC7552] Asati, R., Pignataro, C., Raza, K., Manral, V., and R.
Papneja, "Updates to LDP for IPv6", RFC 7552,
DOI 10.17487/RFC7552, June 2015,
<http://www.rfc-editor.org/info/rfc7552>.
Author's Address
Zhenqiang Li
China Mobile
No.32 Xuanwumenxi Ave., Xicheng District
Beijing 100032
P.R. China
Email: li_zhenqiang@hotmail.com
Li Expires September 10, 2017 [Page 9]