draft-ietf-softwire-map-radius-16.txt   draft-ietf-softwire-map-radius-17.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: December 28, 2018 CNNIC Expires: May 11, 2019 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
M. Boucadair M. Boucadair, Ed.
Orange Orange
June 26, 2018 November 7, 2018
RADIUS Attributes for Address plus Port based Softwire Mechanisms RADIUS Attributes for Address plus Port (A+P) based Softwire Mechanisms
draft-ietf-softwire-map-radius-16 draft-ietf-softwire-map-radius-17
Abstract Abstract
IPv4-over-IPv6 transition mechanisms provide both IPv4 and IPv6 IPv4-over-IPv6 transition mechanisms provide IPv4 connectivity
connectivity services simultaneously during the IPv4/IPv6 co- services over IPv6 native networks during the IPv4/IPv6 co-existence
existence period. DHCPv6 options have been defined for configuring period. DHCPv6 options have been defined for configuring clients for
clients to use MAP-E, MAP-T, Lightweight 4over6 and Multicast Basic Lightweight 4over6, Mapping of Address and Port with Encapsulation,
Bridging BroadBand (mB4) in multicast scenarios. However, in many and Mapping of Address and Port using Translation unicast softwire
networks, the configuration information may be stored in an AAA mechanisms, and also multicast softwires. However, in many networks,
server, while user configuration information is mainly provided by configuration information is stored in an Authentication,
the BNG through the DHCPv6 protocol. This document defines three new Authorization, and Accounting server which utilizes the RADIUS
RADIUS attributes that carry CE or mB4 configuration information from protocol to provide centralized management for users. When a new
an AAA server to BNG. transition mechanism is developed, new RADIUS attributes need to be
defined correspondingly.
This document defines three new RADIUS attributes to carry Address
plus Port based softwire configuration parameters from an
Authentication, Authorization, and Accounting server to a Broadband
Network Gateway. Both unicast and multicast attributes are covered.
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 https://datatracker.ietf.org/drafts/current/. Drafts is at https://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 December 28, 2018.
This Internet-Draft will expire on May 11, 2019.
Copyright Notice Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the Copyright (c) 2018 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
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
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 . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Configuration process with RADIUS . . . . . . . . . . . . . . 4 3. Extensions of RADIUS Attributes and TLVs . . . . . . . . . . 6
4. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1. Softwire46-Configuration Attribute . . . . . . . . . . . 6
4.1. Softwire46-Configuration Attribute . . . . . . . . . . . 8 3.1.1. Softwire46 TLVs . . . . . . . . . . . . . . . . . . . 8
4.2. Softwire46 TLVs . . . . . . . . . . . . . . . . . . . . . 9 3.1.1.1. S46-MAP-E TLV Format . . . . . . . . . . . . . . 10
4.3. Softwire46 Sub TLVs . . . . . . . . . . . . . . . . . . . 11 3.1.1.2. S46-MAP-T TLV Format . . . . . . . . . . . . . . 11
4.4. The format of Softwire46 Sub TLVs . . . . . . . . . . . . 13 3.1.1.3. S46-Lightweight-4over6 TLV Format . . . . . . . . 12
4.4.1. S46-Rule Sub TLV . . . . . . . . . . . . . . . . . . 13 3.1.2. Softwire46 Sub-TLVs . . . . . . . . . . . . . . . . . 13
4.4.2. S46-BR Sub TLV . . . . . . . . . . . . . . . . . . . 14 3.1.3. Format of the Softwire46 Sub-TLVs . . . . . . . . . . 14
4.4.3. S46-DMR Sub TLV . . . . . . . . . . . . . . . . . . . 15 3.1.3.1. S46-Rule Sub-TLV . . . . . . . . . . . . . . . . 14
4.4.4. S46-V4V6Bind Sub TLV . . . . . . . . . . . . . . . . 16 3.1.3.2. S46-BR Sub-TLV . . . . . . . . . . . . . . . . . 15
4.4.5. S46-PORTPARAMS Sub TLV . . . . . . . . . . . . . . . 16 3.1.3.3. S46-DMR Sub-TLV . . . . . . . . . . . . . . . . . 16
4.5. Sub-TLVs for S46-Rule Sub TLV . . . . . . . . . . . . . . 17 3.1.3.4. S46-V4V6Bind Sub-TLV . . . . . . . . . . . . . . 17
4.5.1. Rule-IPv6-Prefix sub-TLV . . . . . . . . . . . . . . 17 3.1.3.5. S46-PORTPARAMS Sub-TLV . . . . . . . . . . . . . 18
4.5.2. Rule-IPv4-Prefix Sub-TLV . . . . . . . . . . . . . . 18 3.1.4. Sub-TLVs for S46-Rule Sub-TLV . . . . . . . . . . . . 19
4.5.3. EA-Length Sub-TLV . . . . . . . . . . . . . . . . . . 19 3.1.4.1. Rule-IPv6-Prefix Sub-TLV . . . . . . . . . . . . 19
4.6. Sub-TLVs for S46-v4v6Bind Sub TLV . . . . . . . . . . . . 19 3.1.4.2. Rule-IPv4-Prefix Sub-TLV . . . . . . . . . . . . 20
4.6.1. The IPv4-address sub-TLV . . . . . . . . . . . . . . 19 3.1.4.3. EA-Length Sub-TLV . . . . . . . . . . . . . . . . 21
4.6.2. The Bind-IPv6-Prefix Sub-TLV . . . . . . . . . . . . 19 3.1.5. Sub-TLVs for S46-v4v6Bind Sub-TLV . . . . . . . . . . 22
4.7. Sub-TLVs for S46-PORTPARAMS Sub TLV . . . . . . . . . . . 20 3.1.5.1. The IPv4-address Sub-TLV . . . . . . . . . . . . 22
4.7.1. The PSID-offset sub-TLV . . . . . . . . . . . . . . . 20 3.1.5.2. The Bind-IPv6-Prefix Sub-TLV . . . . . . . . . . 22
4.7.2. The PSID-len sub-TLV . . . . . . . . . . . . . . . . 21 3.1.6. Sub-TLVs for S46-PORTPARAMS Sub-TLV . . . . . . . . . 23
4.7.3. The PSID sub-TLV . . . . . . . . . . . . . . . . . . 21 3.1.6.1. The PSID-offset Sub-TLV . . . . . . . . . . . . . 23
4.8. Softwire46-Priority Attribute . . . . . . . . . . . . . . 21 3.1.6.2. The PSID-len Sub-TLV . . . . . . . . . . . . . . 24
4.9. Softwire46-Multicast Attribute . . . . . . . . . . . . . 22 3.1.6.3. The PSID Sub-TLV . . . . . . . . . . . . . . . . 25
4.9.1. ASM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 24 3.2. Softwire46-Priority Attribute . . . . . . . . . . . . . . 25
4.9.2. SSM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 25 3.3. Softwire46-Multicast Attribute . . . . . . . . . . . . . 26
4.9.3. U-Prefix64 TLV . . . . . . . . . . . . . . . . . . . 26 3.3.1. ASM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 28
3.3.2. SSM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 29
4.10. Table of attributes . . . . . . . . . . . . . . . . . . . 27 3.3.3. U-Prefix64 TLV . . . . . . . . . . . . . . . . . . . 30
5. Diameter Considerations . . . . . . . . . . . . . . . . . . . 28 4. A Sample Configuration Process with RADIUS . . . . . . . . . 31
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 5. Table of Attributes . . . . . . . . . . . . . . . . . . . . . 34
6.1. New RADIUS Attributes . . . . . . . . . . . . . . . . . . 28 6. Security Considerations . . . . . . . . . . . . . . . . . . . 35
6.2. New RADIUS TLVs . . . . . . . . . . . . . . . . . . . . . 29 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 35
6.3. S46 Mechanisms and Their Identifying Option Codes . . . . 29 7.1. New RADIUS Attributes . . . . . . . . . . . . . . . . . . 35
7. Security Considerations . . . . . . . . . . . . . . . . . . . 30 7.2. New RADIUS TLVs . . . . . . . . . . . . . . . . . . . . . 36
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 30 7.3. S46 Mechanisms and Their Identifying Option Codes . . . . 36
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 31 8. Contributing Authors . . . . . . . . . . . . . . . . . . . . 37
9.1. Normative References . . . . . . . . . . . . . . . . . . 31 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 38
9.2. Informative References . . . . . . . . . . . . . . . . . 32 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 39
Additional Authors . . . . . . . . . . . . . . . . . . . . . . . 34 10.1. Normative References . . . . . . . . . . . . . . . . . . 39
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35 10.2. Informative References . . . . . . . . . . . . . . . . . 40
Appendix A. DHCPv6 to RADIUS Field Mappings . . . . . . . . . . 42
A.1. OPTION_S46_RULE (89) to S46-Rule Sub-TLV Field Mappings . 42
A.2. OPTION_S46_BR (90) to S46-BR Sub-TLV Sub-TLV Field
Mappings . . . . . . . . . . . . . . . . . . . . . . . . 42
A.3. OPTION_S46_DMR (91) to S46-DMR Sub-TLV . . . . . . . . . 42
A.4. OPTION_S46_V4V6BIND (92) to S46-V4V6Bind Sub-TLV . . . . 42
A.5. OPTION_S46_PORTPARAMS (93) to S46-PORTPARAMS Sub-TLV
Field Mappings . . . . . . . . . . . . . . . . . . . . . 43
A.6. OPTION_S46_PRIORITY (111) to S46-PORTPARAMS Sub-TLV Field
Mappings . . . . . . . . . . . . . . . . . . . . . . . . 43
A.7. OPTION_V6_PREFIX64 (113) to Softwire46-Multicast
Attribute TLV Field Mappings . . . . . . . . . . . . . . 43
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 43
1. Introduction 1. Introduction
Recently, providers have started deployment and transition to IPv6. Providers have started deploying and transitioning to IPv6. Several
Many IPv4 service continuity mechanisms based on the Address plus IPv4 service continuity mechanisms based on the Address plus Port
Port (A+P) [RFC6346] have been proposed for running IPv4 over (A+P) [RFC6346] have been proposed for providing unicast IPv4 over
IPv6-only infrastructure. Mapping of Address and Port with IPv6-only infrastructure, such as Mapping of Address and Port with
Encapsulation (MAP-E)[RFC7597] and Mapping of Address and Port using Encapsulation (MAP-E) [RFC7597], Mapping of Address and Port using
Translation (MAP-T) [RFC7599] are stateless mechanisms for running Translation (MAP-T) [RFC7599], and Lightweight 4over6 [RFC7596].
IPv4 over IPv6-only infrastructure. Lightweight 4over6 [RFC7596] is Also, [RFC8114] specifies a generic solution for the delivery of IPv4
a hub-and-spoke IPv4-over-IPv6 tunneling mechanism, with complete multicast services to IPv4 clients over an IPv6 multicast network.
independence of IPv4 and IPv6 addressing. And all these mechanisms For each of these mechanisms, DHCPv6 options have been specified for
are unicast. MAP-E, MAP-T, and Lightweight 4over6 Customer Edge (CE) client configuration.
devices may be provisioned by means of Dynamic Host Configuration
Protocol for IPv6 (DHCPv6) [RFC3315]. [RFC7598] defines DHCPv6
options for provisioning CEs for unicast softwires.
[RFC8114] specifies a generic solution for delivery of IPv4 multicast In many networks, user configuration information is stored in an
services to IPv4 clients over an IPv6 multicast network. The Authentication, Authorization, and Accounting (AAA) server. AAA
solution applies also to lw4o6 and MAP-E. [RFC8115] defines a DHCPv6 servers generally communicate using the Remote Authentication Dial In
PREFIX64 option to convey the IPv6 prefixes to be used for User Service (RADIUS) [RFC2865] protocol. In a fixed broadband
constructing IPv4-embedded IPv6 addresses to inform the mB4 element network, a Broadband Network Gateway (BNG) acts as the access gateway
of the PREFIX64. for users. That is, the BNG acts as both an AAA client to the AAA
server, and a DHCPv6 server for DHCPv6 messages sent by clients.
Throughout this document, the term BNG describes a device
implementing both the AAA client and DHCPv6 server functions.
In many networks, user configuration information may be stored in an Since IPv4-in-IPv6 softwire configuration information is stored in an
Authentication, Authorization, and Accounting (AAA) server. AAA server, and user configuration information is mainly transmitted
Currently, the AAA servers communicate using the Remote through DHCPv6 protocol between the BNGs and Customer Premises
Authentication Dial In User Service (RADIUS) [RFC2865] protocol. In Equipment (CEs, a.k.a., CPE), new RADIUS attributes are needed to
a fixed line broadband network, a Broadband Network Gateway (BNG) propagate the information from the AAA servers to BNGs.
acts as the access gateway of users. A DHCPv6 server function is
assumed to embed in the BNG that allows it to locally handle any
DHCPv6 requests initiated by hosts. So the BNG is used in this
document to describe a device which functions as both the AAA client
and DHCPv6 sever.
Since the S46 configuration information is stored in an AAA servers The RADIUS attributes defined in this document provide configuration
and user configuration information is mainly transmitted through to populate the corresponding DHCPv6 options for unicast and
DHCPv6 protocol between the BNGs and hosts/CEs, new RADIUS attributes multicast softwire configuration, specifically:
are needed to propagate the information from the AAA servers to BNGs.
The RADIUS attributes designed in this document are especially for o "Mapping of Address and Port with Encapsulation (MAP-E)" [RFC7597]
the MAP-E[RFC7597], MAP-T [RFC7599] and Lightweight 4over6 [RFC7596], (DHCPv6 options defined in [RFC7598].
providing enough information to form the corresponding DHCPv6
configuration options[RFC7598]. This document is not concerned with o "Mapping of Address and Port using Translation (MAP-T)" [RFC7599]
the RADIUS attribute for Dual-Stack Lite [RFC6333] as it is already (DHCPv6 options defined in [RFC7598].
covered in [RFC6519]. At the Section 4.9, a new RADIUS attribute is
defined to be used for carrying the Multicast-Prefixes-64, based on o "Lightweight 4over6: An Extension to the Dual-Stack Lite
the equivalent DHCPv6 option already specified in [RFC8115]. Architecture" [RFC7596] (DHCPv6 options defined in [RFC7598].
o "Unified IPv4-in-IPv6 Softwire Customer Premises Equipment (CPE):
A DHCPv6-Based Prioritization Mechanism" [RFC8026].
o "Delivery of IPv4 Multicast Services to IPv4 Clients over an IPv6
Multicast Network" [RFC8114] (DHCPv6 options defined in [RFC8115].
The contents of the attributes/sub-TLVs defined in this document have
a 1:1 mapping into the fields of the various DHCPv6 options in
[RFC7598], [RFC8026], and [RFC8115]. Table 1 shows how the DHCPv6
options map to the corresponding RADIUS attribute, or Sub-TLV. For
detailed mappings between each DHCPv6 option field and the
corresponding RAIDUS Attribute, TLV, or Sub-TLV field, see
Appendix A.
+----------------------------+--------------------------------+
| DHCPv6 Option | RADIUS Attribute/Sub-TLV |
+----------------------------+--------------------------------+
| OPTION_S46_RULE (89) | S46-Rule Sub-TLV |
| OPTION_S46_BR (90) | S46-BR Sub-TLV |
| OPTION_S46_DMR (91) | S46-DMR Sub-TLV |
| OPTION_S46_V4V6BIND (92) | S46-v4v6Bind Sub-TLV |
| OPTION_S46_PORTPARAMS (93) | S46-PORTPARAMS Sub-TLV |
| OPTION_S46_PRIORITY (111) | Softwire46-Priority Attribute |
| OPTION_V6_PREFIX64 (113) | Softwire46-Multicast Attribute |
+----------------------------+--------------------------------+
Table 1: Mapping between DHCPv6 Options and RADIUS Attributes/TLVs
A RADIUS attribute for Dual-Stack Lite [RFC6333] is defined in
[RFC6519].
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", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in "OPTIONAL" in this document are to be interpreted as described in
[RFC2119] [RFC8174] when, and only when, they appear in all capitals, [RFC2119] [RFC8174] when, and only when, they appear in all capitals,
as shown here. as shown here.
The terms DS-Lite multicast Basic Bridging BroadBand element (mB4) The reader should be familiar with the concepts and terms defined in
and the DS-Lite multicast Address Family Transition Router element [RFC7596], [RFC7597], [RFC7599], and [RFC8026].
(mAFTR) are defined in [RFC8114] .
3. Configuration process with RADIUS The terms "multicast Basic Bridging BroadBand" element (mB4) and
"multicast Address Family Transition Router" element (mAFTR) are
defined in [RFC8114].
The Figure 1 below illustrates how the RADIUS and DHCPv6 protocols S46 is used throughout to denote any of the IPv4-in-IPv6 softwire
co-operate to provide CE with softwire configuration information. mechanisms listed above. Additionally, the following abbrevitiaons
The BNG acts as a RADIUS client and a DHCPv6 server. are used within the document:
CE BNG AAA Server o BMR: Basic Mapping Rule
| | |
|-------1.DHCPv6 Solicit-------> | |
| (ORO w/container option code) | |
| |-------2.Access-Request------->|
| | (S46-Configuration attribute |
| |and/or S46-Multicast attribute)|
| |<------3.Access-Accept---------|
|<---4.DHCPv6 Advertisement----- | (S46-Configuration attribute |
| (container option) |and/or S46-Multicast attribute)|
|-------5.DHCPv6 Request------> | |
| (container Option) | |
|<------6.DHCPv6 Reply---------- | |
| (container option) | |
| | |
DHCPv6 RADIUS
Figure 1: the cooperation between DHCPv6 and RADIUS combined with o BNG: Broadband Network Gateway
RADIUS authentication
1. For unicast, the CE initiates a DHCPv6 Solicit message that o BR: Border Relay
includes an Option Request option(6) with the S46 Container option
codes as defined in[RFC7598]. As described in [RFC7598],
OPTION_S46_CONT_MAPE should be included for MAP-E,
OPTION_S46_CONT_MAPT for MAP-T, and OPTION_S46_CONT_LW for
Lightweight 4over6. For the multicast case, the the option number
for OPTION_V6_PREFIX64 (113) should be included in the client's ORO.
2. When the BNG receives the Solicit message, it SHOULD initiate a o CE: Customer Edge
RADIUS Access-Request message continaing: A User-Name attribute (1)
(with either a CE MAC address, interface-id or both), a User-password
attribute (2) (with a pre-configured shared password as defined in
[RFC2865], and the Softwire46-Configuration Attribute and/or
Softwire46-Multicast Attribute (as reuquested by the client). The
resulting message is sent to the RADIUS server.
3. If the authentication request is approved by the AAA server, and o DMR: Default Mapping Rule
suitable configuration is available, an Access-Accept message MUST be
acknowledged with the corresponding Softwire46-Configuration
Attribute or Softwire46-Multicast Attribute.
4. After receiving the Access-Accept message with the corresponding o EA: Embedded Address
Attribute, the BNG SHOULD respond to the DHCPv6 Client (CE) with an o FMR: Forwarding Mapping Rule
Advertisement message.
5. On receipt of an Advertise message containing one or more of the o PSID: Port Set Identifier
requested DHCPv6 softwire container options (94, 95, 96, or 113) the
CE MAY request configuration for the desired softwire mechanism(s) by
including the option code(s) in the ORO of the DHCPv6 Request
message.
6. When the BNG receives the client's DHCPv6 Request message, it o TLV: Type, Length, Value
constructs a Reply message containing the softwire container options
enumerated in the ORO. The recommended format of the MAC address is
defined as Calling-Station-Id (Section 3.20 in [RFC3580] without the
SSID (Service Set Identifier) portion. It is for the IEEE 802.1X
Authenticators, the Calling-Station- Id attribute is used to store
the bridge or Access Point MAC address in ASCII format.
For Lightweight 4over6 [RFC7596], the subscriber's binding state o MAP-E: Mapping of Address and Port with Encapsulation
needs to be synchronized between the clients and the lwAFTR. This
can be achieved in two ways: pre-configuring the bindings statically
on both the AAA server and lwAFTR, or on-demand whereby the AAA
server updates the lwAFTR with the subscriber's binding state as it
is created or deleted.
The authorization operation could also be done independently after o MAP-T: Mapping of Address and Port using Translation
the authentication process. In such a scenario, after the
authentication operation, the client MAY initiate a DHCPv6 Request
message that includes the corresponding S46 Container options.
Similar to the above scenario, the ORO with the corresponding S46
Container option code in the initial DHCPv6 request could be optional
if the network was planned as being S46-enabled by default. When the
BNG receives the DHCPv6 Request, it SHOULD initiate the RADIUS
Access-Request message, which MUST contain a Service-Type attribute
(6) with the value Authorize Only (17), the corresponding
Softwire46-Configuration Attribute, and a State attribute obtained
from the previous authentication process according to [RFC5080]. If
the authorization request is approved by an AAA server, an Access-
Accept message MUST be acknowledged with the corresponding
Softwire46-Configuration Attribute. The BNG SHOULD then send the
DHCPv6 Reply message containing the S46 Container option.
There are three notices need to be considered: 3. Extensions of RADIUS Attributes and TLVs
o In both the above-mentioned scenarios, Message-authenticator (type This section defines the following attributes:
80) [RFC2869] SHOULD be used to protect both Access-Request and
Access-Accept messages.
o If the BNG does not receive the corresponding 1. Softwire46-Configuration Attribute (Section 3.1):
Softwire46-Configuration Attribute in the Access-Accept message it
MAY fallback to a pre-configured default S46 configuration, if
any. If the BNG does not have any pre-configured default S46
configuration, or if the BNG receives an Access-Reject, then S46
connection cannot be established.
o As specified in [RFC3315], section 18.1.4, "Creation and This attribute carries the configuration information for MAP-E,
Transmission of Rebind Messages ", if the DHCPv6 server to which MAP-T, and Lightweight 4over6. The configuration information for
the DHCPv6 Renew message was sent at time T1 has not responded by each S46 mechanism is carried in the corresponding Softwire46
time T2, the CE (DHCPv6 client) SHOULD enter the Rebind state and TLVs. Different Sub-TLVs are required for each type of
attempt to contact any available server. In this situation, the Softwire46 TLVs.
secondary BNG receiving the DHCPv6 message MUST initiate a new
Access-Request message towards the AAA server. The secondary BNG
MAY include the Softwire46-Configuration Attribute in its Access-
Request message.
In both the above-mentioned scenarios, Message-authenticator (type 2. Softwire46-Priority Attribute (Section 3.2):
80) [RFC2869] SHOULD be used to protect both Access-Request and
Access-Accept messages.
If the BNG does not receive the corresponding Depending on the deployment scenario, a client may support
Softwire46-Configuration Attribute in the Access-Accept message it several different S46 mechanisms and so request configuration for
MAY fallback to a pre-configured default S46 configuration, if any. more than one S46 mechanism at a time. The Softwire46-Priority
If the BNG does not have any pre-configured default S46 Attribute contains information allowing the client to prioritize
configuration, or if the BNG receives an Access-Reject, then S46 which mechanism to use, corresponding to OPTION_S46_PRIORITY
connection cannot be established. defined in [RFC8026].
As specified in [RFC3315], section 18.1.4, "Creation and Transmission 3. Softwire46-Multicast Attribute (Section 3.3):
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
(DHCPv6 client) SHOULD enter the Rebind state and attempt to contact
any available server. In this situation, the secondary BNG receiving
the DHCPv6 message MUST initiate a new Access-Request message towards
the AAA server. The secondary BNG MAY include the
Softwire46-Configuration Attribute in its Access-Request message.
4. Attributes This attribute conveys the IPv6 prefixes to be used in [RFC8114]
to synthesize IPv4-embedded IPv6 addresses. The BNG uses the
IPv6 prefixes returned in the RADIUS Softwire46-Multicast
Attribute to populate the DHCPv6 PREFIX64 Option [RFC8115].
This section defines the Softwire46-Configuration Attribute, All of these attributes are allocated from the RADIUS "Extended Type"
Softwire46-Priority Attribute, and Softwire46-Multicast Attribute. code space per [RFC6929].
The attribute design follows [RFC6158] and refers to [RFC6929].
The Softwire46-Configuration Attribute carries the configuration All of these attribute designs follow [RFC6158] and [RFC6929].
information for MAP-E, MAP-T, and Lightweight 4over6. The
configuration information for each S46 mechanism is carried in the
corresponding Softwire46 TLVs. Different Sub TLVs are required for
each type of Softwire46 TLVs. The RADIUS attribute for Dual-Stack
Lite [RFC6333] is defined in [RFC6519].
A client may be capable of supporting several different S46 3.1. Softwire46-Configuration Attribute
mechanisms. Depending on the deployment scenario, a client might
request for more than one S46 mechanism at a time. The
Softwire46-Priority Attribute contains information allowing the
client to prioritize which mechanism to use, corresponding to
OPTION_S46_PRIORITY defined in [RFC8026].
The Softwire46-Multicast Attirbute conveys the IPv6 prefixes to be This attribute is of type "TLV", as defined in the RADIUS Protocol
used in [RFC8114] to synthesize IPv4-embedded IPv6 addresses. The Extensions [RFC6929]. It contains some sub-attributes, with the
BNG SHALL use the IPv6 prefixes returned in the RADIUS following requirements:
Softwire46-Multicast Attirbute to populate the DHCPv6 PREFIX64 Option
[RFC8115].
4.1. Softwire46-Configuration Attribute The Softwire46-Configuration Attribute MUST contain one or more of
the following: S46-MAP-E TLV, S46-MAP-T TLV, and/or S46-
Lightweight-4over6 TLV.
This attribute is of type "tlv" as defined in the RADIUS Protocol The Softwire46-Configuration Attribute conveys the configuration
Extensions [RFC6929]. It contains some sub-attributes, and the information for MAP-E, MAP-T, or Lightweight 4over6. The BNG
requirements are as follows: SHALL use the configuration information returned in the RADIUS
attribute to populate the DHCPv6 Softwire46 Container Option
defined in Section 5 of [RFC7598].
The Softwire46-Configuration Attribute MAY contain the S46-MAP-E TLV The Softwire46-Configuration Attribute MAY appear in an Access-
(see Section 4.2). Accept packet. It MAY also appear in an Access-Request packet.
The Softwire46-Configuration Attribute MAY contain the S46-MAP-T TLV The Softwire46-Configuration Attribute MAY appear in a CoA-Request
(see Section 4.2). packet.
The Softwire46-Configuration Attribute MAY contain the S46- The Softwire46-Configuration Attribute MAY appear in an
Lightweight-4over6 TLV (see Section 4.2). Accounting-Request packet.
The Softwire46-Configuration Attribute MUST contain at least one The Softwire46-Configuration Attribute MUST NOT appear in any
Softwire46 TLV in the attribute. other RADIUS packet.
The Softwire46-Configuration Attribute conveys the configuration The Softwire46-Configuration Attribute MUST only encapsulate one
information for MAP-E, MAP-T, and Lightweight 4over6. The BNG SHALL or more of the Softwire46 TLVs defined in this document.
use the configuration information returned in the RADIUS Attribute to
populate the DHCPv6 Softwire46 Container Option defined in section 5
of [RFC7598].
The Softwire46-Configuration Attribute MAY appear in an Access-Accept The Softwire46-Configuration Attribute is structured as follows:
packet. It MAY also appear in an Access-Request packet.
The Softwire46-Configuration Attribute MAY appear in a CoA-Request 0 1 2 3
packet. 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 | Extended-Type | Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Softwire46-Configuration Attribute MAY appear in an Accounting- Type
Request packet. 241 (To be confirmed by IANA).
The Softwire46-Configuration Attribute MUST NOT appear in any other Length
RADIUS packet. Indicates the total length, in bytes, of all fields of
this attribute, including the Type, Length, Extended-Type,
and the entire length of the embedded TLVs.
The Softwire46-Configuration Attribute can only encapsulate Extended-Type
Softwire46 TLV. The Softwire46-Configuration Attribute is structured TBD1
as follows:
0 1 2 3 Value
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 Contains one or more of the following TLVs. Each TLV type
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ may appear at most once:
| Type | Length | Extended-Type | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
241 (To be confirmed by IANA).
Length
This field indicates the total length in bytes of all fields of
this attribute, including the Type, Length, Extended-Type, and the
entire length of the embedded TLVs.
Extended-Type
TBD1
Value
This field contains a set of TLVs as follows:
S46-MAP-E TLV
This TLV contains the S46-Rule Sub TLV, S46-BR Sub TLV,
S46-PORTPARAMS Sub TLV. Refer to Section 4.4.
S46-MAP-T TLV
This TLV contains the S46-Rule Sub TLV, S46-DMR Sub TLV,
S46-PORTPARAMS Sub TLV. Refer to Section 4.4.
S46-Lightweight-4over6 TLV
This TLV contains the S46-BR Sub TLV,S46-V4V6Bind Sub
TLV, S46-PORTPARAMS TLV. Refer to Section 4.4.
Softwire46-Configuration Attribute is associated with the following S46-MAP-E TLV
identifier: 241.Extended-Type(TBD1). For configuring MAP-E clients. For the construction of
this TLV, Refer to Section 3.1.1.1.
4.2. Softwire46 TLVs S46-MAP-T TLV
For configuring MAP-T clients. For the construction of
this TLV, Refer to Section 3.1.1.2.
The Softwire46 TLV can only be encapsulated in the S46-Lightweight-4over6 TLV
For configuring Lightweight 4over6 clients. For the
construction of this TLV, Refer to Section 3.1.1.3.
The Softwire46-Configuration Attribute is associated with the
following identifier: 241.Extended-Type(TBD1).
3.1.1. Softwire46 TLVs
The Softwire46 TLVs can only be encapsulated in the
Softwire46-Configuration Attribute. Depending on the deployment Softwire46-Configuration Attribute. Depending on the deployment
scenario, a client might request for more than one transition scenario, a client might request for more than one transition
mechanism at a time, there MUST be at least one Softwire46 TLV mechanism at a time. There MUST be at least one Softwire46 TLV
encapsulated in one Softwire46-Configuration Attribute. There MUST encapsulated in one Softwire46-Configuration Attribute. There MUST
be at most one instance of each type of Softwire46 TLV encapsulated be at most one instance of each type of Softwire46 TLV encapsulated
in one Softwire46-Configuration Attribute. in one Softwire46-Configuration Attribute.
There are three types of Softwire46 TLV, namely S46-MAP-E TLV, There are three types of Softwire46 TLV, namely:
S46-MAP-T TLV, S46-Lightweight 4over6 TLV. Each type of Softwire46
TLV contains a number of sub TLVs, defined in Section 4.4. The
hierarchy of the Softwire46 TLV is shown in Figure 2. Section 4.3
describes which Sub TLVs are mandatory, optional, or not permitted
for each defined Softwire46 TLV.
/ 1. S46-MAP-E TLV (Section 3.1.1.1)
/ | 1.Rule-IPv6-Prefix
| | Sub-TLV
| 1.S46-Rule Sub TLV-----+ 2.Rule-IPv4-Prefix
S46-MAP-E TLV | | Sub-TLV
| 2.S46-BR Sub TLV | 3.EA Length Sub-
S46-MAP-T TLV---------+ 3.S46-DMR Sub TLV \ TLV
|
S46-Lightweight | /1.IPv4-address
-4over6 TLV | | Sub-TLV
| 4.S46-v4v6Bind Sub TLV --| 2.Bind-IPv6-Prefix
| \ Sub-TLV
| /1.PSID-offset
| | Sub-TLV
| 5.S46-PORTPARAMS Sub TLV --| 2.PSID-len
| | Sub-TLV
\ \3.PSID Sub-
TLV
Figure 2: Softwire46 TLVs Hierarchy 2. S46-MAP-T TLV (Section 3.1.1.2)
The format of S46-MAP-E TLV is shown as below: 3. S46-Lightweight 4over6 TLV (Section 3.1.1.3)
0 1 2 3 Each type of Softwire46 TLV contains a number of sub-TLVs, defined in
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 Section 3.1.3. The hierarchy of the Softwire46 TLVs is shown in
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1. Section 3.1.2 describes which Sub-TLVs are mandatory,
| TLV-Type | TLV-Length | TLV-Value ... optional, or not permitted for each defined Softwire46 TLV.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
TBD2
TLV-Length
The TLV-Length field is one octet and indicates the length of this
TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
It MUST contain the S46-Rule Sub TLV, defined in Section 4.4.1
It MUST contain the S46-BR Sub TLV, defined in Section 4.4.2
It MAY contain the S46-PORTPARAMS Sub TLV, defined in Section 4.4.5
The format of S46-MAP-T TLV is shown as below: /1.Rule-IPv6-Prefix
S / | Sub-TLV
o / | 1.S46-Rule Sub-TLV ----+ 2.Rule-IPv4-Prefix
f | S46-MAP-E TLV-----+ | Sub-TLV
t | | 2.S46-BR Sub-TLV | 3.EA Length Sub-
w | | \ TLV
i | | /1.PSID-offset
r | | | Sub-TLV
e | | 5.S46-PORTPARAMS Sub-TLV ----+ 2.PSID-len
- | \ | Sub-TLV
C | | 3.PSID Sub-
o | \ TLV
n |
f | /1.Rule-IPv6-Prefix
i | / | Sub-TLV
g | | 1.S46-Rule Sub-TLV ----+ 2.Rule-IPv4-Prefix
u | S46-MAP-T TLV ----+ | Sub-TLV
r | | 3.S46-DMR Sub-TLV | 3.EA Length Sub-
a | | \ TLV
t | | /1.PSID-offset
i | | | Sub-TLV
o | | 5.S46-PORTPARAMS Sub-TLV ----+ 2.PSID-len
n | \ | Sub-TLV
| | 3.PSID Sub-
A | \ TLV
t |
t | /1.IPv4-address
r | / | Sub-TLV
i | | 4.S46-v4v6Bind Sub-TLV ----+ 2.Bind-IPv6-Prefix
b | S46-Lightweight | \ Sub-TLV
u | -4over6 TLV ------+ /1.PSID-offset
t \ | | Sub-TLV
e | 5.S46-PORTPARAMS Sub-TLV ----+ 2.PSID-len
\ | Sub-TLV
| 3.PSID Sub-
\ TLV
0 1 2 3 Figure 1: Softwire46 TLV Hierarchy
3.1.1.1. S46-MAP-E TLV Format
The format of the S46-MAP-E TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
TBD2
TLV-Length
One octet long. Indicates the length of this TLV, including
the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
Contains a set of Sub-TLVs, with the following requirements:
It MUST contain the S46-Rule Sub-TLV, defined in Section 3.1.3.1.
It MUST contain the S46-BR Sub-TLV, defined in Section 3.1.3.2.
It MAY contain the S46-PORTPARAMS Sub-TLV, defined in
Section 3.1.3.5.
3.1.1.2. S46-MAP-T TLV Format
The format of the S46-MAP-T TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ... | TLV-Type | TLV-Length | TLV-Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
TBD3
TLV-Length
The TLV-Length field is one octet and indicates the length of this
TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
It MUST contain the S46-Rule Sub TLV, defined in Section 4.4.1
It MUST contain the S46-DMR Sub TLV, defined in Section 4.4.3
It MAY contain the S46-PORTPARAMS Sub TLV, defined in Section 4.4.5
The format of S46-Lightweight 4over6 TLV is shown as below: TLV-Type
TBD3
0 1 2 3 TLV-Length
One octet long. Indicates the length of this TLV, including
the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
Contains a set of Sub-TLVs, with the following requirements:
It MUST contain the S46-Rule Sub-TLV, defined in
Section 3.1.3.1.
It MUST contain the S46-DMR Sub-TLV, defined in
Section 3.1.3.3.
It MAY contain the S46-PORTPARAMS Sub-TLV, defined in
Section 3.1.3.5.
3.1.1.3. S46-Lightweight-4over6 TLV Format
The format of the S46-Lightweight-4over6 TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ... | TLV-Type | TLV-Length | TLV-Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
TBD4
TLV-Length
The TLV-Length field is one octet and indicates the length of this
TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
It MUST contain the S46-BR Sub TLV, defined in Section 4.4.2
It MAY contain the S46-V4V6Bind Sub TLV, defined in Section 4.4.4
It MAY contain the S46-PORTPARAMS Sub TLV, defined in Section 4.4.5
4.3. Softwire46 Sub TLVs TLV-Type
TBD4
The table below shows which encapsulated Sub TLVs are mandatory, TLV-Length
optional, or not permitted for each defined Softwire46 TLV. One octet long. Indicates the length of this TLV, including
the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
Contains a set of Sub-TLVs as follows:
It MUST contain the S46-BR Sub-TLV, defined in
Section 3.1.3.2.
It MUST contain the S46-V4V6Bind Sub-TLV, defined in
Section 3.1.3.4.
It MAY contain the S46-PORTPARAMS Sub-TLV, defined in
Section 3.1.3.5.
3.1.2. Softwire46 Sub-TLVs
Table 2 shows which encapsulated Sub-TLVs are mandatory, optional, or
not permitted for each defined Softwire46 TLV.
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
| Sub TLV | MAP-E | MAP-T | Lightweight 4over6 | | Sub-TLV | 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 | M |
| S46-V4V6Bind | N/P | N/P | O |
+----------------+-------+-------+--------------------+
| S46-PORTPARAMS | O | O | O | | S46-PORTPARAMS | O | O | O |
+----------------+-------+-------+--------------------+ +----------------+-------+-------+--------------------+
M - Mandatory, O - Optional, N/P - Not Permitted M - Mandatory, O - Optional, N/P - Not Permitted
According to the table described above, the Fig.2 had beed structured Table 2: Softwire46 Sub-TLVs
into Figure 3, Figure 4 and Figure 5:
/ (Mandatory) /1.Rule-IPv6-Prefix 3.1.3. Format of the Softwire46 Sub-TLVs
| | sub-TLV
| 1.S46-Rule ------------+ 2.Rule-IPv4-Prefix
| Sub TLV | sub-TLV
| | 3.EA-Length
S46-MAP-E TLV--------+ \ sub-TLV
| 2.S46-BR Sub TLV
- - - - - - - - - - - - - - - - - - - - - - - - -
| (Optional) /1.PSID-offset
| | sub-TLV
| 3.S46-PORTPARAMS -------+ 2.PSID-len
| Sub TLV | sub-TLV
| | 3.PSID
\ \ sub-TLV
Figure 3: S46-MAP-E TLV Hierarchy 3.1.3.1. S46-Rule Sub-TLV
/ (Mandatory) /1.Rule-IPv6-Prefix
| | sub-TLV
| 1.S46-Rule ------------+ 2.Rule-IPv4-Prefix
| Sub TLV | sub-TLV
| | 3.EA-Length
S46-MAP-T TLV--------+ \ sub-TLV
| 2.S46-DMR Sub TLV
- - - - - - - - - - - - - - - - - - - - - - - - -
| (Optional) /1.PSID-offset
| | sub-TLV
| 3.S46-PORTPARAMS -------+ 2.PSID-len
| Sub TLV | sub-TLV
| | 3.PSID
\ \ sub-TLV
Figure 4: S46-MAP-T TLV Hierarchy The S46-Rule Sub-TLV can only be encapsulated in the S46-MAP-E TLV
(Section 3.1.1.1) or the S46-MAP-T TLV (Section 3.1.1.2). Depending
on the deployment scenario, one Basic Mapping Rule (BMR) and zero or
more Forwarding Mapping Rules (RMRs) MUST be included in one
S46-MAP-E TLV or S46-MAP-T TLV.
/ (Mandatory) Each type of S46-Rule Sub-TLV also contains a number of Sub-TLVs,
| including Rule-IPv6-Prefix Sub-TLV, Rule-IPv4-Prefix Sub-TLV, and EA-
| 1.S46-BR Sub TLV Length Sub-TLV. The structure of the Sub-TLVs for the S46-Rule Sub-
- - - - - - - - - - - - - - - - - - - - - - - - - TLV is defined in Section 3.1.4.
| (Optional)
S46-Lightweight ---+ /1.IPv4-address
--4over6 TLV | | sub-TLV
| 2.S46-v4v6Bind Sub TLV --| 2.Bind-IPv6-Prefix
| \ sub-TLV
| /1.PSID-offset
| | sub-TLV
| 3.S46-PORTPARAMS -------+ 2.PSID-len
| Sub TLV | sub-TLV
| | 3.PSID-sub-TLV
\ \
Figure 5: S46-Lightweight 4over6 TLV Hierarchy Defining multiple TLV-types achieves the same design goals as the
"S46 Rule Flags" defined in Section 4.1 of [RFC7598]. Using TLV-type
set to 2 is equivalent to setting the F-flag in the OPTION_S46_RULE
S46 Rule Flags field.
4.4. The format of Softwire46 Sub TLVs 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.4.1. S46-Rule Sub TLV TLV-Type
TBD7 Basic Mapping Rule only (not to be used for forwarding)
TBD8 Forwarding Premitted Mapping Rule (may be used for
forwarding. Can also be a Basic Mapping Rule)
The S46-Rule Sub TLV can only be encapsulated in the S46-MAP-E TLV or TLV-Length
the S46-MAP-T TLV. Depending on deployment scenario, one Basic One octet long. Indicates the length of this TLV, including
Mapping Rule and zero or more Forwarding Mapping Rules MUST be the TLV-Type, TLV-Length, and TLV-Value fields.
included in one S46-MAP-E TLV or S46-MAP-T TLV.
Each type of S46-Rule Sub TLV also contains a number of sub-TLVs, TLV-Value
including Rule-IPv6-Prefix sub-TLV, Rule-IPv4-Prefix sub-TLV, and EA- This field contains a set of TLVs as follows:
Length sub-TLV. The structure of the sub-TLVs for S46-Rule Sub TLV
is defined in section 4.5.
0 1 2 3 Rule-IPv6-Prefix Sub-TLV
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 This TLV contains the IPv6 prefix for use in the MAP rule.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Refer to Section 3.1.4.1.
| TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
1 Basic Mapping Rule (Not Forwarding Mapping Rule)
2 Forwarding Mapping Rule (Not Basic Mapping Rule)
3 Basic & Forwarding Mapping Rule
TLV-Length
The TLV-Length field is one octet and indicates the length of this
TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
Rule-IPv6-Prefix sub-TLV
This TLV contains an IPv6 prefix that appears in a MAP rule.
Refer to Section 4.5.1.
Rule-IPv4-Prefix sub-TLV
This TLV contains an IPv4 prefix that appears in a MAP rule.
Refer to Section 4.5.2.
EA-Length sub-TLV
This TLV contains the information of Embedded-Address(EA)
bit length. Refer to Section 4.5.3.
4.4.2. S46-BR Sub TLV Rule-IPv4-Prefix Sub-TLV
This TLV contains the IPv4 prefix for use in the MAP rule.
Refer to Section 3.1.4.2.
The S46-BR Sub TLV can only be encapsulated in the S46-MAP-E TLV or EA-Length Sub-TLV
S46-Lightweight 4over6 TLV. There MUST be at least one S46-BR Sub This TLV contains the Embedded-Address (EA) bit length.
TLV included in each S46-MAP-E TLV or S46-Lightweight--4over6 TLV. Refer to Section 3.1.4.1.
3.1.3.2. S46-BR Sub-TLV
The S46-BR Sub-TLV can only be encapsulated in the S46-MAP-E TLV
(Section 3.1.1.1) or S46-Lightweight-4over6 TLV (Section 3.1.1.3).
There MUST be at least one S46-BR Sub-TLV included in each S46-MAP-E
TLV or S46-Lightweight-4over6 TLV.
The format of the S46-BR Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | | | TLV-Type | TLV-Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| | | |
| BR-ipv6-address | | br-ipv6-address |
| | | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
4 TBD9
TLV-Length TLV-Length
18 octets 18 octets
BR-ipv6-address
IPv6 address. A fixed-length field of 16 octets that specifies
the IPv6 address for the S46 BR.
4.4.3. S46-DMR Sub TLV br-ipv6-address
IPv6 address. A fixed-length field of 16 octets that
specifies the IPv6 address for the S46 Border Relay (BR).
The S46-DMR Sub TLV can only appear in the S46-MAP-T TLV. There MUST 3.1.3.3. S46-DMR Sub-TLV
be exactly one S46-DMR Sub TLV included in one S46-MAP-T TLV.
The S46-DMR Sub-TLV may only appear in the S46-MAP-T TLV
(Section 3.1.1.2). There MUST be exactly one S46-DMR Sub-TLV
included in one S46-MAP-T TLV.
The format of the S46-DMR Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | Reserved |dmr-prefix6-len| | TLV-Type | TLV-Length | Reserved |dmr-prefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| dmr-ipv6-prefix | | dmr-ipv6-prefix |
| (variable length) | . (variable length) .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
5 TBD10
TLV-Type
TLV-Length
4 + length of dmr-ipv6-prefix specified in octets 4 + length of dmr-ipv6-prefix specified in octets
Reserved Reserved
This field is reserved. It should be set to all zeros. This field is reserved. It should be set to all zeros.
dmr-prefix6-len dmr-prefix6-len
An 8 bits long field that expresses the bitmask length of 8-bits long. Expresses the bitmask length of the IPv6 prefix
the IPv6 prefix specified in the dmr-ipv6-prefix field. specified in the dmr-ipv6-prefix field. Allowed values range
Allowed values range from 0 to 96. from 0 to 96.
dmr-ipv6-prefix dmr-ipv6-prefix
IPv6 Prefix. A variable-length field specifying the IPv6 IPv6 Prefix. A variable-length field specifying the IPv6
prefix or address for the BR. This field is right-padded prefix for the BR. This field is right-padded with zeros to
with zeros to the nearest octet boundary when the nearest octet boundary when dmr-prefix6-len is not
dmr-prefix6-len is not divisible by 8. divisible by 8.
4.4.4. S46-V4V6Bind Sub TLV 3.1.3.4. S46-V4V6Bind Sub-TLV
The S46-V4V6Bind Sub TLV can only be encapsulated in the S46- The S46-V4V6Bind Sub-TLV may only be encapsulated in the S46-
Lightweight-4over6 TLV. There MUST be exactly one S46-V4V6Bind Sub Lightweight-4over6 TLV (Section 3.1.1.3). There MUST be exactly one
TLV included in each S46-Lightweight-4over6 TLV. S46-V4V6Bind Sub-TLV included in each S46-Lightweight-4over6 TLV.
0 1 2 3 The format of the S46-V4V6Bind Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
6
TLV-Length
The TLV-Length field is one octet and indicates the length of this
TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
IPv4-address sub-TLV
This TLV contains an IPv4 address that MAY be used to
specify the full or shared IPv4 address of the CE.
Refer to Section 4.6.1.
Bind-IPv6-Prefix sub-TLV
This TLV contains the IPv6 prefix or address for the S46 CE.
Refer to Section 4.6.2.
4.4.5. S46-PORTPARAMS Sub TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The S46-PORTPARAMS Sub TLV specifies optional port set information TLV-Type
that MAY be provided to CEs. The S46-PORTPARAMS Sub TLV can be TBD11
included optionally by each type of Softwire46 TLVs .
0 1 2 3 TLV-Length
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 8-bits long. Indicates the length of this TLV, including
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ the TLV-Type, TLV-Length, and TLV-Value fields.
| TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
7
TLV-Length
The TLV-Length field is one octet and indicates the length of this
TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
PSID-offset sub-TLV
This TLV pecifies the numeric value for the S46 algorithm's
excluded port range/offset bits (a bits).
Refer to Section 4.7.1.
PSID-len sub-TLV
This TLV specifies the number of significant bits in the
PSID field (also known as 'k').
Refer to Section 4.7.2.
PSID sub-TLV
This TLV specifies PSID value.
Refer to Section 4.7.3.
4.5. Sub-TLVs for S46-Rule Sub TLV TLV-Value
This field contains a set of Sub-TLVs as follows:
There are three types of S46-Rule sub-TLVs, namely Basic Mapping IPv4-address Sub-TLV
Rule, Forwarding Mapping Rule, Basic and Forwarding Mapping Rule. This TLV contains an IPv4 address, used to specify the full
Each type of S46-Rule Sub TLV also contains a number of sub-TLVs. or shared IPv4 address of the CE. Refer to Section 3.1.5.1.
The Rule-IPv6-Prefix sub-TLV is necessary for every type of S46-Rule
Sub TLV. It should appear for once and only once.
4.5.1. Rule-IPv6-Prefix sub-TLV Bind-IPv6-Prefix Sub-TLV
This TLV contains an IPv6 prefix used to indicate which
configured prefix the S46 CE should use for constructing
the softwire. Refer to Section 3.1.5.2.
The Rule-IPv6-Prefix sub-TLV is necessary for every S46-Rule Sub TLV. 3.1.3.5. S46-PORTPARAMS Sub-TLV
There MUST be exactly one Rule-IPv6-Prefix sub-TLV encapsulated in
each type of S46-Rule Sub TLV.
The Rule-IPv6-Prefix sub-TLV follows the framed IPv6 prefix designed The S46-PORTPARAMS Sub-TLV is optional. It is used to specify port
set information for IPv4 address sharing between clients. The
S46-PORTPARAMS Sub-TLV MAY be included in any of the Softwire46 TLVs.
The format of the S46-PORTPARAMS Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | TLV-Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
TBD12
TLV-Length
8-bits long. Indicates the length of this TLV, including
the TLV-Type, TLV-Length, and TLV-Value fields.
TLV-Value
This field contains a set of TLVs as follows:
PSID-offset Sub-TLV
This TLV specifies the numeric value for the S46 algorithm's
excluded port range/offset bits (a bits). Refer to
Section 3.1.6.1.
PSID-len Sub-TLV
This TLV specifies the number of significant bits in the
PSID field (also known as 'k'). Refer to Section 3.1.6.2.
PSID Sub-TLV
This TLV specifies PSID value. Refer to Section 3.1.6.3.
3.1.4. Sub-TLVs for S46-Rule Sub-TLV
There are two types of S46-Rule: the Basic Mapping Rule and the
Forwarding Mapping Rule, indicated by the value in the TLV-Type field
of the S46-Rule Sub-TLV (see Section 3.1.3.1).
Each type of S46-Rule Sub-TLV also contains a number of Sub-TLVs as
detailed in the following sub-sections.
3.1.4.1. Rule-IPv6-Prefix Sub-TLV
The Rule-IPv6-Prefix Sub-TLV is REQUIRED for every S46-Rule Sub-TLV.
There MUST be exactly one Rule-IPv6-Prefix Sub-TLV encapsulated in
each type of S46-Rule Sub-TLV.
The Rule-IPv6-Prefix Sub-TLV follows the framed IPv6 prefix designed
in [RFC3162] and [RFC8044]. in [RFC3162] and [RFC8044].
The format of the Rule-IPv6-Prefix Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | Reserved |ruleprefix6-len| | TLV-Type | TLV-Length | Reserved |ruleprefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| rule-ipv6-prefix | | rule-ipv6-prefix |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 18, line 15 skipping to change at page 20, line 15
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | Reserved |ruleprefix6-len| | TLV-Type | TLV-Length | Reserved |ruleprefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| rule-ipv6-prefix | | rule-ipv6-prefix |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
8 TBD13
TLV-Length TLV-Length
20 20
Reserved Reserved
This field is reserved. It is always set to zero. This field This field is reserved. It is always set to zero. This field
is one octet in length. is one octet in length.
Ruleprefix6-len Ruleprefix6-len
The length of 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
IPv6 Prefix. A 128 bits long field that specifies an IPv6 IPv6 Prefix. 128-bits long field that specifying an IPv6
prefix that appears in a MAP rule. prefix appearing in the MAP rule.
4.5.2. Rule-IPv4-Prefix Sub-TLV 3.1.4.2. Rule-IPv4-Prefix Sub-TLV
This Sub-TLV is used to convey the MAP Rule IPv4 prefix. The format
of the Rule-IPv4-Prefix Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | Reserved |ruleprefix4-len| | TLV-Type | TLV-Length | Reserved |ruleprefix4-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| rule-ipv4-prefix | | rule-ipv4-prefix |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
9 TBD14
TLV-Length TLV-Length
8 8
Reserved Reserved
This field is reserved. It is always set to zero. This field 8-bits long. This field is reserved and is always set to
is one octet in length. zero.
Ruleprefix4-len
The length of IPv4 prefix, specified in the rule-ipv4-prefix ruleprefix4-len
field, expressed in bits. 8-bits long. The length of IPv4 prefix specified in the
rule-ipv4-prefix field, expressed in bits.
rule-ipv4-prefix rule-ipv4-prefix
IPv4 Prefix. A 32 bits long field that specifies an IPv4 32-bits long. Specifies the IPv4 prefix appearing in the MAP
prefix that appears in a MAP rule. rule.
4.5.3. EA-Length Sub-TLV 3.1.4.3. EA-Length Sub-TLV
This Sub-TLV is used to convey the Embedded-Address(EA) bit length.
The format of the EA-Length Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | EA-len | | TLV-Type | TLV-Length | EA-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
10 TBD15
TLV-Length TLV-Length
4 4
EA-len EA-len
Integer. A 16 bits long field that specifies the 16-bits long. Specifies the Embedded-Address(EA) bit length.
Embedded-Address(EA) bit length. Allowed values range Allowed values range from 0 to 48.
from 0 to 48.
4.6. Sub-TLVs for S46-v4v6Bind Sub TLV 3.1.5. Sub-TLVs for S46-v4v6Bind Sub-TLV
4.6.1. The IPv4-address sub-TLV 3.1.5.1. The IPv4-address Sub-TLV
The IPv4-address sub-TLV MAY be used to specify the full or shared The IPv4-address Sub-TLV MAY be used to specify the full or shared
IPv4 address of the CE. IPv4 address of the CE.
The format of the IPv4-address Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | ipv4-address | | TLV-Type | TLV-Length | ipv4-address .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ipv4-address | . ipv4-address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
11 TBD16
TLV-Length TLV-Length
6 6
ipv4-address ipv4-address
IPv4 address. A 32 bits long field that specifies an IPv4 32-bits long. Specifies the IPv4 address to appear in the
address that appears in the V4V6Bind Option. S46-V4V6Bind Sub-TLV (Section 3.1.3.4).
4.6.2. The Bind-IPv6-Prefix Sub-TLV 3.1.5.2. The Bind-IPv6-Prefix Sub-TLV
The bind-ipv6-prefix field specified in this field is used by the CE The Bind-IPv6-Prefix Sub-TLV is used by the CE to identify the
to identify the correct prefix to be used for the tunnel source. correct IPv6 prefix to be used as the tunnel source.
The format of the Bind-IPv6-Prefix Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | Reserved |bindprefix6-len| | TLV-Type | TLV-Length | Reserved |bindprefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| bind-ipv6-prefix | | bind-ipv6-prefix |
| (variable length) | | (variable length) |
| | . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
12 TBD17
TLV-Length TLV-Length
20 4 + length of bind-ipv6-prefix specified in octets
Reserved Reserved
This field is reserved. It is always set to zero. This field 8-bits long. This field is reserved and is always set
is one octet in length. to zero.
bindprefix6-len bindprefix6-len
Integer. An 8 bits long field that expresses the bitmask 8-bits long. Expresses the bitmask length of the IPv6
length of the IPv6 prefix specified in the bind-ipv6-prefix prefix specified in the bind-ipv6-prefix field. Allowed
field. Allowed values range from 0 to 96. values range from 0 to 128.
bind-ipv6-prefix bind-ipv6-prefix
IPv6 prefix. A variable-length field specifying the IPv6 IPv6 prefix. A variable-length field specifying the IPv6
prefix or address for the S46 CE. This field is right-padded prefix or address for the S46 CE. This field is
with zeros to the nearest octet boundary when bindprefix6-len right-padded with zeros to the nearest octet boundary
is not divisible by 8. when bindprefix6-len is not divisible by 8.
4.7. Sub-TLVs for S46-PORTPARAMS Sub TLV 3.1.6. Sub-TLVs for S46-PORTPARAMS Sub-TLV
4.7.1. The PSID-offset sub-TLV 3.1.6.1. The PSID-offset Sub-TLV
This Sub-TLV is used to convey the Port Set Identifier offset as
defined in [RFC7597].
The format of the PSID-offset Sub-TLV is shown below:
0 1 2 0 1 2
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 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | PSID-Offset | | TLV-Type | TLV-Length | PSID-Offset |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
13 TBD18
TLV-Length TLV-Length
3 3
PSID-Offset PSID-Offset
Integer. An 8 bits long field that specifies the Integer. An 8-bits long field that specifies the
numeric value for the S46 algorithm's excluded numeric value for the S46 algorithm's excluded
port range/offset bits (a bits), as per Section 5.1 port range/offset bits (a bits), as per Section 5.1
of RFC7597. Allowed values are between 0 and 15. of RFC7597. Allowed values are between 0 and 15.
Default values for this field are specific to the Default values for this field are specific to the
Softwire mechanism being implemented and are defined Softwire mechanism being implemented and are defined
in the relevant specification document. in the relevant specification document.
4.7.2. The PSID-len sub-TLV 3.1.6.2. The PSID-len Sub-TLV
This Sub-TLV is used to convey the PSID length as defined in
[RFC7597].
The format of the PSID-len Sub-TLV is shown below:
0 1 2 0 1 2
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 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | PSID-len | | TLV-Type | TLV-Length | PSID-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
14 TBD19
TLV-Length TLV-Length
3 3
PSID-len PSID-len
Integer. An 8 bits long field that specifies the 8-bits long field specifying the number of
number of significant bits in the PSID field (also significant bits in the PSID field (also known as
known as 'k'). When set to 0, the PSID field is to 'k'). When set to 0, the PSID field is to be ignored.
be ignored. After the first 'a' bits, there are k After the first 'a' bits, there are k bits in the
bits in the port number representing the value of port number representing the value of the PSID.
the PSID. Subsequently, the address sharing ratio Subsequently, the address sharing ratio would be
would be 2 ^k. 2^k.
4.7.3. The PSID sub-TLV 3.1.6.3. The PSID Sub-TLV
This Sub-TLV is used to convey the PSID as defined in [RFC7597].
The format of the PSID Sub-TLV is shown below:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | TLV-Length | PSID | | TLV-Type | TLV-Length | PSID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type TLV-Type
15 TBD20
TLV-Length TLV-Length
4 (the length of the PSID Sub Option) 4
PSID (Port-set ID) PSID (Port-set ID)
Integer. An explicit 16-bit (unsigned word) PSID value. Integer. An explicit 16-bit (unsigned word) PSID value.
The PSID value algorithmically identifies a set of ports The PSID value algorithmically identifies a set of ports
assigned to a CE. The first k bits on the left of this assigned to a CE. The first k bits on the left of this
2-octet field is the PSID value. The remaining (16-k) bits 2-octet field is the PSID value. The remaining (16-k) bits
on the right are padding zeros. on the right are padding zeros.
4.8. Softwire46-Priority Attribute 3.2. Softwire46-Priority Attribute
The Softwire46-Priority Attribute defines a 16-bit S46-option-code The Softwire46-Priority Attribute defines a 16-bit S46-option-code
field to contain the information allowing the client to prioritize field to contain the information allowing the client to prioritize
which mechanism to use, corresponding to OPTION_S46_PRIORITY defined which mechanism to use, corresponding to OPTION_S46_PRIORITY defined
in [RFC8026]. in [RFC8026]. The following requirements apply:
The Softwire46-Priority Attribute MAY appear in an Access-Accept The Softwire46-Priority Attribute MAY appear in an Access-Accept
packet. It MAY also appear in an Access-Request packet. packet. It MAY also appear in an Access-Request packet.
The Softwire46-Priority Attribute MAY appear in a CoA-Request packet. The Softwire46-Priority Attribute MAY appear in a CoA-Request
packet.
The Softwire46-Priority Attribute MAY appear in an Accounting-Request The Softwire46-Priority Attribute MAY appear in an Accounting-
packet. Request packet.
The Softwire46-Priority Attribute MUST NOT appear in any other RADIUS The Softwire46-Priority Attribute MUST NOT appear in any other
packet. RADIUS packet.
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 | Extended-Type | ... | Type | Length | Extended-Type | ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... S46-option-code | S46-option-code | . S46-option-code | S46-option-code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type Type
241 (To be confirmed by IANA) 241 (To be confirmed by IANA)
Length Length
This field indicates the total length in bytes of all fields One octet long. Indicates the length of this TLV, including
of this attribute, including the Type, Length, Extended-Type, the TLV-Type, TLV-Length, and TLV-Value fields.
and the entire length of the S46-option-code.
Extended-Type Extended-Type
TBD5 TBD5
S46-option-code S46-option-code
Integer. A 16-bit IANA-registered option code of the Integer. A 16-bit IANA-registered option code representing
DHCPv6 option that is used to identify the softwire an S46 mechanism. The option codes and their corresponding
mechanisms. Refer to section 5 of RFC7598. S46 mechanisms are S46 mechanisms are listed in Section 7.3.
prioritized in the appearance order of the
S46-option-code(s) in the Softwire46-Priority Attribute.
A Softwire46-Priority Attribute MUST contain at least one
S46-option-code. The option codes of the corresponding
S46 mechanisms are listed in Section 6.3.
Softwire46-Priority Attribute is associated with the following S46 mechanisms are prioritized in the appearance order of the
identifier: 241.Extended-Type(TBD5). S46-option-code(s) in the Softwire46-Priority Attribute.
4.9. Softwire46-Multicast Attribute A Softwire46-Priority Attribute MUST contain at least one
S46-option-code.
The Softwire46-Multicast attribute conveys the IPv6 prefixes to be The Softwire46-Priority Attribute is associated with the following
used to synthesize IPv4-embedded IPv6 addresses as per [RFC8114]. identifier: 241.Extended-Type (TBD5).
The BNG SHALL use the IPv6 prefixes returned in the RADIUS
Softwire46-Multicast attribute to populate the DHCPv6 PREFIX64 Option
[RFC8115].
This attribute MAY be used in Access-Request packets as a hint to the 3.3. Softwire46-Multicast Attribute
RADIUS server. For example, if the BNG is pre-configured with
Softwire46-Multicast, these prefixes MAY be inserted in the
attribute. The RADIUS server MAY ignore the hint sent by the BNG,
and it MAY assign a different Softwire46-Multicast attribute.
The Softwire46-Multicast Attribute MAY appear in an Access-Accept The Softwire46-Multicast Attribute conveys the IPv6 prefixes to be
packet. It MAY also appear in an Access-Request packet. used to synthesize multicast and unicast IPv4-embedded IPv6 addresses
as per [RFC8114]. This attribute is of type "TLV" and contains
additional TLVs. The following requirements apply:
The Softwire46-Multicast Attribute MAY appear in a CoA-Request The BNG SHALL use the IPv6 prefixes returned in the RADIUS
packet. Softwire46-Multicast Attribute to populate the DHCPv6 PREFIX64
Option [RFC8115].
The Softwire46-Multicast Attribute MAY appear in an Accounting- This attribute MAY be used in Access-Request packets as a hint to
Request packet. the RADIUS server. For example, if the BNG is pre-configured for
Softwire46-Multicast, these prefixes MAY be inserted in the
attribute. The RADIUS server MAY ignore the hint sent by the BNG,
and it MAY assign a different Softwire46-Multicast Attribute.
The Softwire46-Multicast Attribute MUST NOT appear in any other The Softwire46-Multicast Attribute MAY appear in an Access-Request
RADIUS packet. packet.
This attribute is of type "TLV" as defined in the RADIUS Protocol The Softwire46-Multicast Attribute MAY appear in an Access-Accept
Extensions [RFC6929]. It contains some sub-attributes: packet.
o The Softwire46-Multicast Attribute MAY contain the ASM-Prefix64 The Softwire46-Multicast Attribute MAY appear in a CoA-Request
TLV (see Section 4.9.1). packet.
o The Softwire46-Multicast Attribute MAY contain the SSM-Prefix64 The Softwire46-Multicast Attribute MAY appear in an Accounting-
TLV (see Section 4.9.2). Request packet.
o The Softwire46-Multicast Attribute MAY contain the U-Prefix64 TLV The Softwire46-Multicast Attribute MUST NOT appear in any other
(see Section 4.9.3). RADIUS packet.
The Softwire46-Multicast Attribute MUST include the ASM-Prefix64 TLV The Softwire46-Multicast Attribute MAY contain the ASM-Prefix64
or the SSM-Prefix64 TLV, and it MAY include both. TLV (see Section 3.3.1).
The U-Prefix64 TLV MUST be present when the SSM-Prefix64 TLV is The Softwire46-Multicast Attribute MAY contain the SSM-Prefix64
present. The U-Prefix64 TLV MAY be present when the ASM-Prefix64 TLV TLV (see Section 3.3.2).
is present.
The format of the Softwire46-Multicast Attribute is shown in The Softwire46-Multicast Attribute MAY contain the U-Prefix64 TLV
Figure 6. (see Section 3.3.3).
0 1 2 3 The Softwire46-Multicast Attribute MUST include the ASM-Prefix64
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 TLV or the SSM-Prefix64 TLV, and it MAY include both.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Extended-Type | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 6 The U-Prefix64 TLV MUST be present when the SSM-Prefix64 TLV is
present. The U-Prefix64 TLV MAY be present when the ASM-Prefix64
TLV is present.
Type The the Softwire46-Multicast Attribute is structured as follows:
241 (To be confirmed by IANA). 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 | Extended-Type | Value ... .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Length Type
241 (To be confirmed by IANA)
Length
This field indicates the total length in bytes of all fields of This field indicates the total length in bytes of all fields of
this attribute, including the Type, Length, Extended-Type, and the this attribute, including the Type, Length, Extended-Type, and the
entire length of the embedded TLVs. entire length of the embedded TLVs.
Extended-Type Extended-Type
TBD6
TBD6.
Value
Value
This field contains a set of TLVs as follows: This field contains a set of TLVs as follows:
ASM-Prefix64 TLV ASM-Prefix64 TLV
This TLV contains the ASM IPv6 prefix. Refer to Section 3.3.1.
This TLV contains the ASM IPv6 prefix. Refer to Section 4.9.1. SSM-Prefix64 TLV
This TLV contains the SSM IPv6 prefix. Refer to Section 3.3.2.
SSM-Prefix64 TLV U-Prefix64 TLV
This TLV contains the IPv4 prefix used for address
translation. Refer to Section 3.3.3.
This TLV contains the SSM IPv6 prefix. Refer to Section 4.9.2. The Softwire46-Multicast Attribute is associated with the following
identifier: 241.Extended-Type(TBD6).
U-Prefix64 TLV 3.3.1. ASM-Prefix64 TLV
This TLV contains the IPv4 prefix used for address translation The ASM-Prefix64 TLV is structured as follows:
[RFC6052]. Refer to Section 4.9.3.
Softwire46-Multicast Attribute is associated with the following 0 1 2 3
identifier: 241.Extended-Type(TBD6). 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | Reserved | Prefix-Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| |
| |
| ASM Prefix64 |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.9.1. ASM-Prefix64 TLV TLV-Type
TBD21
The format of ASM-Prefix64 TLV is shown in Figure 7. Reserved
This field is reserved. It is always set to zero. This field
is one octet in length.
0 1 2 3 Prefix-Length
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 The length of the prefix, in bits. It MUST be set to 96 [RFC8115].
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | Reserved | Prefix-Length |ASM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ASM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ASM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ASM Prefix64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 7 ASM Prefix64
IPv6 prefix. This field specifies the IPv6 multicast prefix
to be used to synthesize the IPv4-embedded IPv6 addresses of the
multicast groups in the ASM mode. The conveyed multicast IPv6
prefix MUST belong to the ASM range.
TLV-Type 3.3.2. SSM-Prefix64 TLV
16 The format of SSM-Prefix64 TLV is shown below:
Reserved 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | Reserved |Prefix-Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| |
| |
| SSM Prefix64 |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
This field is reserved. It is always set to zero. This field is TLV-Type
one octet in length. TBD22
Reserved
This field is reserved. It is always set to zero. This field
is one octet in length.
Prefix-Length Prefix-Length
The length of the prefix, in bits. It MUST be set to 96 [RFC8115].
The length of the prefix, in bits. SSM Prefix64
IPv6 prefix. This field specifies the IPv6 multicast prefix
to be used to synthesize the IPv4-embedded IPv6 addresses of the
multicast groups in the SSM mode. The conveyed multicast IPv6
prefix MUST belong to the SSM range.
ASM Prefix64 3.3.3. U-Prefix64 TLV
IPv6 prefix. This field specifies the IPv6 multicast prefix to be The format of the U-Prefix64 TLV is shown below:
used to synthesize the IPv4-embedded IPv6 addresses of the
multicast groups in the ASM mode. The conveyed multicast IPv6
prefix MUST belong to the ASM range.
4.9.2. SSM-Prefix64 TLV 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | Reserved | Prefix-Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| |
| |
| Unicast Prefix64 |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The format of SSM-Prefix64 TLV is shown in Figure 8. TLV-Type
TBD23
0 1 2 3 Reserved
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 This field is reserved. It is always set to zero. This field
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ is one octet in length.
| TLV-Type | Reserved |Prefix-Length | SSM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... SSM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... SSM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... SSM Prefix64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 8 Prefix-Length
The length of the prefix, in bits. As specified in [RFC6052],
the Unicast-prefix prefix-length MUST be set to 32, 40, 48,
56, 64, or 96.
TLV-Type Unicast Prefix64
IPv6 prefix. This field identifies the IPv6 unicast prefix to
be used in SSM mode for constructing the IPv4-embedded IPv6
addresses representing the IPv4 multicast sources in the IPv6
domain. It may also be used to extract the IPv4 address from the
received multicast data flows.
17 4. A Sample Configuration Process with RADIUS
Reserved Figure 2 illustrates how the RADIUS and DHCPv6 protocols interwork to
provide CE with softwire configuration information.
This field is reserved. It is always set to zero. This field is CE BNG AAA Server
one octet in length. | | |
|-------1.DHCPv6 Solicit------->| |
|(ORO with unicast and/or m'cast| |
| container option code(s)) | |
| | |
| |-------2.Access-Request------->|
| | (Softwire46-Configuration |
| | Attribute and/or |
| |Softwire46-Multicast Attribute)|
| | |
| |<------3.Access-Accept---------|
| | (Softwire46-Configuration |
| | Attribute and/or |
| |Softwire46-Multicast Attribute)|
| | |
|<----4.DHCPv6 Advertisement----| |
| (container option(s)) | |
| | |
|-------5.DHCPv6 Request------>| |
| (container Option(s)) | |
| | |
|<--------6.DHCPv6 Reply--------| |
| (container option(s)) | |
| | |
DHCPv6 RADIUS
Prefix-Length Figure 2: Interaction between DHCPv6 and AAA Server with RADIUS
authentication
The length of the prefix, in bits. 1. The CE creates a DHCPv6 Solicit message. For unicast softwire
configuration, the message includes an OPTION_REQUEST_OPTION (6)
with the S46 Container option codes as defined in [RFC7598].
OPTION_S46_CONT_MAPE (94) should be included for MAP-E,
OPTION_S46_CONT_MAPT (95) for MAP-T, and OPTION_S46_CONT_LW (96)
for Lightweight 4over6. For multicast configuration, the option
number for OPTION_V6_PREFIX64 (113) is included in the client's
ORO. The message is sent to the BNG.
SSM Prefix64 2. On receipt of the Solicit message, the BNG constructs a RADIUS
Access-Request message containing a User-Name Attribute (1)
(containing either a CE MAC address, interface-id or both), a
User-Password Attribute (2) (with a pre-configured shared
password as defined in [RFC2865]. The Softwire46-Configuration
Attribute and/or Softwire46-Multicast Attribute are also included
(as requested by the client). The resulting message is sent to
the AAA server.
IPv6 prefix. This field specifies the IPv6 multicast prefix to be 3. The AAA server authenticates the request. If this is successful,
used to synthesize the IPv4-embedded IPv6 addresses of the and suitable configuration is available, an Access-Accept message
multicast groups in the SSM mode. The conveyed multicast IPv6 is sent to the BNG containing the requested
prefix MUST belong to the SSM range. Softwire46-Configuration Attribute or Softwire46-Multicast
Attribute.
4.9.3. U-Prefix64 TLV 4. The BNG maps the received softwire configuration into the
corresponding fields in the DHCPv6 softwire configuration
option(s). Theses are included in the DHCPv6 Advertise message
which is sent to the CE.
The format of U-Prefix64 TLV is shown in Figure 9. 5. The CE send a DHCPv6 Request message. In the ORO, the option
code(s) of any of the required softwire options that were
received in the Advertise message are included.
0 1 2 3 6. The BNG sends a Reply message to the client containing the
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 softwire container options enumerated in the ORO.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TLV-Type | Reserved | Prefix-Length |Unicast Prefix64
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Unicast Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Unicast Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Unicast Prefix64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 9 The authorization operation could also be done independently, after
the authentication process. In this case, steps 1-5 are completed as
above, then the following steps are performed:
TLV-Type 6a. When the BNG receives the DHCPv6 Request, it constructs a RADIUS
Access-Request message, which contains a Service-Type Attribute
(6) with the value "Authorize Only" (17), the corresponding
Softwire46-Configuration Attribute, and a State Attribute
obtained from the previous authentication process according to
[RFC5080]. The resulting message is sent to the AAA server.
18 7a. The AAA checks the authorization request. If it is approved, an
Access-Accept message is returned to the BNG with the
corresponding Softwire46-Configuration Attribute.
Reserved 8a. The BNG sends a Reply message to the client containing the
softwire container options enumerated in the ORO.
This field is reserved. It is always set to zero. This field is In addition to the above, the following points need to be considered:
one octet in length.
Prefix-Length o In both the configuration message flows described above the
Message-authenticator (type 80) [RFC2869] SHOULD be used to
protect both Access-Request and Access-Accept messages.
The length of the prefix, in bits. o If the BNG does not receive the corresponding
Softwire46-Configuration Attribute in the Access-Accept message it
MAY fallback to creating the DHCPv6 softwire configuration options
using pre-configured S46 configuration, if this is present.
Unicast Prefix64 o If the BNG receives an Access-Reject from the AAA server, then S46
configuration MUST NOT be supplied to the client.
IPv6 prefix. This field identifies the IPv6 unicast prefix to be o As specified in [RFC3315], Section 18.1.4, "Creation and
used in SSM mode for constructing the IPv4-embedded IPv6 addresses Transmission of Rebind Messages", if the DHCPv6 server to which
representing the IPv4 multicast sources in the IPv6 domain. It the DHCPv6 Renew message was sent at time T1 has not responded by
may also be used to extract the IPv4 address from the received time T2, the CE (DHCPv6 client) SHOULD enter the Rebind state and
multicast data flows. attempt to contact any available server. In this situation, a
secondary BNG receiving the DHCPv6 message MUST initiate a new
Access-Request message towards the AAA server. The secondary BNG
includes the Softwire46-Configuration Attribute in this Access-
Request message.
4.10. Table of attributes o For Lightweight 4over6, the subscriber's binding state needs to be
synchronized between the clients and the lwAFTR/BR. This can be
achieved in two ways: static pre-configuring of the bindings on
both the AAA server and lwAFTR, or on-demand whereby the AAA
server updates the lwAFTR with the subscriber's binding state as
it is created or deleted.
This document proposes three new RADIUS attributes, and their formats 5. Table of Attributes
are as follows:
o Softwire46-Configuration Attribute: 241.TB1 This document specifies three new RADIUS attributes, and their
formats are as follows:
o Softwire46-Priority Attribute: 241.TB5 o Softwire46-Configuration Attribute: 241.TBD1
o Softwire46-Multicast Attribute: 241.TB6 o Softwire46-Priority Attribute: 241.TBD5
o Softwire46-Multicast Attribute: 241.TBD6
The following table describes which attributes may be found, in which The following table describes which attributes may be found, in which
kinds of packets and in what quantity. 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 241.TBD1 Softwire46- 0-1 0-1 0 0 0-1 241.TBD1 Softwire46-
Configuration Configuration
0-1 0-1 0 0 0-1 241.TBD5 Softwire46- 0-1 0-1 0 0 0-1 241.TBD5 Softwire46-
Priority Priority
skipping to change at page 28, line 24 skipping to change at page 35, line 13
The following table defines the meaning of the above table entries. The following table defines the meaning of the above table entries.
0 This attribute MUST NOT be present in packet. 0 This attribute MUST NOT be present in packet.
0+ Zero or more instances of this attribute MAY be present in 0+ Zero or more instances of this attribute MAY be present in
packet. packet.
0-1 Zero or one instance of this attribute MAY be present in 0-1 Zero or one instance of this attribute MAY be present in
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 6. Security Considerations
S46 Configuration using Diameter [RFC6733] is specified in [RFC7678]. Known security vulnerabilities of the RADIUS protocol are discussed
in [RFC2607], [RFC2865], and[RFC2869]. Use of IPsec [RFC4301] for
providing security when RADIUS is carried in IPv6 is discussed in
[RFC3162].
6. IANA Considerations Specific security considerations for interactions between the MAP CE
and the BNG are discussed in [RFC7597] and [RFC7599]. Security
considerations for Lightweight 4over6 are discussed in [RFC7596].
Security considerations for DHCPv6-Based S46 Prioritization Mechanism
are discussed in [RFC8026]. Security considerations for multicast
scenarios are discussed in [RFC 8114]. Furthermore, generic DHCPv6
security mechanisms can be applied to DHCPv6 intercommunication
between the CE and the BNG.
For this document, IANA has made new code point assignments for 7. IANA Considerations
RADIUS attributes as described in the following subsections.
6.1. New RADIUS Attributes IANA is requested to make new code point assignments for RADIUS
attributes as described in the following subsections.
The Attribute Types defined in this document have been registered by 7.1. New RADIUS Attributes
IANA from the RADIUS namespace as described in the "IANA
This document requests IANA to assign the Attribute Types defined in
this document from the RADIUS namespace as described in the "IANA
Considerations" section of [RFC3575], in accordance with BCP 26 Considerations" section of [RFC3575], in accordance with BCP 26
[RFC5226]. For RADIUS packets, attributes, and registries created by [RFC5226].
this document, IANA has placed them at
<http://www.iana.org/assignments/radius-types>.
In particular, this document defines three new RADIUS attributes, as This document requests that IANA register three new RADIUS
follows, from the Short Extended Space of attributes, from the "Short Extended Space" of [RFC6929]. The
[RFC6929].Softwire46-Configuration Attribute, Softwire46-Priority attributes are: Softwire46-Configuration Attribute,
Attribute, and Softwire46-Multicast Attribute Softwire46-Priority Attribute, and Softwire46-Multicast Attribute:
Type Description Data Type Reference Type Description Data Type Reference
---- ----------- --------- --------- ---- ----------- --------- ---------
241.TB1 Softwire46-Configuration tlv Section 4.1 241.TBD1 Softwire46-Configuration TLV Section 4.1
241.TB5 Softwire46-Priority integer Section 4.8 241.TBD5 Softwire46-Priority integer Section 4.2
241.TB6 Softwire46-Multicast tlv Section 4.9 241.TBD6 Softwire46-Multicast TLV Section 4.3
6.2. New RADIUS TLVs 7.2. New RADIUS TLVs
IANA has created a new registry called "RADIUS Softwire46 IANA is requested to create a new registry called "RADIUS Softwire46
Configuration and Multicast TLVs". All TLVs in this registry have Configuration and Multicast TLVs".
one or more parent RADIUS attributes in nesting (refer to
[RFC6929]]). This registry contains the following TLVs: All TLVs in this registry have one or more parent RADIUS attributes
in nesting (refer to [RFC6929]).
This registry must be initially populated with the following values:
Value Description Data Type Reference Value Description Data Type Reference
----- ----------- --------- --------- ----- ----------- --------- ---------
0 Reserved 0 Reserved
TB2 S46-MAP-E tlv Section 4.2 TBD2 S46-MAP-E TLV Section 3.1.1.1
TB3 S46-MAP-T tlv Section 4.2 TBD3 S46-MAP-T TLV Section 3.1.1.2
TB4 S46-Lightweight 4over6 tlv Section 4.2 TBD4 S46-Lightweight-4over6 TLV Section 3.1.1.3
1 S46-Rule tlv Section 4.4.1 TBD7 S46-Rule TLV Section 3.1.3.1
2 S46-Rule tlv Section 4.4.1 TBD8 S46-Rule TLV Section 3.1.3.1
3 S46-Rule tlv Section 4.4.1 TBD9 S46-BR ipv6addr Section 3.1.3.2
4 S46-BR ipv6addr Section 4.4.2 TBD10 S46-DMR ipv6prefix Section 3.1.3.3
5 S46-DMR ipv6prefix Section 4.4.3 TBD11 S46-V4V6Bind TLV Section 3.1.3.4
6 S46-V4V6Bind tlv Section 4.4.4 TBD12 S46-PORTPARAMS TLV Section 3.1.3.5
7 S46-PORTPARAMS tlv Section 4.4.5 TBD13 Rule-IPv6-Prefix ipv6prefix Section 3.1.4.1
8 Rule-IPv6-Prefix ipv6prefix Section 4.5.1 TBD14 Rule-IPv4-Prefix ipv4prefix Section 3.1.4.2
9 Rule-IPv4-Prefix ipv4prefix Section 4.5.2 TBD15 EA-Length integer Section 3.1.4.3
10 EA-Length integer Section 4.5.3 TBD16 IPv4-address ipv4addr Section 3.1.5.1
11 IPv4-address ipv4addr Section 4.6.1 TBD17 Bind-IPv6-Prefix ipv6prefix Section 3.1.5.2
12 Bind-IPv6-Prefix ipv6prefix Section 4.6.2 TBD18 PSID-offset integer Section 3.1.6.1
13 PSID-offset integer Section 4.7.1 TBD19 PSID-len integer Section 3.1.6.2
14 PSID-len integer Section 4.7.2 TBD20 PSID integer Section 3.1.6.3
15 PSID integer Section 4.7.3 TBD21 ASM-Prefix64 ipv6prefix Section 3.3.1
16 ASM-Prefix64 ipv6prefix Section 4.9.1 TBD22 SSM-Prefix64 ipv6prefix Section 3.3.2
17 SSM-Prefix64 ipv6prefix Section 4.9.2 TBD23 U-Prefix64 ipv6prefix Section 3.3.3
18 U-Prefix64 ipv6prefix Section 4.9.3 21-255 Unassigned, TBD2,TBD3,TBD4 will be assigned by IANA
19-255 Unassigned, TB2,TB3,TB4 will be assigned by IANA
The registration procedure for this registry is Standards Action as The registration procedure for this registry is Standards Action as
defined in [RFC5226]. defined in [RFC5226]. The registry may be added to using the IETF
Review process described in Section 4.1 of [RFC5226].
6.3. S46 Mechanisms and Their Identifying Option Codes 7.3. S46 Mechanisms and Their Identifying Option Codes
The Softwire46-Priority Attribute defines a 16-bit S46-option-code The Softwire46-Priority Attribute defines a 16-bit S46-option-code
field, for which IANA is to create and maintain a new registry field, for which IANA is requested to create and maintain a new
entitled "Option Codes Permitted in the Softwire46-Priority registry entitled "Option Codes Permitted in the Softwire46-Priority
Attribute". This document requires IANA to register three option Attribute". The registration procedure for this registry is
codes of the Softwire46 mechanisms permitted to be included in the Standards Action as defined in [RFC5226].
Softwire46-Priority Attribute. The value of option code is
corresponding to the TLV-Type defined in the Section 4.2. 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 required and the This document requires IANA to register the three option codes of the
S46 mechanisms that they represent. The option code for DS-Lite is Softwire46 mechanisms permitted to be included in the
derived from the IANA allocated RADIUS Attribute Type value for DS- Softwire46-Priority Attribute. The value of option code corresponds
Lite [RFC6519]. The option codes for MAP-E, MAP-T and Lightweight to the TLV-Type defined in the Section 3.1.1. Additional options may
4over6 need to be determined. The option codes for MAP-E, MAP-T, and be added to this list in the future using the IETF Review process
Lightweight 4over6 should also be used as the TLV-Type values for the described in Section 4.1 of [RFC5226].
MAP-E, MAP-T, and Lightweight 4over6 TLV defined in Section 4.2.
Table 3. shows the option codes required, and the S46 mechanisms that
they represent. The option code for DS-Lite is derived from the IANA
allocated RADIUS Attribute Type value for DS-Lite [RFC6519]. The
option codes for MAP-E, MAP-T, and Lightweight 4over6 need to be
assigned. The option codes for MAP-E, MAP-T, and Lightweight 4over6
should also be used as the TLV-Type values for the MAP-E, MAP-T, and
Lightweight 4over6 TLV defined in Section 3.1.1.
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| Option Code | S46 Mechanism | Reference | | Option Code | S46 Mechanism | Reference |
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| TBD2 | MAP-E | RFC7597 | | TBD2 | MAP-E | RFC7597 |
+-------------+------------------+-----------+
| TBD3 | MAP-T | RFC7599 | | TBD3 | MAP-T | RFC7599 |
+-------------+------------------+-----------+
| TBD4 |Lightweight 4over6| RFC7596 | | TBD4 |Lightweight 4over6| RFC7596 |
+-------------+------------------+-----------+
| 144 | DS-Lite | RFC6519 | | 144 | DS-Lite | RFC6519 |
+--------------------------------+-----------+ +--------------------------------+-----------+
Table 1: Option Codes to S46 Mechanisms Table 3: Option Codes to S46 Mechanisms
7. Security Considerations 8. Contributing Authors
Qiong Sun
China Telecom
Beijing China
Email: sunqiong@ctbri.com.cn
Known security vulnerabilities of the RADIUS protocol are discussed Qi Sun
in [RFC2607], [RFC2865], and[RFC2869]. Use of IPsec [RFC4301] for Tsinghua University
providing security when RADIUS is carried in IPv6 is discussed in Department of Computer Science, Tsinghua University
[RFC3162]. Beijing 100084
P.R.China
Phone: +86-10-6278-5822
Email: sunqibupt@gmail.com
Specific security considerations for interactions between the MAP CE Cathy Zhou
and the BNG are discussed in [RFC7597] and [RFC7599]. Security Huawei Technologies
considerations for Lightweight 4over6 are discussed in [RFC7596]. Bantian, Longgang District
Security considerations for DHCPv6-Based S46 Prioritization Mechanism Shenzhen 518129
are discussed in [RFC8026]. Security considerations for multicast Email: cathy.zhou@huawei.com
scenarios are discussed in [RFC 8114]. Furthermore, generic DHCPv6
security mechanisms can be applied to DHCPv6 intercommunication
between the CE and the BNG.
Security considerations for the Diameter protocol are discussed in Tina Tsou
[RFC6733]. Huawei Technologies(USA)
2330 Central Expressway
Santa Clara, CA 95050
USA
Email: Tina.Tsou.Zouting@huawei.com
8. Acknowledgements ZiLong Liu
Tsinghua University
Beijing 100084
P.R.China
Phone: +86-10-6278-5822
Email: liuzilong8266@126.com
Yong Cui
Tsinghua University
Beijing 100084
P.R.China
Phone: +86-10-62603059
Email: yong@csnet1.cs.tsinghua.edu.cn
9. 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, Ian Farrer, Suresh Krishnan, Qian Wang, Wei Lothberg, Wojciech Dec, Ian Farrer, Suresh Krishnan, Qian Wang, Wei
Meng and Cui Wang for this document. This document was merged with Meng and Cui Wang for this document. This document was merged with
draft-sun-softwire-lw4over6-radext-01 and draft-wang-radext- draft-sun-softwire-lw4over6-radext-01 and draft-wang-radext-
multicast-radius-ext-00, thanks to everyone who contributed to this multicast-radius-ext-00, thanks to everyone who contributed to this
draft. document.
This document was produced using the xml2rfc tool [RFC7991]. This document was produced using the xml2rfc tool [RFC7991].
9. References 10. References
9.1. Normative References 10.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,
<https://www.rfc-editor.org/info/rfc2119>. <https://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,
<https://www.rfc-editor.org/info/rfc2865>. <https://www.rfc-editor.org/info/rfc2865>.
skipping to change at page 32, line 38 skipping to change at page 40, line 38
[RFC8115] Boucadair, M., Qin, J., Tsou, T., and X. Deng, "DHCPv6 [RFC8115] Boucadair, M., Qin, J., Tsou, T., and X. Deng, "DHCPv6
Option for IPv4-Embedded Multicast and Unicast IPv6 Option for IPv4-Embedded Multicast and Unicast IPv6
Prefixes", RFC 8115, DOI 10.17487/RFC8115, March 2017, Prefixes", RFC 8115, DOI 10.17487/RFC8115, March 2017,
<https://www.rfc-editor.org/info/rfc8115>. <https://www.rfc-editor.org/info/rfc8115>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
9.2. Informative References 10.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,
<https://www.rfc-editor.org/info/rfc2607>. <https://www.rfc-editor.org/info/rfc2607>.
[RFC2869] Rigney, C., Willats, W., and P. Calhoun, "RADIUS [RFC2869] Rigney, C., Willats, W., and P. Calhoun, "RADIUS
Extensions", RFC 2869, DOI 10.17487/RFC2869, June 2000, Extensions", RFC 2869, DOI 10.17487/RFC2869, June 2000,
<https://www.rfc-editor.org/info/rfc2869>. <https://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,
<https://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, <https://www.rfc-editor.org/info/rfc4301>. December 2005, <https://www.rfc-editor.org/info/rfc4301>.
[RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual- [RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual-
Stack Lite Broadband Deployments Following IPv4 Stack Lite Broadband Deployments Following IPv4
Exhaustion", RFC 6333, DOI 10.17487/RFC6333, August 2011, Exhaustion", RFC 6333, DOI 10.17487/RFC6333, August 2011,
<https://www.rfc-editor.org/info/rfc6333>. <https://www.rfc-editor.org/info/rfc6333>.
[RFC6346] Bush, R., Ed., "The Address plus Port (A+P) Approach to [RFC6346] Bush, R., Ed., "The Address plus Port (A+P) Approach to
the IPv4 Address Shortage", RFC 6346, the IPv4 Address Shortage", RFC 6346,
DOI 10.17487/RFC6346, August 2011, DOI 10.17487/RFC6346, August 2011,
<https://www.rfc-editor.org/info/rfc6346>. <https://www.rfc-editor.org/info/rfc6346>.
[RFC6519] Maglione, R. and A. Durand, "RADIUS Extensions for Dual- [RFC6519] Maglione, R. and A. Durand, "RADIUS Extensions for Dual-
Stack Lite", RFC 6519, DOI 10.17487/RFC6519, February Stack Lite", RFC 6519, DOI 10.17487/RFC6519, February
2012, <https://www.rfc-editor.org/info/rfc6519>. 2012, <https://www.rfc-editor.org/info/rfc6519>.
[RFC6733] Fajardo, V., Ed., Arkko, J., Loughney, J., and G. Zorn,
Ed., "Diameter Base Protocol", RFC 6733,
DOI 10.17487/RFC6733, October 2012,
<https://www.rfc-editor.org/info/rfc6733>.
[RFC7596] Cui, Y., Sun, Q., Boucadair, M., Tsou, T., Lee, Y., and I. [RFC7596] Cui, Y., Sun, Q., Boucadair, M., Tsou, T., Lee, Y., and I.
Farrer, "Lightweight 4over6: An Extension to the Dual- Farrer, "Lightweight 4over6: An Extension to the Dual-
Stack Lite Architecture", RFC 7596, DOI 10.17487/RFC7596, Stack Lite Architecture", RFC 7596, DOI 10.17487/RFC7596,
July 2015, <https://www.rfc-editor.org/info/rfc7596>. July 2015, <https://www.rfc-editor.org/info/rfc7596>.
[RFC7597] Troan, O., Ed., Dec, W., Li, X., Bao, C., Matsushima, S., [RFC7597] Troan, O., Ed., Dec, W., Li, X., Bao, C., Matsushima, S.,
Murakami, T., and T. Taylor, Ed., "Mapping of Address and Murakami, T., and T. Taylor, Ed., "Mapping of Address and
Port with Encapsulation (MAP-E)", RFC 7597, Port with Encapsulation (MAP-E)", RFC 7597,
DOI 10.17487/RFC7597, July 2015, DOI 10.17487/RFC7597, July 2015,
<https://www.rfc-editor.org/info/rfc7597>. <https://www.rfc-editor.org/info/rfc7597>.
skipping to change at page 34, line 20 skipping to change at page 42, line 5
[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,
<https://www.rfc-editor.org/info/rfc7678>. <https://www.rfc-editor.org/info/rfc7678>.
[RFC7991] Hoffman, P., "The "xml2rfc" Version 3 Vocabulary", [RFC7991] Hoffman, P., "The "xml2rfc" Version 3 Vocabulary",
RFC 7991, DOI 10.17487/RFC7991, December 2016, RFC 7991, DOI 10.17487/RFC7991, December 2016,
<https://www.rfc-editor.org/info/rfc7991>. <https://www.rfc-editor.org/info/rfc7991>.
Additional Authors Appendix A. DHCPv6 to RADIUS Field Mappings
Qiong Sun
China Telecom
Beijing China
Email: sunqiong@ctbri.com.cn
Qi Sun The following sections detail the mappings between the softwire
Tsinghua University DHCPv6 option fields and the relevant RADIUS attributes, TLVs and
Department of Computer Science, Tsinghua University Sub-TLVs as defined in this document.
Beijing 100084
P.R.China
Phone: +86-10-6278-5822
Email: sunqibupt@gmail.com
Cathy Zhou A.1. OPTION_S46_RULE (89) to S46-Rule Sub-TLV Field Mappings
Huawei Technologies
Bantian, Longgang District
Shenzhen 518129
Email: cathy.zhou@huawei.com
Tina Tsou +---------------------+----------------------+----------------------+
Huawei Technologies(USA) | OPTION_S46_RULE | S46-Rule Sub-TLV | TLV Field |
2330 Central Expressway | Field | Name | |
Santa Clara, CA 95050 +---------------------+----------------------+----------------------+
USA | flags | N/A | TLV-type (TBD7, |
Email: Tina.Tsou.Zouting@huawei.com | | | TBD8) |
| ea-len | EA-Length | EA-len |
| prefix4-len | Rule-IPv4-Prefix | ruleprefix4-len |
| ipv4-prefix | Rule-IPv4-Prefix | rule-ipv4-prefix |
| prefix6-len | Rule-IPv6-Prefix | ruleprefix6-len |
| ipv6-prefix | Rule-IPv6-Prefix | rule-ipv6-prefix |
+---------------------+----------------------+----------------------+
ZiLong Liu A.2. OPTION_S46_BR (90) to S46-BR Sub-TLV Sub-TLV Field Mappings
Tsinghua University
Beijing 100084
P.R.China
Phone: +86-10-6278-5822
Email: liuzilong8266@126.com
Yong Cui +---------------------+----------------------+
Tsinghua University | OPTION_S46_BR Field | S46-BR Sub-TLV Field |
Beijing 100084 +---------------------+----------------------+
P.R.China | br-ipv6-address | br-ipv6-address |
Phone: +86-10-62603059 +---------------------+----------------------+
Email: yong@csnet1.cs.tsinghua.edu.cn
A.3. OPTION_S46_DMR (91) to S46-DMR Sub-TLV
+---------------------+-----------------------+
| OPTION_S46_BR Field | S46-DMR Sub-TLV Field |
+---------------------+-----------------------+
| dmr-prefix6-len | dmr-prefix6-len |
| dmr-ipv6-prefix | dmr-ipv6-prefix |
+---------------------+-----------------------+
A.4. OPTION_S46_V4V6BIND (92) to S46-V4V6Bind Sub-TLV
+------------------------+-----------------------+------------------+
| OPTION_S46_V4V6BIND | S46-V4V6Bind Sub-TLV | TLV Field |
| Field | Name | |
+------------------------+-----------------------+------------------+
| ipv4-address | IPv4-address | ipv4-address |
| bindprefix6-len | Bind-IPv6-Prefix | bind6prefix-len |
| bind-ipv6-prefix | Bind-IPv6-Prefix | bind-ipv6-prefix |
+------------------------+-----------------------+------------------+
A.5. OPTION_S46_PORTPARAMS (93) to S46-PORTPARAMS Sub-TLV Field
Mappings
+---------------------------+-------------------------+-------------+
| OPTION_S46_PORTPARAMS | S46-PORTPARAMS Sub-TLV | TLV Field |
| Field | Name | |
+---------------------------+-------------------------+-------------+
| offset | PSID-offset | PSID-Offset |
| PSID-len | PSID-len | PSID-len |
| PSID | PSID | PSID |
+---------------------------+-------------------------+-------------+
A.6. OPTION_S46_PRIORITY (111) to S46-PORTPARAMS Sub-TLV Field Mappings
+---------------------------+-------------------------------------+
| OPTION_S46_PRIORITY Field | Softwire46-Priority Attribute Field |
+---------------------------+-------------------------------------+
| s46-option-code | S46-option-code |
+---------------------------+-------------------------------------+
A.7. OPTION_V6_PREFIX64 (113) to Softwire46-Multicast Attribute TLV
Field Mappings
+--------------------+------------------------------+---------------+
| OPTION_V6_PREFIX64 | Softwire46-Multicast | TLV Field |
| Field | Attribute TLV Name | |
+--------------------+------------------------------+---------------+
| asm-length | ASM-Prefix64 | Prefix-Length |
| ASM_mPrefix64 | ASM-Prefix64 | ASM Prefix64 |
| ssm-length | SSM-Prefix64 | Prefix-Length |
| SSM_mPrefix64 | SSM-Prefix64 | SSM Prefix64 |
| unicast-length | U-Prefix64 | Prefix-Length |
| uPrefix64 | U-Prefix64 | Unicast |
| | | Prefix64 |
+--------------------+------------------------------+---------------+
Authors' Addresses Authors' Addresses
Sheng Jiang Sheng Jiang
Huawei Technologies Co., Ltd Huawei Technologies Co., Ltd
Q14, Huawei Campus, No.156 Beiqing Road Q14, Huawei Campus, No.156 Beiqing Road
Hai-Dian District, Beijing, 100095 Hai-Dian District, Beijing, 100095
P.R. China P.R. China
Email: jiangsheng@huawei.com Email: jiangsheng@huawei.com
Yu Fu Yu Fu
CNNIC CNNIC
No.4 South 4th Street, Zhongguancun No.4 South 4th Street, Zhongguancun
Hai-Dian District, Beijing, 100190 Hai-Dian District, Beijing, 100190
P.R. China P.R. China
Email: fuyu@cnnic.cn Email: eleven711711@foxmail.com
Bing Liu Bing Liu
Huawei Technologies Co., Ltd Huawei Technologies Co., Ltd
Q14, Huawei Campus, No.156 Beiqing Road Q14, Huawei Campus, No.156 Beiqing Road
Hai-Dian District, Beijing, 100095 Hai-Dian District, Beijing, 100095
P.R. China P.R. China
Email: leo.liubing@huawei.com Email: leo.liubing@huawei.com
Peter Deacon Peter Deacon
IEA Software, Inc. IEA Software, Inc.
P.O. Box 1170 P.O. Box 1170
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 China Telecom Beijing Information Sci.&Tech. Park,
Beiqijia Town, Changping District, Beijing 102209
P.R. China P.R. China
Email: xiechf.bri@chinatelecom.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
Mohamed Boucadair (editor)
Mohamed Boucadair
Orange Orange
Rennes, 35000 Rennes, 35000
France France
Email: mohamed.boucadair@orange.com Email: mohamed.boucadair@orange.com
 End of changes. 291 change blocks. 
895 lines changed or deleted 1109 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/