IPv6 Operations (v6ops) | J. Palet Martinez |
Internet-Draft | The IPv6 Company |
Intended status: Informational | H. M.-H. Liu |
Expires: February 17, 2019 | D-Link Systems, Inc. |
M. Kawashima | |
NEC Platforms, Ltd. | |
August 16, 2018 |
Requirements for IPv6 Customer Edge Routers to Support IPv4 Connectivity as-a-Service
draft-ietf-v6ops-transition-ipv4aas-08
This document specifies the IPv4 service continuity requirements for an IPv6 Customer Edge (CE) router, either provided by the service provider or thru the retail market.
Specifically, this document extends the "Basic Requirements for IPv6 Customer Edge Routers" in order to allow the provisioning of IPv6 transition services for the support of "IPv4 as-a-Service" (IPv4aaS) by means of new transition mechanisms. The document only covers transition technologies for delivering IPv4 in IPv6-only access networks, commonly called "IPv4 as-a-Service" (IPv4aaS), as required in a world where IPv4 addresses are no longer available, so hosts in the customer LANs with IPv4-only or IPv6-only applications or devices, requiring to communicate with IPv4-only services at the Internet, are still able to do so.
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 https://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 February 17, 2019.
Copyright (c) 2018 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 (https://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.
This document defines IPv4 service continuity features over an IPv6-only network, for a residential or small-office router, referred to as an "IPv6 Transition CE Router", in order to establish an industry baseline for transition features to be implemented on such a router.
These routers rely upon "Basic Requirements for IPv6 Customer Edge Routers" ([RFC7084]), so the scope of this document is to ensure the IPv4 "service continuity" support, in the LAN side and the access to IPv4-only Internet services from an IPv6-only access WAN even from IPv6-only applications or devices in the LAN side.
This document covers a set of IP transition techniques required when ISPs have, or want to have, an IPv6-only access network. This is a common situation in a world where IPv4 addresses are no longer available, so the service providers need to provision IPv6-only WAN access. At the same time, they need to ensure that both IPv4-only and IPv6-only devices or applications in the customer networks, can still reach IPv4-only devices and applications in the Internet.
This document specifies the IPv4 service continuity mechanisms to be supported by an IPv6 Transition CE Router, and relevant provisioning or configuration information differences from [RFC7084].
This document is not a recommendation for service providers to use any specific transition mechanism.
Automatic provisioning of more complex topology than a single router with multiple LAN interfaces may be handled by means of HNCP ([RFC7788]), which is out of the scope of this document.
Service providers who specify feature sets for IPv6 Transition CE Router MAY specify a different set of features than those included in this document. Since it is impossible to know prior to sale which transition mechanism a device will need over the lifetime of the device, IPv6 Transition CE Router intended for the retail market MUST support all of them.
A complete description of "Usage Scenarios" and "End-User Network Architecture" is provided in Annexes A and B, respectively.
The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are not used as described in RFC 2119. This document uses these keywords not strictly for the purpose of interoperability, but rather for the purpose of establishing industry-common baseline functionality. As such, the document points to several other specifications to provide additional guidance to implementers regarding any protocol implementation required to produce a successful IPv6 Transition CE Router that interoperates successfully with a particular subset of currently deploying and planned common IPv6-only access networks.
Additionally, the keyword "DEFAULT" is to be interpreted in this document as pertaining to a configuration as applied by a vendor, prior to the administrator changing it for its initial activation.
This document uses the same terms as in [RFC7084], with minor clarifications.
"IPv4aaS" stands for "IPv4 as-a-Service", meaning transition technologies for delivering IPv4 in IPv6-only connectivity.
The term "IPv6 transition Customer Edge Router with IPv4aaS" (shortened as "IPv6 Transition CE Router") is defined as an "IPv6 Customer Edge Router" that provides features for the delivery of IPv4 services over an IPv6-only WAN network including IPv6-IPv4 communications.
The "WAN Interface" term used across this document, means that can also support link technologies based in Internet-layer (or higher-layers) "tunnels", such as IPv4-in-IPv6 tunnels.
The IPv6 Transition CE Router MUST comply with [RFC7084] (Basic Requirements for IPv6 Customer Edge Routers) and this document add new requirements, as described in the following sub-sections.
A new LAN requirement is added, which in fact is common in regular IPv6 Transition CE Router, and it is required by most of the transition mechanisms:
The main target of this document is the support of IPv6-only WAN access. To enable legacy IPv4 functionality, this document also includes the support of IPv4-only devices and applications in the customers LANs, as well as IPv4-only services on the Internet. Thus, both IPv4-only and the IPv6-only devices in the customer-side LANs of the IPv6 Transition CE Router are able to reach the IPv4-only services.
This document takes no position on simultaneous operation of one or several transition mechanisms and/or native IPv4.
In order to seamlessly provide the IPv4 Service Continuity in Customer LANs, allowing an automated IPv6 transition mechanism provisioning, general transition requirements are defined.
General transition requirements:
The following sections describe the requirements for supporting each one of the transition mechanisms. An IPv6 Transition CE Router intended for the retail market MUST support all of them.
464XLAT [RFC6877] is a technique to provide IPv4 service over an IPv6-only access network without encapsulation. This architecture assumes a NAT64 [RFC6146] (Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers) function deployed at the service provider or a third-party network.
The IPv6 Transition CE Router SHOULD support CLAT functionality. If 464XLAT is supported, it MUST be implemented according to [RFC6877]. The following IPv6 Transition CE Router requirements also apply:
464XLAT requirements:
The NAT64 prefix could be discovered by means of [RFC7050] only in the case the service provider uses DNS64 ([RFC6147]). If DNS64 ([RFC6147]) is not used, or not trusted, as the DNS configuration at the CE (or hosts behind the CE) may be modified by the customer, then the service provider may opt to configure the NAT64 prefix either by means of [RFC7225] or [RFC8115], which also can be used if the service provider uses DNS64 ([RFC6147]).
Dual-Stack Lite [RFC6333] enables both continued support for IPv4 services. Dual-Stack Lite enables a broadband service provider to share IPv4 addresses among customers by combining two well-known technologies: IP in IP (IPv4-in-IPv6) and Network Address Translation (NAT). It is expected that DS-Lite traffic is forwarded over the IPv6 Transition CE Router's native IPv6 WAN interface, and not encapsulated in another tunnel.
The IPv6 Transition CE Router SHOULD implement DS-Lite B4 functionality [RFC6333]. If DS-Lite is supported, it MUST be implemented according to [RFC6333]. The following IPv6 Transition CE Router requirements also apply:
DS-Lite requirements:
lw4o6 [RFC7596] specifies an extension to DS-Lite, which moves the NAPT function from the DS-Lite tunnel concentrator to the tunnel client located in the IPv6 Transition CE Router, removing the requirement for a CGN function in the tunnel concentrator and reducing the amount of centralized state.
The IPv6 Transition CE Router SHOULD implement lwB4 functionality [RFC7596]. If DS-Lite is implemented, lw4o6 SHOULD be supported as well. If lw4o6 is supported, it MUST be implemented according to [RFC7596]. The following IPv6 Transition CE Router requirements also apply:
lw4o6 requirements:
MAP-E [RFC7597] is a mechanism for transporting IPv4 packets across an IPv6 network using IP encapsulation, including an algorithmic mechanism for mapping between IPv6 addresses and IPv4 addresses as well as transport-layer ports.
The IPv6 Transition CE Router SHOULD support MAP-E CE functionality [RFC7597]. If MAP-E is supported, it MUST be implemented according to [RFC7597]. The following IPv6 Transition CE Router requirements also apply:
MAP-E requirements:
MAP-T [RFC7599] is a mechanism similar to MAP-E, differing from it in that MAP-T uses IPv4-IPv6 translation, rather than encapsulation, as the form of IPv6 domain transport.
The IPv6 Transition CE Router SHOULD support MAP-T CE functionality [RFC7599]. If MAP-T is supported, it MUST be implemented according to [RFC7599]. The following IPv6 Transition CE Router requirements also apply:
MAP-T requirements:
Actual deployments support IPv4 multicast for services such as IPTV. In the transition phase it is expected that multicast services will still be provided using IPv4 to the customer LANs.
If the IPv6 Transition CE Router supports delivery of IPv4 multicast services, then it MUST support [RFC8114] (Delivery of IPv4 Multicast Services to IPv4 Clients over an IPv6 Multicast Network) and [RFC8115] (DHCPv6 Option for IPv4-Embedded Multicast and Unicast IPv6 Prefixes).
If the UPnP WANIPConnection:2 service [UPnP-WANIPC] is enabled on a CE router, but cannot be associated with an IPv4 interface established by an IPv4aaS mechanism or cannot determine which ports are available (through PCP or access to a configured port set, if the IPv4aaS mechanism limits the available ports), an AddPortMapping() or AddAnyPortMapping() action MUST be rejected with error code 729 "ConflictWithOtherMechanisms".
An AddPortMapping() request for a port that is not available MUST result in "ConflictInMappingEntry".
An AddAnyPortMapping() request for a port that is not available SHOULD result in a successful mapping with an alternative "NewReservedPort" value from within the configured port set range, or as assigned by PCP as per [RFC6970], Section 5.6.1.
Note that IGD:1 and its WANIPConnection:1 service have been deprecated by OCF.
This document no longer considers the need to support 6rd ([RFC5969]) and includes slightly different requirements for DS-LITE [RFC6333].
One of the apparent main issues for vendors to include new functionalities, such as support for new transition mechanisms, is the lack of space in the flash (or equivalent) memory. However, it has been confirmed from existing open source implementations (OpenWRT/LEDE, Linux, others), that adding the support for the new transitions mechanisms, requires around 10-12 Kbytes (because most of the code base is shared among several transition mechanisms already supported by [RFC7084]), as a single data plane is common to all them, which typically means about 0,15% of the existing code size in popular CEs already in the market.
It is also clear that the new requirements don't have extra cost in terms of RAM memory, neither other hardware requirements such as more powerful CPUs.
The other issue seems to be the cost of developing the code for those new functionalities. However, at the time of writing this document, it has been confirmed that there are several open source versions of the required code for supporting the new transition mechanisms, and even several vendors already have implementations and provide it to ISPs, so the development cost is negligent, and only integration and testing cost may become a minor issue.
The IPv6 Transition CE Router must comply with the Security Considerations as stated in [RFC7084], as well as those stated by each transition mechanism implemented by the IPv6 Transition CE Router.
IANA is requested, by means of this document, to update the "Option Codes permitted in the S46 Priority Option" registry available at https://www.iana.org/assignments/dhcpv6-parameters/dhcpv6-parameters.xhtml#option-codes-s46-priority-option, with the following entry.
+-------------+--------------------+-----------+ | Option Code | S46 Mechanism | Reference | +-------------+--------------------+-----------+ | 113 | 464XLAT | [thisdoc] | +-------------+--------------------+-----------+
Table 1: DHCPv6 Option Code for 464XLAT
Thanks to Mikael Abrahamsson, Fred Baker, Mohamed Boucadair, Brian Carpenter, Ian Farrer, Lee Howard, Richard Patterson, Barbara Stark, Ole Troan, James Woodyatt, Lorenzo Colitti and Alejandro D'Egidio, for their review and comments in this and/or previous versions of this document.
The situation previously described, where there is ongoing IPv6 deployment and lack of IPv4 addresses, is not happening at the same pace at every country, and even within every country, every ISP. For different technical, financial, commercial/marketing and socio-economic reasons, each network is transitioning at their own pace, and nobody has a magic crystal ball, to make a guess.
Different studies (for example [IPv6Survey]) also show that this is a changing situation, because in a single country, it may be that not all operators provide IPv6 support, and consumers may switch ISPs and use the same IPv6 Transition CE Router with an ISP that provides IPv4-only and an ISP that provides IPv6 plus IPv4aaS.
So, it is clear that, to cover all those evolving situations, an IPv6 Transition CE Router is required, at least from the perspective of the transition support, which can accommodate those changes.
Moreover, because some services will remain IPv4-only for an undetermined time, and some service providers will remain IPv4-only for an undetermined period of time, IPv4 will be needed for an undetermined period of time. There will be a need for CEs with support "IPv4 as-a-Service" for an undetermined period of time.
This document is consequently, based on those premises, in order to ensure the continued transition from networks that today may provide access with dual-stack or IPv6-in-IPv4, as described in [RFC7084], and as an "extension" to it, evolving to an IPv6-only access with IPv4-as-a-Service.
Considering that situation and different possible usage cases, the IPv6 Transition CE Router described in this document is expected to be used typically, in the following scenarios:
The above list is not intended to be comprehensive of all the possible usage scenarios, just an overall view. In fact, combinations of the above usages are also possible, as well as situations where the same CE is used at different times in different scenarios or even different services providers that may use a different transition mechanism.
The mechanisms for allowing inbound connections are "naturally" available in any IPv6 router, as when using GUA, unless they are blocked by firewall rules, which may require some manual configuration by means of a GUI, CLI and/or API.
However, in the case of IPv4aaS, because the usage of private addresses and NAT and even depending on the specific transition mechanism, it typically requires some degree of more complex manual configuration such as setting up a DMZ, virtual servers, or port/protocol forwarding. In general, IPv4 CE Routers already provide GUI and/or CLI to manually configure them, or the possibility to setup the CE in bridge mode, so another CE behind it, takes care of that. It is out of the scope of this document the definition of any requirements for that.
The main difference for a CE Router to support the above indicated scenarios and number of users, is related to the packet processing capabilities, performance, even other details such as the number of WAN/LAN interfaces, their maximum speed, memory for keeping tables or tracking connections, etc. It is out of the scope of this document to classify them.
The actual bandwidth capabilities of access technologies such as FTTH, cable and even 3GPP/LTE, allows the support of such scenarios, and indeed, is a very common situation that access networks and CE Router provided by the service provider are the same for SMEs and residential users.
There is also no difference in terms of who actually provides the CE Router. In most of the cases is the service provider, and in fact is responsible, typically, of provisioning/managing at least the WAN side. However, commonly the user has access to configure the LAN interfaces, firewall, DMZ, and many other features. In fact, in many cases, the user must supply or may replace the CE Router; this makes even more relevant that all the CE Routers, support the same requirements defined in this document.
The IPv6 Transition CE Router described in this document is not intended for usage in other scenarios such as large Enterprises, Data Centers, Content Providers, etc. So, even if the documented requirements meet their needs, they may have additional requirements, which are out of the scope of this document.
According to the descriptions in the preceding sections, an end-user network will likely support both IPv4 and IPv6. It is not expected that an end user will change their existing network topology with the introduction of IPv6. There are some differences in how IPv6 works and is provisioned; these differences have implications for the network architecture.
A typical IPv4 end-user network consists of a "plug and play" router with NAT functionality and a single link upstream, connected to the service provider network.
From the perspective of an "IPv4 user" behind an IPv6 transition Customer Edge Router with IPv4aaS, this doesn't change.
However, while a typical IPv4 NAT deployment by default blocks all incoming connections and may allow opening of ports using a Universal Plug and Play Internet Gateway Device (UPnP IGD) [UPnP-IGD] or some other firewall control protocol, in the case of an IPv6-only access and IPv4aaS, that may not be feasible depending on specific transition mechanism details. PCP (Port Control Protocol, [RFC6887]) may be an alternative solution.
Another consequence of using IPv4 private address space in the end-user network is that it provides stable addressing; that is, it never changes even when you change service providers, and the addresses are always there even when the WAN interface is down or the customer edge router has not yet been provisioned. In the case of an IPv6-only access, there is no change on that if the transition mechanism keeps running the NAT interface towards the LAN side.
More advanced routers support dynamic routing (which learns routes from other routers), and advanced end-users can build arbitrary, complex networks using manual configuration of address prefixes combined with a dynamic routing protocol. Once again, this is true for both, IPv4 and IPv6.
In general, the end-user network architecture for IPv6 should provide equivalent or better capabilities and functionality than the current IPv4 architecture.
The end-user network is a stub network, in the sense that is not providing transit to other external networks. However, HNCP ([RFC7788]) allows support for automatic provisioning of downstream routers. Figure 1 illustrates the model topology for the end-user network.
+---------------+ \ | Service | \ | Provider | | Service | Router | | Provider +-------+-------+ | Network | / | Customer / | Internet Connection / | +------+--------+ \ | IPv6 | \ | Customer Edge | \ | Router | / +---+-------+---+ / Network A | | Network B | ---+----------------+-+- --+---+-------------+-- | | | | | \ +---+------+ | +----+-----+ +-----+----+ \ |IPv6 Host | | | IPv4 Host| |IPv4/IPv6 | / | | | | | | Host | / +----------+ | +----------+ +----------+ / | | +------+--------+ | End-User | IPv6 | | Network(s) | Router | \ +------+--------+ \ Network C | \ ---+-------------+--+--- | | | | +---+------+ +----+-----+ | |IPv6 Host | |IPv6 Host | / | | | | / +----------+ +----------+ /
Figure 1: An Example of a Typical End-User Network
This architecture describes the:
The IPv6 Transition CE Router may be manually configured in an arbitrary topology with a dynamic routing protocol or using HNCP ([RFC7788]). Automatic provisioning and configuration is described for a single IPv6 Transition CE Router only.
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
Section to be removed for WGLC. Significant updates are:
[IPv6Survey] | Palet Martinez, J., "IPv6 Deployment Survey", January 2018. |
[RFC7788] | Stenberg, M., Barth, S. and P. Pfister, "Home Networking Control Protocol", RFC 7788, DOI 10.17487/RFC7788, April 2016. |
[UPnP-IGD] | UPnP Forum, "InternetGatewayDevice:2 Device Template Version 1.01", December 2010. |
[UPnP-WANIPC] | UPnP Forum, "WANIPConnection:2 Service", December 2010. |