draft-ietf-softwire-map-radius-10.txt   draft-ietf-softwire-map-radius-11.txt 
Softwire S. Jiang, Ed. Softwire S. Jiang, Ed.
Internet-Draft Huawei Technologies Co., Ltd Internet-Draft Huawei Technologies Co., Ltd
Intended status: Standards Track Y. Fu, Ed. Intended status: Standards Track Y. Fu, Ed.
Expires: September 9, 2017 CNNIC Expires: October 2, 2017 CNNIC
B. Liu B. Liu
Huawei Technologies Co., Ltd Huawei Technologies Co., Ltd
P. Deacon P. Deacon
IEA Software, Inc. IEA Software, Inc.
C. Xie C. Xie
China Telecom China Telecom
T. Li T. Li
Tsinghua University Tsinghua University
March 8, 2017 March 31, 2017
RADIUS Attribute for Softwire Address plus Port based Mechanisms RADIUS Attribute for Softwire Address plus Port based Mechanisms
draft-ietf-softwire-map-radius-10 draft-ietf-softwire-map-radius-11
Abstract Abstract
IPv4-over-IPv6 transition mechanisms provide both IPv4 and IPv6 IPv4-over-IPv6 transition mechanisms provide both IPv4 and IPv6
connectivity services simultaneously during the IPv4/IPv6 co-existing connectivity services simultaneously during the IPv4/IPv6 co-existing
period. The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) period. The Dynamic Host Configuration Protocol for IPv6 (DHCPv6)
options have been defined to configure Customer Edge (CE) in MAP-E, options have been defined to configure Customer Edge (CE) in MAP-E,
MAP-T, and Lightweight 4over6. However, in many networks, the MAP-T, and Lightweight 4over6. However, in many networks, the
configuration information may be stored in the Authentication configuration information may be stored in an Authentication
Authorization and Accounting (AAA) servers, while user configuration Authorization and Accounting (AAA) server, while user configuration
is mainly provided by the Broadband Network Gateway (BNG) through the information is mainly provided by the Broadband Network Gateway (BNG)
DHCPv6 protocol. This document defines a Remote Authentication Dial through the DHCPv6 protocol. This document defines two new Remote
In User Service (RADIUS) attribute that carries CE configuration Authentication Dial In User Service (RADIUS) attributes that carry CE
information from the AAA server to the BNG. configuration information from an AAA server to BNG.
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). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 9, 2017. This Internet-Draft will expire on October 2, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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
skipping to change at page 2, line 28 skipping to change at page 2, line 28
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Configuration process with RADIUS . . . . . . . . . . . . . . 3 3. Configuration process with RADIUS . . . . . . . . . . . . . . 3
4. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 6 4. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.1. Softwire46-Configuration Attribute . . . . . . . . . . . 6 4.1. Softwire46-Configuration Attribute . . . . . . . . . . . 6
4.2. S46 Container Options . . . . . . . . . . . . . . . . . . 7 4.2. S46 Container Options . . . . . . . . . . . . . . . . . . 7
4.3. Sub Options for S46 Container Option . . . . . . . . . . 7 4.3. Sub Options for S46 Container Option . . . . . . . . . . 8
4.3.1. S46-Rule Sub Option . . . . . . . . . . . . . . . . . 7 4.3.1. S46-Rule Sub Option . . . . . . . . . . . . . . . . . 8
4.3.2. S46-BR Sub Option . . . . . . . . . . . . . . . . . . 8 4.3.2. S46-BR Sub Option . . . . . . . . . . . . . . . . . . 9
4.3.3. S46-DMR Sub Option . . . . . . . . . . . . . . . . . 9 4.3.3. S46-DMR Sub Option . . . . . . . . . . . . . . . . . 10
4.3.4. S46-V4V6Bind Sub Option . . . . . . . . . . . . . . . 9 4.3.4. S46-V4V6Bind Sub Option . . . . . . . . . . . . . . . 10
4.3.5. S46-PORTPARAMS Sub Option . . . . . . . . . . . . . . 10 4.3.5. S46-PORTPARAMS Sub Option . . . . . . . . . . . . . . 11
4.4. Sub Options for S46-RULE Sub Option . . . . . . . . . . . 11 4.4. Sub Options for S46-Rule Sub Option . . . . . . . . . . . 12
4.4.1. Rule-IPv6-Prefix Sub Option . . . . . . . . . . . . . 11 4.4.1. Rule-IPv6-Prefix Sub Option . . . . . . . . . . . . . 12
4.4.2. Rule-IPv4-Prefix Sub Option . . . . . . . . . . . . . 12 4.4.2. Rule-IPv4-Prefix Sub Option . . . . . . . . . . . . . 13
4.4.3. EA Length Sub Option . . . . . . . . . . . . . . . . 13 4.4.3. EA Length Sub Option . . . . . . . . . . . . . . . . 14
4.5. Softwire46 Sub Options Encapsulation . . . . . . . . . . 13 4.5. Softwire46 Sub Options Encapsulation . . . . . . . . . . 14
4.6. Softwire46-Priority Attribute . . . . . . . . . . . . . . 13 4.6. Softwire46-Priority Attribute . . . . . . . . . . . . . . 14
4.7. Table of attributes . . . . . . . . . . . . . . . . . . . 14 4.7. Table of attributes . . . . . . . . . . . . . . . . . . . 15
5. Diameter Considerations . . . . . . . . . . . . . . . . . . . 15 5. Diameter Considerations . . . . . . . . . . . . . . . . . . . 16
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16
7. Security Considerations . . . . . . . . . . . . . . . . . . . 15 6.1. S46 Mechanisms and Their Identifying Option Codes . . . . 16
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 7. Security Considerations . . . . . . . . . . . . . . . . . . . 17
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17
9.1. Normative References . . . . . . . . . . . . . . . . . . 16 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 17
9.2. Informative References . . . . . . . . . . . . . . . . . 17 9.1. Normative References . . . . . . . . . . . . . . . . . . 17
Additional Authors . . . . . . . . . . . . . . . . . . . . . . . 18 9.2. Informative References . . . . . . . . . . . . . . . . . 18
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 Additional Authors . . . . . . . . . . . . . . . . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21
1. Introduction 1. Introduction
Recently providers have started to deploy IPv6 and consider how to Recently providers have started to deploy IPv6 and consider how to
transit to IPv6. Many transition mechanisms based on the Address transit to IPv6. Many transition mechanisms based on the Address
plus Port (A+P) [RFC6346] have been proposed for running IPv4 over plus Port (A+P) [RFC6346] have been proposed for running IPv4 over
IPv6-only infrastructure, including MAP-E, MAP-T, and Lightweight IPv6-only infrastructure, including MAP-E, MAP-T, and Lightweight
4over6. Mapping of Address and Port with Encapsulation(MAP- 4over6. Mapping of Address and Port with Encapsulation(MAP-
E)[RFC7597], Mapping of Address and Port with using Translation(MAP- E)[RFC7597], Mapping of Address and Port using Translation(MAP-
T)[RFC7599] are stateless mechanisms for running IPv4 over IPv6-only T)[RFC7599] are stateless mechanisms for running IPv4 over IPv6-only
infrastructure. Lightweight 4over6[RFC7596] is a hub-and-spoke IPv4- infrastructure. Lightweight 4over6[RFC7596] is a hub-and-spoke IPv4-
over-IPv6 tunneling mechanism, with complete independence of IPv4 and over-IPv6 tunneling mechanism, with complete independence of IPv4 and
IPv6 addressing. They provide both IPv4 and IPv6 connectivity IPv6 addressing. They provide both IPv4 and IPv6 connectivity
services simultaneously during the IPv4/IPv6 co-existing period. services simultaneously during the IPv4/IPv6 co-existing period.
MAP-E, MAP-T and Lightweight 4over6 have adopted Dynamic Host MAP-E, MAP-T and Lightweight 4over6 have adopted Dynamic Host
Configuration Protocol for IPv6 (DHCPv6) [RFC3315] as auto- Configuration Protocol for IPv6 (DHCPv6) [RFC3315] as auto-
configuring protocol. The Customer Edge (CE) uses DHCPv6 options to configuring protocol. The Customer Edge (CE) uses DHCPv6 options to
discover the Border Relay (BR) and get Softwire46 (S46) discover the Border Relay (BR) and get Softwire46 (S46)
configurations. configurations.
In many networks, user configuration information may be stored in the In many networks, user configuration information may be stored in an
Authentication, Authorization, and Accounting (AAA) servers. Current Authentication, Authorization, and Accounting (AAA) server.
the AAA servers communicate using the Remote Authentication Dial In Currently the AAA servers communicate using the Remote Authentication
User Service (RADIUS) [RFC2865] protocol. In a fixed line broadband Dial In User Service (RADIUS) [RFC2865] protocol. In a fixed line
network, the Broadband Network Gateways (BNGs) act as the access broadband network, a Broadband Network Gateway (BNG) acts as the
gateway of users. The BNGs are assumed to embed a DHCPv6 server access gateway of users. The BNG is assumed to embed a DHCPv6 server
function that allows them to locally handle any DHCPv6 requests function that allows it to locally handle any DHCPv6 requests
initiated by hosts. initiated by hosts.
Since the S46 configuration information is stored in the AAA servers Since the S46 configuration information is stored in an AAA servers
and user configuration is mainly transmitted through DHCPv6 protocol and user configuration information is mainly transmitted through
between the BNGs and hosts/CEs, new RADIUS attributes are needed to DHCPv6 protocol between the BNGs and hosts/CEs, new RADIUS attributes
propagate the information from the AAA servers to the BNGs. The are needed to propagate the information from the AAA servers to BNGs.
RADIUS attributes designed in this document are especially for the The RADIUS attributes designed in this document are especially for
MAP-E[RFC7597], MAP-T[RFC7599] and Lightweight 4over6[RFC7596], the MAP-E[RFC7597], MAP-T[RFC7599] and Lightweight 4over6[RFC7596],
providing enough information to form the correspondent DHCPv6 providing enough information to form the correspondent DHCPv6
configuration options[RFC7598]. configuration options[RFC7598].
2. Terminology 2. Terminology
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].
3. Configuration process with RADIUS 3. Configuration process with RADIUS
The below Figure 1 illustrates how the RADIUS protocol and DHCPv6 co- The Figure 1 below illustrates how the RADIUS protocol and DHCPv6 co-
operate to provide CE with MAP configuration information. The BNG operate to provide CE with MAP configuration information. The BNG
acts as a RADIUS client and as a DHCPv6 server. acts as a RADIUS client and DHCPv6 server.
CE BNG AAA Server CE BNG AAA Server
| | | | | |
|-------1.DHCPv6 Solicit------->| | |-------1.DHCPv6 Solicit------->| |
| (ORO w/container option code) | | | (ORO w/container option code) | |
| |-------2.Access-Request------->| | |-------2.Access-Request------->|
| | (S46-Configuration attriubte) | | | (S46-Configuration attribute) |
| | | | | |
| |<------3.Access-Accept---------| | |<------3.Access-Accept---------|
|<---4.DHCPv6 Advertisement-----| (S46-Configuration attriubte) | |<---4.DHCPv6 Advertisement-----| (S46-Configuration attribute) |
| (container option) | | | (container option) | |
|-------5.DHCPv6 Request------>| | |-------5.DHCPv6 Request------>| |
| (container Option) | | | (container Option) | |
|<------6.DHCPv6 Reply----------| | |<------6.DHCPv6 Reply----------| |
| (container option) | | | (container option) | |
| | | | | |
DHCPv6 RADIUS DHCPv6 RADIUS
Figure 1: the cooperation between DHCPv6 and RADIUS combining with Figure 1: the cooperation between DHCPv6 and RADIUS combining with
RADIUS authentication RADIUS authentication
1. First, the CE MAY initiate a DHCPv6 Solicit message that includes 1. First, the CE MAY initiate a DHCPv6 Solicit message that includes
an Option Request option(6) [RFC3315] with the S46 Container option an Option Request option(6) [RFC3315] with the S46 Container option
codes as defined in[RFC7598]. OPTION_S46_CONT_MAPE should be codes as defined in[RFC7598]. As described in [RFC7598],
included for MAP-E[RFC7597], OPTION_S46_CONT_MAPT for MAP-T[RFC7599], OPTION_S46_CONT_MAPE should be included for MAP-E[RFC7597],
and OPTION_S46_CONT_LW for Lightweight 4over6[RFC7596]. Note OPTION_S46_CONT_MAPT for MAP-T [RFC7599], and OPTION_S46_CONT_LW for
however, that the ORO (Option Request option) with the S46 Container Lightweight 4over6 [RFC7596]. Note however, that the ORO (Option
option code could be optional if the network was planned as Request option) with the S46 Container option code could be optional
S46-enabled as default. if the network was planned as being S46-enabled as default.
2. When the BNG receives the SOLICIT, it should initiate the radius 2. When the BNG receives the Solicit message, it should initiate a
Access-Request message, in which the User-Name attribute (1) should radius Access-Request message, in which an User-Name attribute (1)
be filled by the CE MAC address or interface-id or both, to the should be filled by a CE MAC address or interface-id or both, to the
RADIUS server and the User-password attribute (2) should be filled by RADIUS server and a User-password attribute (2) should be filled by
the shared password that has been preconfigured on the DHCPv6 server, the shared password that has been preconfigured on the DHCPv6 server,
requesting authentication as defined in [RFC2865] with the requesting authentication as defined in [RFC2865] with the
corresponding Softwire46-Configuration Attribute, which will be corresponding Softwire46-Configuration Attribute, which will be
defined in the next Section. defined in the next Section.
3. If the authentication request is approved by the AAA server, an 3. If the authentication request is approved by the AAA server, an
Access-Accept message MUST be acknowledged with the corresponding Access-Accept message MUST be acknowledged with the corresponding
Softwire46-Configuration Attribute. Softwire46-Configuration Attribute.
4. After receiving the Access-Accept message with the corresponding 4. After receiving the Access-Accept message with the corresponding
Attribute, the BNG SHOULD respond to the DHCPv6 Client (CE) with an Attribute, the BNG SHOULD respond to the DHCPv6 Client (CE) with an
Advertisement message. Advertisement message.
5. After receiving the Advertise message, the CE MAY request for the 5. After receiving the Advertise message, the CE MAY request for the
corresponding S46 Container option, by including the S46 Container corresponding S46 Container option, by including the S46 Container
option in the Request Message. option in the Request message.
6. After receiving the client's Request messsage, containing the 6. After receiving the client's Request message, containing the
corresponding S46 Container option the BNG SHOULD reply to the CE corresponding S46 Container option the BNG SHOULD reply to the CE
with the message containing the S46 Container option. The with the message containing the S46 Container option. The
recommended format of the MAC address is defined as Calling-Station- recommended format of the MAC address is defined as Calling-Station-
Id (Section 3.20 in [RFC3580] without the SSID (Service Set Id (Section 3.20 in [RFC3580] without the SSID (Service Set
Identifier) portion. Identifier) portion.
For Lightweight 4over6 [RFC7596], the subscriber's binding state For Lightweight 4over6 [RFC7596], the subscriber's binding state
should be synchronized between the AAA server and the lwAFTR. If the should be synchronized between the AAA server and lwAFTR. If the
bindings are pre-configured statically, in both the AAA server and bindings are pre-configured statically, in both the AAA server and
the lwAFTR, the AAA server does not need to configure the lwAFTR lwAFTR, an AAA server does not need to configure the lwAFTR anymore.
anymore. Otherwise, if the bindings are locally created on-demand in Otherwise, if the bindings are locally created on-demand in an AAA
the AAA server, it should inform the lwAFTR with the subscriber's server, it should inform the lwAFTR with the subscriber's binding
binding state, in order to synchronise the binding information of the state, in order to synchronize the binding information of the lwB4
lwB4 with the lwAFTR. with the lwAFTR.
The authorization operation could also be done independently after The authorization operation could also be done independently after
the authentication process. In such a scenario, after the the authentication process. In such a scenario, after the
authentication operation, the client MAY initiate a DHCPv6 Request authentication operation, the client MAY initiate a DHCPv6 Request
message that includes the corresponding S46 Container options. message that includes the corresponding S46 Container options.
Similar to the above scenario, the ORO with the corresponding S46 Similar to the above scenario, the ORO with the corresponding S46
Container option code in the initial DHCPv6 request could be optional Container option code in the initial DHCPv6 request could be optional
if the network was planned as being S46-enabled by default. When the if the network was planned as being S46-enabled by default. When the
BNG receives the DHCPv6 Request, it SHOULD initiate the radius BNG receives the DHCPv6 Request, it SHOULD initiate the radius
Access-Request message, which MUST contain a Service-Type attribute Access-Request message, which MUST contain a Service-Type attribute
(6) with the value Authorize Only (17), the corresponding (6) with the value Authorize Only (17), the corresponding
Softwire46-Configuration Attribute, and a State attribute obtained Softwire46-Configuration Attribute, and a State attribute obtained
from the previous authentication process according to [RFC5080]. If from the previous authentication process according to [RFC5080]. If
the authorization request is approved by the AAA server, an Access- the authorization request is approved by an AAA server, an Access-
Accept message MUST be acknowledged with the corresponding Accept message MUST be acknowledged with the corresponding
Softwire46-Configuration Attribute. The BNG SHOULD then send the Softwire46-Configuration Attribute. The BNG SHOULD then send the
DHCPv6 Reply message containing the S46 Container option. DHCPv6 Reply message containing the S46 Container option.
In both the above-mentioned scenarios, Message-authenticator (type In both the above-mentioned scenarios, Message-authenticator (type
80) [RFC2869] SHOULD be used to protect both Access-Request and 80) [RFC2869] SHOULD be used to protect both Access-Request and
Access-Accept messages. Access-Accept messages.
If the BNG does not receive the corresponding MAP-Configuration If the BNG does not receive the corresponding
Attribute in the Access-Accept it MAY fallback to a pre-configured Softwire46-Configuration Attribute in the Access-Accept message it
default S46 configuration, if any. If the BNG does not have any pre- MAY fallback to a pre-configured default S46 configuration, if any.
configured default S46 configuration, or if the BNG receives an If the BNG does not have any pre-configured default S46
Access-Reject, then S46 cannot be established. configuration, or if the BNG receives an Access-Reject, then S46
connection cannot be established.
As specified in [RFC3315], section 18.1.4, "Creation and Transmission As specified in [RFC3315], section 18.1.4, "Creation and Transmission
of Rebind Messages ", if the DHCPv6 server to which the DHCPv6 Renew of Rebind Messages ", if the DHCPv6 server to which the DHCPv6 Renew
message was sent at time T1 has not responded by time T2, the CE message was sent at time T1 has not responded by time T2, the CE
(DHCPv6 client) SHOULD enter the Rebind state and attempt to contact (DHCPv6 client) SHOULD enter the Rebind state and attempt to contact
any available server. In this situation, the secondary BNG receiving any available server. In this situation, the secondary BNG receiving
the DHCPv6 message MUST initiate a new Access-Request towards the AAA the DHCPv6 message MUST initiate a new Access-Request message towards
server. The secondary BNG MAY include the MAP-Configuration the AAA server. The secondary BNG MAY include the
Attribute in its Access-Request. Softwire46-Configuration Attribute in its Access-Request message.
4. Attributes 4. Attributes
This section defines the Softwire46-Configuration Attribute and the This section defines the Softwire46-Configuration Attribute and the
Softwire46-Priority Attribute. The attribute design follows Softwire46-Priority Attribute. The attribute design follows
[RFC6158] and refers to [RFC6929]. The Softwire46-Configuration [RFC6158] and refers to [RFC6929]. The Softwire46-Configuration
Attribute carries the configuration information for MAP-E, MAP-T, and Attribute carries the configuration information for MAP-E, MAP-T, and
Lightweight 4over6. The configuration information for each S46 Lightweight 4over6. The configuration information for each S46
mechanism is carried in the corresponding S46 Container option. mechanism is carried in the corresponding S46 Container option.
Different sub options are required for each type of S46 Container Different sub options are required for each type of S46 Container
skipping to change at page 6, line 35 skipping to change at page 6, line 35
A client may be capable of supporting several different S46 A client may be capable of supporting several different S46
mechanisms. Depending on the deployment scenario, a client might mechanisms. Depending on the deployment scenario, a client might
request for more than one S46 mechanism at a time. The request for more than one S46 mechanism at a time. The
Softwire46-Priority Attribute contains information allowing the Softwire46-Priority Attribute contains information allowing the
client to prioritize which mechanism to use, corresponding to client to prioritize which mechanism to use, corresponding to
OPTION_S46_PRIORITY defined in [RFC8026]. OPTION_S46_PRIORITY defined in [RFC8026].
4.1. Softwire46-Configuration Attribute 4.1. Softwire46-Configuration Attribute
The Softwire46-Configuration Attribute is structured as follows: The Softwire46-Configuration Attribute can only encapsulate S46
Container Option(s). The Softwire46-Configuration Attribute is
0 1 2 3 structured as follows:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 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 | |
| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
+ S46 Container Option(s) + | |
| | + S46 Container Option(s) +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type Type
TBD TBD
Length Length
2 + the length of the S46 Container option(s) specified in octects 2 + the length of the S46 Container option(s) specified in octets
S46 Container Option (s) S46 Container Option (s)
A variable field that may contains one or more S46 Container option(s), A variable field that may contains one or more S46 Container
defined in Section 4.2 option(s), defined in Section 4.2.
4.2. S46 Container Options 4.2. S46 Container Options
Depending on the deployment scenario, a client might request for more The S46 Container Option can only be encapsulated in the
than one transition mechanism at a time, at least one S46 Container Softwire46-Configuration Attribute. Depending on the deployment
option MUST be included in one Softwire46-Configuration Attribute. scenario, a client might request for more than one transition
mechanism at a time, there MUST be at least one S46 Container option
encapsulated in one Softwire46-Configuration Attribute. There MUST
be at most one instance of each type of S46 Container Option
encapsulated in one Softwire46-Configuration Attribute.
/
/ | 1.Rule-IPv6-Prefix Sub
| | Option
| 1.S46-Rule Sub Option--+ 2.Rule-IPv4-Prefix Sub
| | Option
| 2.S46-BR Sub Option | 3.EA Length Sub Option
S46 Container Option--+ 3.S46-DMR Sub Option \
| 4.S46-v4v6Bind Sub Option
| 5.S46-PORTPARAMS Sub Option
\
Figure 2: S46 Container Option Hierarchy
There are three types of S46 Container Options, namely MAP-E
Container Option, MAP-T Container Option, Lightweight 4over6 Container
Option. Each type of S46 Container Option contains a number of sub
options, defined in Section 4.3. The hierarchy of the S46 Container
Option is shown in Figure 2. Section 4.5 describes which Sub Options
are mandatory, optional, or not permitted for each defined S46
Container Option.
There are three types of S46-Rule Sub Options, namely Basic Mapping
Rule, Forwarding Mapping Rule, Basic and Forwarding Mapping Rule.
Each type of S46-Rule Sub Option also contains a number of Sub
Options. The Rule-IPv6-Prefix Sub Option is necessary for every type
of S46-Rule Sub Option. It should appear for once and only once.
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 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| | | |
+ Sub Options + + Sub Options +
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type Type
1 MAP-E Container Option 1 MAP-E Container Option
2 MAP-T Container Option 2 MAP-T Container Option
3 Lightweight 4over6 Container Option 3 Lightweight 4over6 Container Option
Length Length
2 + the length of the sub options specified in octects 2 + the length of the Sub Options specified in octets
Sub Option Sub Option
A variable field that contains necessary sub options defined in A variable field that contains necessary sub options defined in
Section 4.3 and zero or several optional sub options, defined Section 4.3 and zero or several optional sub options, defined
in Section 4.4. in Section 4.4.
4.3. Sub Options for S46 Container Option 4.3. Sub Options for S46 Container Option
4.3.1. S46-Rule Sub Option 4.3.1. S46-Rule Sub Option
Depending on deployment scenario, one Basic Mapping Rule and zero or The S46-Rule Sub Option can only be encapsulated in the MAP-E
more Forwarding Mapping Rules MUST be included in one MAP-E or MAP-T Container Option or the MAP-T Container Option. Depending on
Container Option. deployment scenario, one Basic Mapping Rule and zero or more
Forwarding Mapping Rules MUST be included in one MAP-E Container
Option or MAP-T Container Option.
Each type of S46-Rule Sub Option also contains a number of sub
options, including Rule-IPv6-Prefix Sub Option, Rule-IPv4-Prefix Sub
Option, and EA Length Sub Option. The structure of the sub options
for S46-Rule Sub Option is defined in section 4.4.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | | | SubType | SubLen | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| | | |
+ Sub Options + + Sub Options +
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
1 Basic Mapping Rule (Not Forwarding Mapping Rule) 1 Basic Mapping Rule (Not Forwarding Mapping Rule)
2 Forwarding Mapping Rule (Not Basic Mapping Rule) 2 Forwarding Mapping Rule (Not Basic Mapping Rule)
3 Basic & Forwarding Mapping Rule 3 Basic & Forwarding Mapping Rule
SubLen SubLen
2 + the length of the sub options specified in octects 2 + the length of the Sub Options specified in octets
Sub Option Sub Option
A variable field that contains sub options defined in A variable field that contains sub options defined in
Section 4.4 Section 4.4.
4.3.2. S46-BR Sub Option 4.3.2. S46-BR Sub Option
There MUST be atleast one S46-BR Sub Option included in each MAP-E The S46-BR Sub Option an only be encapsulated in the MAP-E Container
Container Option or Lightweight 4over6 Container Option. Option or the Lightweight 4over6 Container Option. There MUST be at
least one S46-BR Sub Option included in each MAP-E Container Option
or Lightweight 4over6 Container Option.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | | | SubType | SubLen | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| | | |
| BR-ipv6-address | | BR-ipv6-address |
| | | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
4 (SubType number, for the S46-BR sub option) 4 (SubType number, for the S46-BR sub option)
SubLen SubLen
18 (the length of the S46-BR sub option) 18 (the length of the S46-BR sub option)
BR-ipv6-address BR-ipv6-address
a fixed-length field of 16 octects that specifies the IPv6 address a fixed-length field of 16 octets that specifies the IPv6 address
for the S46 BR. for the S46 BR.
4.3.3. S46-DMR Sub Option 4.3.3. S46-DMR Sub Option
The S46-DMR Sub Option can only appear in the MAP-T Container Option.
There MUST be exactly one S46-DMR Sub Option included in one MAP-T There MUST be exactly one S46-DMR Sub Option included in one MAP-T
Container Option. Container Option.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen |dmr-prefix6-len| | | SubType | SubLen |dmr-prefix6-len| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| dmr-ipv6-prefix | | dmr-ipv6-prefix |
| (variable length) | | (variable length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
5 (SubType number, for the S46-DMR sub option) 5 (SubType number, for the S46-DMR Sub Option)
SubLen SubLen
3 + length of dmr-ipv6-prefix specified in octects 3 + length of dmr-ipv6-prefix specified in octets
dmr-prefix6-len dmr-prefix6-len
8 bits long; expresses the bitmask length of the IPv6 8 bits long; expresses the bitmask length of the IPv6
prefix specified in the dmr-ipv6-prefix field. Allowed values range prefix specified in the dmr-ipv6-prefix field. Allowed values
from 0 to 96. range from 0 to 96.
dmr-ipv6-prefix dmr-ipv6-prefix
a variable-length field specifying the IPv6 prefix or address a variable-length field specifying the IPv6 prefix or address
for the BR. This field is right-padded with zeros to the nearest for the BR. This field is right-padded with zeros to the nearest
octect boundary when dmr-prefix6-len is not divisible by 8. octet boundary when dmr-prefix6-len is not divisible by 8.
4.3.4. S46-V4V6Bind Sub Option 4.3.4. S46-V4V6Bind Sub Option
There MUST be atmost one S46-V4V6Bind Sub Option included in each The S46-V4V6Bind Sub Option can only be encapsulated in the
Lightweight 4over6 Container Option. Lightweight 4over6 Container Option. There MUST be at most one
S46-V4V6Bind Sub Option included in each Lightweight 4over6 Container
0 1 2 3 Option.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 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
| SubType | SubLen | ipv4-address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SubType | SubLen | ipv4-address |
| (Continued) |bindprefix6-len| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | (Continued) |bindprefix6-len| |
| bind-ipv6-prefix | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| (variable length) | | bind-ipv6-prefix |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (variable length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
6 (SubType number, for the S46-V4V6Bind sub option) 6 (SubType number, for the S46-V4V6Bind sub option)
SubLen SubLen
the length of the S46-V4V6Bind sub option expressed in octects the length of the S46-V4V6Bind sub option expressed in octets
ipv4-address ipv4-address
a 32-bits field that specifies an IPv4 address that appears in a 32-bits field that specifies an IPv4 address that appears in
the V4V6Bind Option the V4V6Bind Option
bindprefix6-len bindprefix6-len
8 bits long; expresses the bitmask length of the IPv6 prefix 8 bits long; expresses the bitmask length of the IPv6 prefix
specified in the bind-ipv6-prefix field. Allowed values range from specified in the bind-ipv6-prefix field. Allowed values range from
0 to 96. 0 to 96.
bind-ipv6-prefix bind-ipv6-prefix
a variable-length field specifying the IPv6 prefix or address for a variable-length field specifying the IPv6 prefix or address for
the S46 CE. This field is right-padded with zeros to the nearest octect the S46 CE. This field is right-padded with zeros to the nearest
boundary when bindprefix6-len is not divisible by 8. octet boundary when bindprefix6-len is not divisible by 8.
4.3.5. S46-PORTPARAMS Sub Option 4.3.5. S46-PORTPARAMS Sub Option
The S46-PORTPARAMS sub option specifies optional port set information The S46-PORTPARAMS Sub Option specifies optional port set information
that MAY be provided to CEs. The S46-PORTPARAMS sub option canbe that MAY be provided to CEs. The S46-PORTPARAMS sub option can be
included optionally by each type of S46 Container Option. included optionally by each type of S46 Container Option.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | PSID-Offset | PSID-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PSID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 1 2 3 SubType
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 7 (SubType number, for the S46-PORTPARAMS Sub Option sub option)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ SubLen
| SubType | SubLen | PSID-Offset | PSID-len | 6 (the length of the S46-PORTPARAMS Sub Option sub option)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PSID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType
7 (SubType number, for the S46-PORTPARAMS Sub Option sub option)
SubLen
6 (the length of the S46-PORTPARAMS Sub Option sub option)
PSID Offset PSID Offset
8 bits long field that specifies the numeric value for the S46 algorithm's excluded 8 bits long field that specifies the numeric value for the S46
port range/ offset bits (a bits), as per Section 5.1 of RFC 7597. algorithm's excluded port range/ offset bits (a bits), as per
Allowed values are between 0 and 15. Default values for this field are specific to the Section 5.1 of RFC7597. Allowed values are between 0 and 15.
Softwire mechanism being implemented and are defined in the relevant specification document. Default values for this field are specific to the Softwire
PSID-len mechanism being implemented and are defined in the relevant
8 bits long; specifies the number of significant bits in the PSID specification document.
field. (also known as 'k'). When set to 0, the PSID field is to
be ignored. After the first 'a' bits, there are k bits in the
port number representing valid of PSID. Subsequently, the
address sharing ratio would be 2 ^k.
PSID (Port-set ID)
Explicit 16-bit (unsigned word) PSID value. The PSID value
algorithmically identifies a set of ports assigned to a CE. The
first k-bits on the left of this 2-octets field is the PSID
value. The remaining (16-k) bits on the right are padding zeros.
4.4. Sub Options for S46-RULE Sub Option PSID-len
8 bits long; specifies the number of significant bits in the PSID
field. (also known as 'k'). When set to 0, the PSID field is to
be ignored. After the first 'a' bits, there are k bits in the
port number representing valid of PSID. Subsequently, the
address sharing ratio would be 2 ^k.
PSID (Port-set ID)
Explicit 16-bit (unsigned word) PSID value. The PSID value
algorithmically identifies a set of ports assigned to a CE. The
first k-bits on the left of this 2-octets field is the PSID
value. The remaining (16-k) bits on the right are padding zeros.
4.4. Sub Options for S46-Rule Sub Option
4.4.1. Rule-IPv6-Prefix Sub Option 4.4.1. Rule-IPv6-Prefix Sub Option
The Rule-IPv6-Prefix Sub Option is necessary for every S46-RULE sub The Rule-IPv6-Prefix Sub Option is necessary for every S46-RULE sub
option. It should appear for once and only once. option. There MUST be exactly one S46-IPv6-Prefix Sub Option
encapsulated in each type of S46-Rule Sub Option.
The IPv6 Prefix sub option is followed the framed IPv6 prefix The IPv6 Prefix sub option is followed the framed IPv6 prefix
designed in [RFC3162]. designed in [RFC3162].
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved | prefix6-len | | SubType | SubLen | Reserved | prefix6-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| rule-ipv6-prefix | | rule-ipv6-prefix |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 12, line 16 skipping to change at page 13, line 5
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved | prefix6-len | | SubType | SubLen | Reserved | prefix6-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| rule-ipv6-prefix | | rule-ipv6-prefix |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
8 (SubType number, for the Rule-IPv6-Prefix6 sub option) 8 (SubType number, for the Rule-IPv6-Prefix Sub Option)
SubLen SubLen
20 (the length of the Rule-IPv6-Prefix6 sub option) 20 (the length of the Rule-IPv6-Prefix Sub Option)
Reserved Reserved
Reserved for future usage. It should be set to all zero Reserved for future usage. It should be set to all zero.
prefix6-len prefix6-len
length of the IPv6 prefix, specified in the rule-ipv6-prefix the length of IPv6 prefix, specified in the rule-ipv6-prefix
field, expressed in bits field, expressed in bits.
rule-ipv6-prefix rule-ipv6-prefix
a 128-bits field that specifies an IPv6 prefix that appears in a 128-bits field that specifies an IPv6 prefix that appears in
a MAP rule a MAP rule.
4.4.2. Rule-IPv4-Prefix Sub Option 4.4.2. Rule-IPv4-Prefix Sub Option
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved | prefix4-len | | SubType | SubLen | Reserved | prefix4-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| rule-ipv4-prefix | | rule-ipv4-prefix |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
9 (SubType number, for the Rule-IPv4-Prefix6 sub option) 9 (SubType number, for the Rule-IPv4-Prefix sub option)
SubLen SubLen
8 (the length of the Rule-IPv4-Prefix6 sub option) 8 (the length of the Rule-IPv4-Prefix sub option)
Reserved Reserved
Reserved for future usage. It should be set to all zero Reserved for future usage. It should be set to all zero
Prefix4-len Prefix4-len
length of the IPv6 prefix, specified in the rule-ipv6-prefix the length of IPv4 prefix, specified in the rule-ipv4-prefix
field, expressed in bits field, expressed in bits.
rule-ipv4-prefix rule-ipv4-prefix
a 32-bits field that specifies an IPv4 prefix that appears in a 32-bits field that specifies an IPv4 prefix that appears in
a MAP rule a MAP rule.
4.4.3. EA Length Sub Option 4.4.3. EA Length Sub Option
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | EA-len | | SubType | SubLen | EA-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType SubType
10 (SubType number, for the EA Length sub option) 10 (SubType number, for the EA Length Sub Option)
SubLen SubLen
4 (the length of the EA Length sub option) 4 (the length of the EA Length Sub Option)
EA-len EA-len
16 bits long field that specifies the Embedded-Address (EA) 16 bits long field that specifies the Embedded-Address (EA)
bit length. Allowed values range from 0 to 48 bit length. Allowed values range from 0 to 48.
4.5. Softwire46 Sub Options Encapsulation 4.5. Softwire46 Sub Options Encapsulation
The table below shows which encapsulated Sub Options are mandatory, The table below shows which encapsulated Sub Options are mandatory,
optional, or not permitted for each defined S46 Container Option. optional, or not permitted for each defined S46 Container Option.
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| Sub Option | MAP-E | MAP-T | Lightweight 4over6 | | Sub Option | MAP-E | MAP-T | Lightweight 4over6 |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| S46-BR | M | N/P | M | | S46-BR | M | N/P | M |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| S46-Rule | M | M | N/P | | S46-Rule | M | M | N/P |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| S46-DMR | N/P | M | N/P | | S46-DMR | N/P | M | N/P |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| S46-V4V6Bind | N/P | N/P | O | | S46-V4V6Bind | N/P | N/P | O |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| S46-PORTPARAMS | O | O | O | | S46-PORTPARAMS | O | O | O |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| S46-Option-Code| N/P | N/P | N/P |
+----------------+-------+-------+--------------------+
M - Maandabdatory, O - Optional, N/P - Not Permitted M - Mandatory, O - Optional, N/P - Not Permitted
4.6. Softwire46-Priority Attribute 4.6. Softwire46-Priority Attribute
The S46-Priority Attribute is structured as follows: The S46-Priority Attribute is structured 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 | S46-option-code |
| Type | Length | S46-option-code | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | S46-option-code |
| ... | S46-option-code | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type
TBD
Type Length
TBD 2 + the length of the S46-option-code(s) specified in octets
Length S46-option-code
2 + the length of the S46-option-code(s) specified in octects 16-bit IANA-registered option code of the DHCPv6 option that
S46-option-code is used to identify the softwire mechanisms. S46 mechanisms
16-bit IANA-registered option code of the DHCPv6 option that is used to identify the are prioritized in the appearance order of the S46-option-code(s)
softwire mechanisms. S46 mechanisms are prioritized in the appearance order of the in the Softwire46-Priority Attribute. A Softwire46-Priority
S46-option-code(s) in the Softwire46-Priority Attribute. A Softwire46-Priority Attribute Attribute MUST contain at least one S46-option-code. The option
MUST contain at least one S46-option-code. codes of the corresponding S46 mechanisms are listed in
Section 6.1.
4.7. Table of attributes 4.7. Table of attributes
The following table provides a guide to which attributes may be found The following table provides a guide to which attributes may be found
in which kinds of packets, and in what quantity. in which kinds of packets, and in what quantity.
Request Accept Reject Challenge Accounting # Attribute Request Accept Reject Challenge Accounting # Attribute
Request Request
0-1 0-1 0 0 0-1 TBD1 Softwire46- 0-1 0-1 0 0 0-1 TBD1 Softwire46-
Configuration Configuration
skipping to change at page 15, line 11 skipping to change at page 16, line 11
packet. packet.
1 Exactly one instance of this attribute MUST be present in 1 Exactly one instance of this attribute MUST be present in
packet. packet.
5. Diameter Considerations 5. Diameter Considerations
S46 Configuration using Diameter [RFC6733] is specified in [RFC7678]. S46 Configuration using Diameter [RFC6733] is specified in [RFC7678].
6. IANA Considerations 6. IANA Considerations
This document requires the assignment of two new RADIUS Attributes This document requires the assignment of two new RADIUS Attribute
Type in the "Radius Types" registry (currently located at Type in the "Radius Types" registry (currently located at
http://www.iana.org/assignments/radius-types for the following http://www.iana.org/assignments/radius-types for the following
attributes: attributes:
o Softwire46-Configuration Attribute TBD1 o Softwire46-Configuration Attribute TBD1
o Softwire46-Priority Attribute TBD2 o Softwire46-Priority Attribute TBD2
IANA should allocate the numbers from the standard RADIUS Attributes IANA should allocate the numbers from the standard RADIUS Attributes
space using the "IETF Review" policy [RFC5226]. space using the "IETF Review" policy [RFC5226].
6.1. S46 Mechanisms and Their Identifying Option Codes
This document requires IANA to register five option codes of the
Softwire46 mechanisms permitted to be included in the
Softwire46-Priority Attribute. As this work had be done in the
section 4.1 of [RFC8026], the five option codes could be consistent
with those defined in section 4.1 of [RFC8026]. Additional options
may be added to this list in the future using the IETF Review process
described in Section 4.1 of [RFC5226].
The following table shows the option codes that are currently
defined and the S46 mechanisms that they represent.
+-------------+------------------+-----------+
| Option Code | S46 Mechanism | Reference |
+-------------+------------------+-----------+
| 94 | MAP-E | RFC7598 |
+-------------+------------------+-----------+
| 95 | MAP-T | RFC7598 |
+-------------+------------------+-----------+
| 96 |Lightweight 4over6| RFC7598 |
+-------------+------------------+-----------+
| 64 | DS-Lite | RFC6334 |
+--------------------------------+-----------+
| 88 |DHCPv4 over DHCPv6| RFC7341 |
+-------------+------------------+-----------+
Table 1: Option Codes to S46 Mechanisms
7. Security Considerations 7. Security Considerations
Known security vulnerabilities of the RADIUS protocol are discussed Known security vulnerabilities of the RADIUS protocol are discussed
in [RFC2607], [RFC2865], and[RFC2869]. Use of IPsec [RFC4301] for in [RFC2607], [RFC2865], and[RFC2869]. Use of IPsec [RFC4301] for
providing security when RADIUS is carried in IPv6 is discussed in providing security when RADIUS is carried in IPv6 is discussed in
[RFC3162]. [RFC3162].
A malicious user may use MAC address spoofing on the shared password A malicious user may use MAC address spoofing on the shared password
that has been preconfigured on the DHCPv6 server to get unauthorized that has been preconfigured on the DHCPv6 server to get unauthorized
configuration information. configuration information.
skipping to change at page 15, line 48 skipping to change at page 17, line 30
discussed in [RFC8026]. Furthermore, generic DHCPv6 security discussed in [RFC8026]. Furthermore, generic DHCPv6 security
mechanisms can be applied DHCPv6 intercommunication between the CE mechanisms can be applied DHCPv6 intercommunication between the CE
and the BNG. and the BNG.
Security considerations for the Diameter protocol are discussed in Security considerations for the Diameter protocol are discussed in
[RFC6733]. [RFC6733].
8. Acknowledgements 8. Acknowledgements
The authors would like to thank the valuable comments made by Peter The authors would like to thank the valuable comments made by Peter
Lothberg, Wojciech Dec, and Suresh Krishnan for this document. This Lothberg, Wojciech Dec, Ian Farrer and Suresh Krishnan for this
document was merged with draft-sun-softwire-lw4over6-radext-01, document. This document was merged with draft-sun-softwire-lw4over6-
thanks to everyone who contributed to this draft. radext-01, thanks to everyone who contributed to this draft.
This document was produced using the xml2rfc tool [RFC7749]. This document was produced using the xml2rfc tool [RFC7991].
9. References 9. References
9.1. Normative References 9.1. Normative References
[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, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
[RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson, [RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson,
"Remote Authentication Dial In User Service (RADIUS)", "Remote Authentication Dial In User Service (RADIUS)",
RFC 2865, DOI 10.17487/RFC2865, June 2000, RFC 2865, DOI 10.17487/RFC2865, June 2000,
<http://www.rfc-editor.org/info/rfc2865>. <http://www.rfc-editor.org/info/rfc2865>.
[RFC2869] Rigney, C., Willats, W., and P. Calhoun, "RADIUS
Extensions", RFC 2869, DOI 10.17487/RFC2869, June 2000,
<http://www.rfc-editor.org/info/rfc2869>.
[RFC3162] Aboba, B., Zorn, G., and D. Mitton, "RADIUS and IPv6", [RFC3162] Aboba, B., Zorn, G., and D. Mitton, "RADIUS and IPv6",
RFC 3162, DOI 10.17487/RFC3162, August 2001, RFC 3162, DOI 10.17487/RFC3162, August 2001,
<http://www.rfc-editor.org/info/rfc3162>. <http://www.rfc-editor.org/info/rfc3162>.
[RFC3315] Droms, R., Ed., Bound, J., Volz, B., Lemon, T., Perkins, [RFC3315] Droms, R., Ed., Bound, J., Volz, B., Lemon, T., Perkins,
C., and M. Carney, "Dynamic Host Configuration Protocol C., and M. Carney, "Dynamic Host Configuration Protocol
for IPv6 (DHCPv6)", RFC 3315, DOI 10.17487/RFC3315, July for IPv6 (DHCPv6)", RFC 3315, DOI 10.17487/RFC3315, July
2003, <http://www.rfc-editor.org/info/rfc3315>. 2003, <http://www.rfc-editor.org/info/rfc3315>.
[RFC3580] Congdon, P., Aboba, B., Smith, A., Zorn, G., and J. Roese,
"IEEE 802.1X Remote Authentication Dial In User Service
(RADIUS) Usage Guidelines", RFC 3580,
DOI 10.17487/RFC3580, September 2003,
<http://www.rfc-editor.org/info/rfc3580>.
[RFC5080] Nelson, D. and A. DeKok, "Common Remote Authentication [RFC5080] Nelson, D. and A. DeKok, "Common Remote Authentication
Dial In User Service (RADIUS) Implementation Issues and Dial In User Service (RADIUS) Implementation Issues and
Suggested Fixes", RFC 5080, DOI 10.17487/RFC5080, December Suggested Fixes", RFC 5080, DOI 10.17487/RFC5080, December
2007, <http://www.rfc-editor.org/info/rfc5080>. 2007, <http://www.rfc-editor.org/info/rfc5080>.
[RFC6158] DeKok, A., Ed. and G. Weber, "RADIUS Design Guidelines", [RFC6158] DeKok, A., Ed. and G. Weber, "RADIUS Design Guidelines",
BCP 158, RFC 6158, DOI 10.17487/RFC6158, March 2011, BCP 158, RFC 6158, DOI 10.17487/RFC6158, March 2011,
<http://www.rfc-editor.org/info/rfc6158>. <http://www.rfc-editor.org/info/rfc6158>.
[RFC6929] DeKok, A. and A. Lior, "Remote Authentication Dial In User [RFC6929] DeKok, A. and A. Lior, "Remote Authentication Dial In User
skipping to change at page 17, line 17 skipping to change at page 18, line 36
Prioritization Mechanism", RFC 8026, DOI 10.17487/RFC8026, Prioritization Mechanism", RFC 8026, DOI 10.17487/RFC8026,
November 2016, <http://www.rfc-editor.org/info/rfc8026>. November 2016, <http://www.rfc-editor.org/info/rfc8026>.
9.2. Informative References 9.2. Informative References
[RFC2607] Aboba, B. and J. Vollbrecht, "Proxy Chaining and Policy [RFC2607] Aboba, B. and J. Vollbrecht, "Proxy Chaining and Policy
Implementation in Roaming", RFC 2607, Implementation in Roaming", RFC 2607,
DOI 10.17487/RFC2607, June 1999, DOI 10.17487/RFC2607, June 1999,
<http://www.rfc-editor.org/info/rfc2607>. <http://www.rfc-editor.org/info/rfc2607>.
[RFC2869] Rigney, C., Willats, W., and P. Calhoun, "RADIUS
Extensions", RFC 2869, DOI 10.17487/RFC2869, June 2000,
<http://www.rfc-editor.org/info/rfc2869>.
[RFC3580] Congdon, P., Aboba, B., Smith, A., Zorn, G., and J. Roese,
"IEEE 802.1X Remote Authentication Dial In User Service
(RADIUS) Usage Guidelines", RFC 3580,
DOI 10.17487/RFC3580, September 2003,
<http://www.rfc-editor.org/info/rfc3580>.
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the [RFC4301] Kent, S. and K. Seo, "Security Architecture for the
Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, Internet Protocol", RFC 4301, DOI 10.17487/RFC4301,
December 2005, <http://www.rfc-editor.org/info/rfc4301>. December 2005, <http://www.rfc-editor.org/info/rfc4301>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226, IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008, DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>. <http://www.rfc-editor.org/info/rfc5226>.
[RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual- [RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual-
skipping to change at page 18, line 28 skipping to change at page 20, line 11
and T. Murakami, "Mapping of Address and Port using and T. Murakami, "Mapping of Address and Port using
Translation (MAP-T)", RFC 7599, DOI 10.17487/RFC7599, July Translation (MAP-T)", RFC 7599, DOI 10.17487/RFC7599, July
2015, <http://www.rfc-editor.org/info/rfc7599>. 2015, <http://www.rfc-editor.org/info/rfc7599>.
[RFC7678] Zhou, C., Taylor, T., Sun, Q., and M. Boucadair, [RFC7678] Zhou, C., Taylor, T., Sun, Q., and M. Boucadair,
"Attribute-Value Pairs for Provisioning Customer Equipment "Attribute-Value Pairs for Provisioning Customer Equipment
Supporting IPv4-Over-IPv6 Transitional Solutions", Supporting IPv4-Over-IPv6 Transitional Solutions",
RFC 7678, DOI 10.17487/RFC7678, October 2015, RFC 7678, DOI 10.17487/RFC7678, October 2015,
<http://www.rfc-editor.org/info/rfc7678>. <http://www.rfc-editor.org/info/rfc7678>.
[RFC7749] Reschke, J., "The "xml2rfc" Version 2 Vocabulary", [RFC7991] Hoffman, P., "The "xml2rfc" Version 3 Vocabulary",
RFC 7749, DOI 10.17487/RFC7749, February 2016, RFC 7991, DOI 10.17487/RFC7991, December 2016,
<http://www.rfc-editor.org/info/rfc7749>. <http://www.rfc-editor.org/info/rfc7991>.
Additional Authors Additional Authors
Qiong Sun Qiong Sun
China Telecom China Telecom
Beijing China Beijing China
Email: sunqiong@ctbri.com.cn Email: sunqiong@ctbri.com.cn
Qi Sun Qi Sun
Tsinghua University Tsinghua University
Department of Computer Science, Tsinghua University Department of Computer Science, Tsinghua University
skipping to change at page 20, line 41 skipping to change at page 22, line 41
Veradale, WA 99037 Veradale, WA 99037
USA USA
Email: peterd@iea-software.com Email: peterd@iea-software.com
Chongfeng Xie Chongfeng Xie
China Telecom China Telecom
Beijing Beijing
P.R. China P.R. China
Email: xiechf@ctbri.com.cn Email: xiechf.bri@chinatelecom.cn
Tianxiang Li Tianxiang Li
Tsinghua University Tsinghua University
Beijing 100084 Beijing 100084
P.R.China P.R.China
Email: peter416733@gmail.com Email: peter416733@gmail.com
 End of changes. 76 change blocks. 
232 lines changed or deleted 306 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/