draft-ietf-softwire-map-radius-15.txt   draft-ietf-softwire-map-radius-16.txt 
Softwire S. Jiang, Ed. Softwire S. Jiang, Ed.
Internet-Draft Huawei Technologies Co., Ltd Internet-Draft Huawei Technologies Co., Ltd
Intended status: Standards Track Y. Fu, Ed. Intended status: Standards Track Y. Fu, Ed.
Expires: September 22, 2018 CNNIC Expires: December 28, 2018 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
Orange Orange
March 21, 2018 June 26, 2018
RADIUS Attribute for Softwire Address plus Port based Mechanisms RADIUS Attributes for Address plus Port based Softwire Mechanisms
draft-ietf-softwire-map-radius-15 draft-ietf-softwire-map-radius-16
Abstract Abstract
IPv4-over-IPv6 transition mechanisms provide both IPv4 and IPv6 IPv4-over-IPv6 transition mechanisms provide both IPv4 and IPv6
connectivity services simultaneously during the IPv4/IPv6 co-existing connectivity services simultaneously during the IPv4/IPv6 co-
period. The Dynamic Host Configuration Protocol for IPv6 (DHCPv6) existence period. DHCPv6 options have been defined for configuring
options have been defined to configure Customer Edge (CE) in MAP-E, clients to use MAP-E, MAP-T, Lightweight 4over6 and Multicast Basic
MAP-T, Lightweight 4over6 and PREFIX64 option for Multicast Basic
Bridging BroadBand (mB4) in multicast scenarios. However, in many Bridging BroadBand (mB4) in multicast scenarios. However, in many
networks, the configuration information may be stored in an networks, the configuration information may be stored in an AAA
Authentication Authorization and Accounting (AAA) server, while user server, while user configuration information is mainly provided by
configuration information is mainly provided by the Broadband Network the BNG through the DHCPv6 protocol. This document defines three new
Gateway (BNG) through the DHCPv6 protocol. This document defines two RADIUS attributes that carry CE or mB4 configuration information from
new Remote Authentication Dial In User Service (RADIUS) attributes an AAA server to BNG.
that carry CE or mB4 configuration information from an AAA server to
BNG.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at 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 September 22, 2018.
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
skipping to change at page 2, line 30 skipping to change at page 2, line 27
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 . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Configuration process with RADIUS . . . . . . . . . . . . . . 4 3. Configuration process with RADIUS . . . . . . . . . . . . . . 4
4. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 7 4. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.1. Softwire46-Configuration Attribute . . . . . . . . . . . 7 4.1. Softwire46-Configuration Attribute . . . . . . . . . . . 8
4.2. S46 Container Options . . . . . . . . . . . . . . . . . . 8 4.2. Softwire46 TLVs . . . . . . . . . . . . . . . . . . . . . 9
4.3. Sub Options for S46 Container Option . . . . . . . . . . 9 4.3. Softwire46 Sub TLVs . . . . . . . . . . . . . . . . . . . 11
4.3.1. S46-Rule Sub Option . . . . . . . . . . . . . . . . . 9 4.4. The format of Softwire46 Sub TLVs . . . . . . . . . . . . 13
4.3.2. S46-BR Sub Option . . . . . . . . . . . . . . . . . . 10 4.4.1. S46-Rule Sub TLV . . . . . . . . . . . . . . . . . . 13
4.3.3. S46-DMR Sub Option . . . . . . . . . . . . . . . . . 11 4.4.2. S46-BR Sub TLV . . . . . . . . . . . . . . . . . . . 14
4.3.4. S46-V4V6Bind Sub Option . . . . . . . . . . . . . . . 12 4.4.3. S46-DMR Sub TLV . . . . . . . . . . . . . . . . . . . 15
4.3.5. S46-PORTPARAMS Sub Option . . . . . . . . . . . . . . 13 4.4.4. S46-V4V6Bind Sub TLV . . . . . . . . . . . . . . . . 16
4.4. Sub Options for S46-Rule Sub Option . . . . . . . . . . . 13 4.4.5. S46-PORTPARAMS Sub TLV . . . . . . . . . . . . . . . 16
4.4.1. Rule-IPv6-Prefix Sub Option . . . . . . . . . . . . . 13 4.5. Sub-TLVs for S46-Rule Sub TLV . . . . . . . . . . . . . . 17
4.4.2. Rule-IPv4-Prefix Sub Option . . . . . . . . . . . . . 14 4.5.1. Rule-IPv6-Prefix sub-TLV . . . . . . . . . . . . . . 17
4.4.3. EA Length Sub Option . . . . . . . . . . . . . . . . 15 4.5.2. Rule-IPv4-Prefix Sub-TLV . . . . . . . . . . . . . . 18
4.5. Sub Options for S46-v4v6Bind Sub Option . . . . . . . . . 15 4.5.3. EA-Length Sub-TLV . . . . . . . . . . . . . . . . . . 19
4.5.1. The IPv4-address Sub Option . . . . . . . . . . . . . 15 4.6. Sub-TLVs for S46-v4v6Bind Sub TLV . . . . . . . . . . . . 19
4.5.2. The Bind-IPv6-Prefix Sub Option . . . . . . . . . . . 15 4.6.1. The IPv4-address sub-TLV . . . . . . . . . . . . . . 19
4.6. Sub Options for S46-PORTPARAMS Sub Option . . . . . . . . 16 4.6.2. The Bind-IPv6-Prefix Sub-TLV . . . . . . . . . . . . 19
4.6.1. The PSID-offset Sub Option . . . . . . . . . . . . . 16 4.7. Sub-TLVs for S46-PORTPARAMS Sub TLV . . . . . . . . . . . 20
4.6.2. The PSID-len Sub Option . . . . . . . . . . . . . . . 17 4.7.1. The PSID-offset sub-TLV . . . . . . . . . . . . . . . 20
4.6.3. The PSID Sub Option . . . . . . . . . . . . . . . . . 17 4.7.2. The PSID-len sub-TLV . . . . . . . . . . . . . . . . 21
4.7. Softwire46 Sub Options Encapsulation . . . . . . . . . . 17 4.7.3. The PSID sub-TLV . . . . . . . . . . . . . . . . . . 21
4.8. Softwire46-Priority Attribute . . . . . . . . . . . . . . 18 4.8. Softwire46-Priority Attribute . . . . . . . . . . . . . . 21
4.9. Softwire46-Multicast Attribute . . . . . . . . . . . . . 18 4.9. Softwire46-Multicast Attribute . . . . . . . . . . . . . 22
4.9.1. ASM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 20 4.9.1. ASM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 24
4.9.2. SSM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 21 4.9.2. SSM-Prefix64 TLV . . . . . . . . . . . . . . . . . . 25
4.9.3. U-Prefix64 TLV . . . . . . . . . . . . . . . . . . . 22 4.9.3. U-Prefix64 TLV . . . . . . . . . . . . . . . . . . . 26
4.10. Table of attributes . . . . . . . . . . . . . . . . . . . 23
5. Diameter Considerations . . . . . . . . . . . . . . . . . . . 24 4.10. Table of attributes . . . . . . . . . . . . . . . . . . . 27
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 5. Diameter Considerations . . . . . . . . . . . . . . . . . . . 28
6.1. S46 Mechanisms and Their Identifying Option Codes . . . . 25 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28
7. Security Considerations . . . . . . . . . . . . . . . . . . . 25 6.1. New RADIUS Attributes . . . . . . . . . . . . . . . . . . 28
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 26 6.2. New RADIUS TLVs . . . . . . . . . . . . . . . . . . . . . 29
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 26 6.3. S46 Mechanisms and Their Identifying Option Codes . . . . 29
9.1. Normative References . . . . . . . . . . . . . . . . . . 26 7. Security Considerations . . . . . . . . . . . . . . . . . . . 30
9.2. Informative References . . . . . . . . . . . . . . . . . 27 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 30
Additional Authors . . . . . . . . . . . . . . . . . . . . . . . 29 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 31
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 30 9.1. Normative References . . . . . . . . . . . . . . . . . . 31
9.2. Informative References . . . . . . . . . . . . . . . . . 32
Additional Authors . . . . . . . . . . . . . . . . . . . . . . . 34
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 35
1. Introduction 1. Introduction
Recently providers have started to deploy IPv6 and consider how to Recently, providers have started deployment and transition to IPv6.
transit to IPv6. Many IPv4 service continuity mechanisms based on Many IPv4 service continuity mechanisms based on the Address plus
the Address plus Port (A+P) [RFC6346] have been proposed for running Port (A+P) [RFC6346] have been proposed for running IPv4 over
IPv4 over IPv6-only infrastructure. Mapping of Address and Port with IPv6-only infrastructure. Mapping of Address and Port with
Encapsulation (MAP-E)[RFC7597] and Mapping of Address and Port using Encapsulation (MAP-E)[RFC7597] and Mapping of Address and Port using
Translation (MAP-T) [RFC7599] are stateless mechanisms for running Translation (MAP-T) [RFC7599] are stateless mechanisms for running
IPv4 over IPv6-only infrastructure. Lightweight 4over6 [RFC7596] is IPv4 over IPv6-only infrastructure. Lightweight 4over6 [RFC7596] is
a hub-and-spoke IPv4-over-IPv6 tunneling mechanism, with complete a hub-and-spoke IPv4-over-IPv6 tunneling mechanism, with complete
independence of IPv4 and IPv6 addressing. MAP-E, MAP-T, and independence of IPv4 and IPv6 addressing. And all these mechanisms
Lightweight 4over6 Customer Edge (CE) devices may be provisioned by are unicast. MAP-E, MAP-T, and Lightweight 4over6 Customer Edge (CE)
means of Dynamic Host Configuration Protocol for IPv6 (DHCPv6) devices may be provisioned by means of Dynamic Host Configuration
[RFC3315]. In particualr, the CE uses DHCPv6 options to discover the Protocol for IPv6 (DHCPv6) [RFC3315]. [RFC7598] defines DHCPv6
Border Relay (BR) and retrieve Softwire46 (S46) configurations. options for provisioning CEs for unicast softwires.
[RFC8114] specifies a generic solution for delivery of IPv4 multicast [RFC8114] specifies a generic solution for delivery of IPv4 multicast
services to IPv4 clients over an IPv6 multicast network. The services to IPv4 clients over an IPv6 multicast network. The
solution applies also to lw4o6 and MAP-E. [RFC8115] defines a DHCPv6 solution applies also to lw4o6 and MAP-E. [RFC8115] defines a DHCPv6
PREFIX64 option to convey the IPv6 prefixes to be used for PREFIX64 option to convey the IPv6 prefixes to be used for
constructing IPv4-embedded IPv6 addresses to inform the mB4 element constructing IPv4-embedded IPv6 addresses to inform the mB4 element
of the PREFIX64. The following lists the multicast-related of the PREFIX64.
information that needs to be provisioned:
o ASM Multicast Prefix64: the IPv6 multicast prefix to be used to
synthesize the IPv4-embedded IPv6 addresses of the multicast
groups in the Any-Source Multicast (ASM) mode.
o SSM Multicast Prefix64: the IPv6 multicast prefix to be used to
synthesize the IPv4-embedded IPv6 addresses of the multicast
groups in the Source-Specific Multicast (SSM) [RFC4607] mode.
o Unicast Prefix64: 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. Unicast Prefix64 may
also be used to extract the IPv4 address from the received
multicast data flows. The address mapping follows the guidelines
documented in [RFC6052].
In many networks, user configuration information may be stored in an In many networks, user configuration information may be stored in an
Authentication, Authorization, and Accounting (AAA) server. Authentication, Authorization, and Accounting (AAA) server.
Currently, the AAA servers communicate using the Remote Currently, the AAA servers communicate using the Remote
Authentication Dial In User Service (RADIUS) [RFC2865] protocol. In Authentication Dial In User Service (RADIUS) [RFC2865] protocol. In
a fixed line broadband network, a Broadband Network Gateway (BNG) a fixed line broadband network, a Broadband Network Gateway (BNG)
acts as the access gateway of users. A DHCPv6 server function is acts as the access gateway of users. A DHCPv6 server function is
assumed to be embedded in the BNG that allows it to locally handle assumed to embed in the BNG that allows it to locally handle any
any DHCPv6 requests initiated by hosts. 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 Since the S46 configuration information is stored in an AAA servers
and user configuration information is mainly transmitted through and user configuration information is mainly transmitted through
DHCPv6 protocol between the BNGs and hosts/CEs, new RADIUS attributes DHCPv6 protocol between the BNGs and hosts/CEs, new RADIUS attributes
are needed to propagate the information from the AAA servers to BNGs. are needed to propagate the information from the AAA servers to BNGs.
The RADIUS attributes designed in this document are especially for The RADIUS attributes designed in this document are especially for
the MAP-E[RFC7597], MAP-T[RFC7599] and Lightweight 4over6[RFC7596], the MAP-E[RFC7597], MAP-T [RFC7599] and Lightweight 4over6 [RFC7596],
providing enough information to form the corresponding DHCPv6 providing enough information to form the corresponding DHCPv6
configuration options[RFC7598]. At the Section 4.9, a new RADIUS configuration options[RFC7598]. This document is not concerned with
attribute is defined to be used for carrying the Multicast-Prefixes- the RADIUS attribute for Dual-Stack Lite [RFC6333] as it is already
64, based on the equivalent DHCPv6 option already specified in covered in [RFC6519]. At the Section 4.9, a new RADIUS attribute is
[RFC8115]. defined to be used for carrying the Multicast-Prefixes-64, based on
the equivalent DHCPv6 option already specified in [RFC8115].
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
document are to be interpreted as described in [RFC2119]. "OPTIONAL" in this document are to be interpreted as described in
[RFC2119] [RFC8174] when, and only when, they appear in all capitals,
as shown here.
The terms DS-Lite multicast Basic Bridging BroadBand element (mB4) The terms DS-Lite multicast Basic Bridging BroadBand element (mB4)
and the DS-Lite multicast Address Family Transition Router element and the DS-Lite multicast Address Family Transition Router element
(mAFTR) are defined in [RFC8114] . (mAFTR) are defined in [RFC8114] .
3. Configuration process with RADIUS 3. Configuration process with RADIUS
The Figure 1 below illustrates how the RADIUS protocol and DHCPv6 co- The Figure 1 below illustrates how the RADIUS and DHCPv6 protocols
operate to provide CE with MAP configuration information. The BNG co-operate to provide CE with softwire configuration information.
acts as a RADIUS client and a DHCPv6 server. The BNG acts as a RADIUS client and a DHCPv6 server.
CE BNG AAA Server CE BNG AAA Server
| | | | | |
|-------1.DHCPv6 Solicit-------> | | |-------1.DHCPv6 Solicit-------> | |
| (ORO w/container option code) | | | (ORO w/container option code) | |
| |-------2.Access-Request------->| | |-------2.Access-Request------->|
| | (S46-Configuration attribute | | | (S46-Configuration attribute |
| |and/or S46-Multicast attribute)| | |and/or S46-Multicast attribute)|
| |<------3.Access-Accept---------| | |<------3.Access-Accept---------|
|<---4.DHCPv6 Advertisement----- | (S46-Configuration attribute | |<---4.DHCPv6 Advertisement----- | (S46-Configuration attribute |
skipping to change at page 5, line 25 skipping to change at page 5, line 25
|-------5.DHCPv6 Request------> | | |-------5.DHCPv6 Request------> | |
| (container Option) | | | (container Option) | |
|<------6.DHCPv6 Reply---------- | | |<------6.DHCPv6 Reply---------- | |
| (container option) | | | (container option) | |
| | | | | |
DHCPv6 RADIUS DHCPv6 RADIUS
Figure 1: the cooperation between DHCPv6 and RADIUS combined with Figure 1: the cooperation between DHCPv6 and RADIUS combined with
RADIUS authentication RADIUS authentication
1. First, the CE may initiate a DHCPv6 Solicit message that includes 1. For unicast, the CE initiates a DHCPv6 Solicit message that
an Option Request option(6) [RFC3315] with the S46 Container option includes an Option Request option(6) with the S46 Container option
codes as defined in[RFC7598]. As described in [RFC7598], codes as defined in[RFC7598]. As described in [RFC7598],
OPTION_S46_CONT_MAPE should be included for MAP-E[RFC7597], OPTION_S46_CONT_MAPE should be included for MAP-E,
OPTION_S46_CONT_MAPT for MAP-T [RFC7599], and OPTION_S46_CONT_LW for OPTION_S46_CONT_MAPT for MAP-T, and OPTION_S46_CONT_LW for
Lightweight 4over6 [RFC7596]. For the multicast case, Lightweight 4over6. For the multicast case, the the option number
OPTION_V6_PREFIX64 should be included for the delivery of multicast for OPTION_V6_PREFIX64 (113) should be included in the client's ORO.
services in the context of transition to IPv6. Note however, that
the ORO (Option Request option) with the S46 Container option code
could be optional if the network was planned to be S46-enabled by
default.
2. When the BNG receives the Solicit message, it should initiate a 2. When the BNG receives the Solicit message, it SHOULD initiate a
radius Access-Request message. In this message, a User-Name RADIUS Access-Request message continaing: A User-Name attribute (1)
attribute (1) should be filled by a CE MAC address or interface-id or (with either a CE MAC address, interface-id or both), a User-password
both. This message will be sent to the RADIUS server. In this attribute (2) (with a pre-configured shared password as defined in
message, a User-password attribute (2) should be filled by the shared [RFC2865], and the Softwire46-Configuration Attribute and/or
password that has been preconfigured on the DHCPv6 server, requesting Softwire46-Multicast Attribute (as reuquested by the client). The
authentication as defined in [RFC2865] with the corresponding resulting message is sent to the RADIUS server.
Softwire46-Configuration Attribute or Softwire46-Multicast Attribute.
The Softwire46-Configuration Attribute and Softwire46-Multicast
Attribute will be defined in the next Section.
3. If the authentication request is approved by the AAA server, an 3. If the authentication request is approved by the AAA server, and
Access-Accept message MUST be acknowledged with the corresponding suitable configuration is available, an Access-Accept message MUST be
Softwire46-Configuration Attribute or Softwire46-Multicast Attribute. acknowledged with the corresponding Softwire46-Configuration
Attribute or Softwire46-Multicast Attribute.
4. After receiving the Access-Accept message with the corresponding 4. After receiving the Access-Accept message with the corresponding
Attribute, the BNG SHOULD respond to the DHCPv6 Client (CE) with an Attribute, the BNG SHOULD respond to the DHCPv6 Client (CE) with an
Advertisement message. Advertisement message.
5. After receiving the Advertise message, the CE MAY request for the 5. On receipt of an Advertise message containing one or more of the
corresponding S46 Container Option, by including the S46 Container requested DHCPv6 softwire container options (94, 95, 96, or 113) the
option in the Request message. 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. After receiving the client's Request message, containing the 6. When the BNG receives the client's DHCPv6 Request message, it
corresponding S46 Container option, the BNG SHOULD reply to the CE constructs a Reply message containing the softwire container options
with the message containing the S46 Container option. The enumerated in the ORO. The recommended format of the MAC address is
recommended format of the MAC address is defined as Calling-Station- defined as Calling-Station-Id (Section 3.20 in [RFC3580] without the
Id (Section 3.20 in [RFC3580] without the SSID (Service Set SSID (Service Set Identifier) portion. It is for the IEEE 802.1X
Identifier) portion. 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 For Lightweight 4over6 [RFC7596], the subscriber's binding state
should be synchronized between the AAA server and lwAFTR. If the needs to be synchronized between the clients and the lwAFTR. This
bindings are pre-configured statically in both the AAA server and can be achieved in two ways: pre-configuring the bindings statically
lwAFTR, an AAA server does not need to configure the lwAFTR anymore. on both the AAA server and lwAFTR, or on-demand whereby the AAA
Otherwise, if the bindings are locally created on-demand in an AAA server updates the lwAFTR with the subscriber's binding state as it
server, it should inform the lwAFTR with the subscriber's binding is created or deleted.
state, in order to synchronize the binding information of the lwB4
with the lwAFTR.
The authorization operation could also be done independently after The authorization operation could also be done independently after
the authentication process. In such a scenario, after the the authentication process. In such a scenario, after the
authentication operation, the client MAY initiate a DHCPv6 Request authentication operation, the client MAY initiate a DHCPv6 Request
message that includes the corresponding S46 Container options. message that includes the corresponding S46 Container options.
Similar to the above scenario, the ORO with the corresponding S46 Similar to the above scenario, the ORO with the corresponding S46
Container option code in the initial DHCPv6 request could be optional Container option code in the initial DHCPv6 request could be optional
if the network was planned as being S46-enabled by default. When the if the network was planned as being S46-enabled by default. When the
BNG receives the DHCPv6 Request, it SHOULD initiate the radius BNG receives the DHCPv6 Request, it SHOULD initiate the RADIUS
Access-Request message, which MUST contain a Service-Type attribute Access-Request message, which MUST contain a Service-Type attribute
(6) with the value Authorize Only (17), the corresponding (6) with the value Authorize Only (17), the corresponding
Softwire46-Configuration Attribute, and a State attribute obtained Softwire46-Configuration Attribute, and a State attribute obtained
from the previous authentication process according to [RFC5080]. If from the previous authentication process according to [RFC5080]. If
the authorization request is approved by an AAA server, an Access- the authorization request is approved by an AAA server, an Access-
Accept message MUST be acknowledged with the corresponding Accept message MUST be acknowledged with the corresponding
Softwire46-Configuration Attribute. The BNG SHOULD then send the Softwire46-Configuration Attribute. The BNG SHOULD then send the
DHCPv6 Reply message containing the S46 Container option. DHCPv6 Reply message containing the S46 Container option.
There are three notices need to be considered:
o In both the above-mentioned scenarios, Message-authenticator (type
80) [RFC2869] SHOULD be used to protect both Access-Request and
Access-Accept messages.
o If the BNG does not receive the corresponding
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
Transmission 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.
In both the above-mentioned scenarios, Message-authenticator (type In both the above-mentioned scenarios, Message-authenticator (type
80) [RFC2869] SHOULD be used to protect both Access-Request and 80) [RFC2869] SHOULD be used to protect both Access-Request and
Access-Accept messages. Access-Accept messages.
If the BNG does not receive the corresponding If the BNG does not receive the corresponding
Softwire46-Configuration Attribute in the Access-Accept message it Softwire46-Configuration Attribute in the Access-Accept message it
MAY fallback to a pre-configured default S46 configuration, if any. MAY fallback to a pre-configured default S46 configuration, if any.
If the BNG does not have any pre-configured default S46 If the BNG does not have any pre-configured default S46
configuration, or if the BNG receives an Access-Reject, then S46 configuration, or if the BNG receives an Access-Reject, then S46
connection cannot be established. connection cannot be established.
As specified in [RFC3315], section 18.1.4, "Creation and Transmission As specified in [RFC3315], section 18.1.4, "Creation and Transmission
of Rebind Messages ", if the DHCPv6 server to which the DHCPv6 Renew of Rebind Messages ", if the DHCPv6 server to which the DHCPv6 Renew
message was sent at time T1 has not responded by time T2, the CE message was sent at time T1 has not responded by time T2, the CE
(DHCPv6 client) SHOULD enter the Rebind state and attempt to contact (DHCPv6 client) SHOULD enter the Rebind state and attempt to contact
any available server. In this situation, the secondary BNG receiving any available server. In this situation, the secondary BNG receiving
the DHCPv6 message MUST initiate a new Access-Request message towards the DHCPv6 message MUST initiate a new Access-Request message towards
skipping to change at page 7, line 27 skipping to change at page 7, line 44
4. Attributes 4. Attributes
This section defines the Softwire46-Configuration Attribute, This section defines the Softwire46-Configuration Attribute,
Softwire46-Priority Attribute, and Softwire46-Multicast Attribute. Softwire46-Priority Attribute, and Softwire46-Multicast Attribute.
The attribute design follows [RFC6158] and refers to [RFC6929]. The attribute design follows [RFC6158] and refers to [RFC6929].
The Softwire46-Configuration Attribute carries the configuration The Softwire46-Configuration Attribute carries the configuration
information for MAP-E, MAP-T, and Lightweight 4over6. The information for MAP-E, MAP-T, and Lightweight 4over6. The
configuration information for each S46 mechanism is carried in the configuration information for each S46 mechanism is carried in the
corresponding S46 Container option. Different sub options are corresponding Softwire46 TLVs. Different Sub TLVs are required for
required for each type of S46 Container option. The RADIUS attribute each type of Softwire46 TLVs. The RADIUS attribute for Dual-Stack
for Dual-Stack Lite [RFC6333] is defined in [RFC6519]. Lite [RFC6333] is defined in [RFC6519].
A client may be capable of supporting several different S46 A client may be capable of supporting several different S46
mechanisms. Depending on the deployment scenario, a client might mechanisms. Depending on the deployment scenario, a client might
request for more than one S46 mechanism at a time. The request for more than one S46 mechanism at a time. The
Softwire46-Priority Attribute contains information allowing the Softwire46-Priority Attribute contains information allowing the
client to prioritize which mechanism to use, corresponding to client to prioritize which mechanism to use, corresponding to
OPTION_S46_PRIORITY defined in [RFC8026]. OPTION_S46_PRIORITY defined in [RFC8026].
The Softwire46-Multicast Attirbute conveys the IPv6 prefixes to be The Softwire46-Multicast Attirbute conveys the IPv6 prefixes to be
used in [RFC8114] to synthesize IPv4-embedded IPv6 addresses. The used in [RFC8114] to synthesize IPv4-embedded IPv6 addresses. The
BNG SHALL use the IPv6 prefixes returned in the RADIUS BNG SHALL use the IPv6 prefixes returned in the RADIUS
Softwire46-Multicast Attirbute to populate the DHCPv6 PREFIX64 Option Softwire46-Multicast Attirbute to populate the DHCPv6 PREFIX64 Option
[RFC8115]. [RFC8115].
4.1. Softwire46-Configuration Attribute 4.1. Softwire46-Configuration Attribute
The Softwire46-Configuration Attribute can only encapsulate S46 This attribute is of type "tlv" as defined in the RADIUS Protocol
Container Option(s). The Softwire46-Configuration Attribute is Extensions [RFC6929]. It contains some sub-attributes, and the
structured as follows: requirements are as follows:
0 1 2 3 The Softwire46-Configuration Attribute MAY contain the S46-MAP-E 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 (see Section 4.2).
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
+ S46 Container Option(s) +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
TBD
Length
2 + the length of the S46 Container option(s)
specified in octets
S46 Container Option (s)
A variable field that may contains one or more S46 Container
option(s), defined in Section 4.2.
4.2. S46 Container Options The Softwire46-Configuration Attribute MAY contain the S46-MAP-T TLV
(see Section 4.2).
The S46 Container Option can only be encapsulated in the The Softwire46-Configuration Attribute MAY contain the S46-
Lightweight-4over6 TLV (see Section 4.2).
The Softwire46-Configuration Attribute MUST contain at least one
Softwire46 TLV in the attribute.
The Softwire46-Configuration Attribute conveys the configuration
information for MAP-E, MAP-T, and Lightweight 4over6. The BNG 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 appear in an Access-Accept
packet. It MAY also appear in an Access-Request packet.
The Softwire46-Configuration Attribute MAY appear in a CoA-Request
packet.
The Softwire46-Configuration Attribute MAY appear in an Accounting-
Request packet.
The Softwire46-Configuration Attribute MUST NOT appear in any other
RADIUS packet.
The Softwire46-Configuration Attribute can only encapsulate
Softwire46 TLV. The Softwire46-Configuration Attribute is structured
as follows:
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 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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
identifier: 241.Extended-Type(TBD1).
4.2. Softwire46 TLVs
The Softwire46 TLV 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 S46 Container option 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 S46 Container Option be at most one instance of each type of Softwire46 TLV encapsulated
encapsulated in one Softwire46-Configuration Attribute. in one Softwire46-Configuration Attribute.
There are three types of Softwire46 TLV, namely S46-MAP-E TLV,
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.Rule-IPv6-Prefix / | 1.Rule-IPv6-Prefix
| | Sub Option | | Sub-TLV
| 1.S46-Rule Sub Option--+ 2.Rule-IPv4-Prefix | 1.S46-Rule Sub TLV-----+ 2.Rule-IPv4-Prefix
| | Sub Option S46-MAP-E TLV | | Sub-TLV
| 2.S46-BR Sub Option | 3.EA Length Sub | 2.S46-BR Sub TLV | 3.EA Length Sub-
S46 Container Option--+ 3.S46-DMR Sub Option \ Option S46-MAP-T TLV---------+ 3.S46-DMR Sub TLV \ TLV
| |
| /1.IPv4-address S46-Lightweight | /1.IPv4-address
| | Sub Option -4over6 TLV | | Sub-TLV
| 4.S46-v4v6Bind Sub Option--| 2.Bind-IPv6-Prefix | 4.S46-v4v6Bind Sub TLV --| 2.Bind-IPv6-Prefix
| \ Sub Option | \ Sub-TLV
| /1.PSID-offset | /1.PSID-offset
| | Sub Option | | Sub-TLV
| 5.S46-PORTPARAMS Sub Option--| 2.PSID-len | 5.S46-PORTPARAMS Sub TLV --| 2.PSID-len
| | Sub Option | | Sub-TLV
\ \3.PSID Sub \ \3.PSID Sub-
Option TLV
Figure 2: S46 Container Option Hierarchy
There are three types of S46 Container Options, namely MAP-E Figure 2: Softwire46 TLVs Hierarchy
Container Option, MAP-T Container Option, Lightweight 4over6
Container Option. Each type of S46 Container Option contains a
number of sub options, defined in Section 4.3. The hierarchy of the
S46 Container Option is shown in Figure 2. Section 4.5 describes
which Sub Options are mandatory, optional, or not permitted for each
defined S46 Container Option.
There are three types of S46-Rule Sub Options, namely Basic Mapping The format of S46-MAP-E TLV is shown as below:
Rule, Forwarding Mapping Rule, Basic and Forwarding Mapping Rule.
Each type of S46-Rule Sub Option also contains a number of Sub
Options. The Rule-IPv6-Prefix Sub Option is necessary for every type
of S46-Rule Sub Option. It should appear for once and only once.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | | | TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
+ Sub Options +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type TLV-Type
TBD1 MAP-E Container Option TBD2
TBD2 MAP-T Container Option TLV-Length
TBD3 Lightweight 4over6 Container Option The TLV-Length field is one octet and indicates the length of this
Length TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
2 + the length of the Sub Options specified in octets TLV-Value
Sub Option This field contains a set of TLVs as follows:
A variable-length field that contains necessary sub options It MUST contain the S46-Rule Sub TLV, defined in Section 4.4.1
defined in Section 4.3 and zero or several optional sub It MUST contain the S46-BR Sub TLV, defined in Section 4.4.2
options, defined in Section 4.4. It MAY contain the S46-PORTPARAMS Sub TLV, defined in Section 4.4.5
NOTE: The Type values for each S46 Container Option are the same
as the S46-option-code values of the corresponding S46 Mechanisms
specified in Section 6.1.
4.3. Sub Options for S46 Container Option
4.3.1. S46-Rule Sub Option The format of S46-MAP-T TLV is shown as below:
The S46-Rule Sub Option can only be encapsulated in the MAP-E 0 1 2 3
Container Option or the MAP-T Container Option. Depending on 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
deployment scenario, one Basic Mapping Rule and zero or more +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Forwarding Mapping Rules MUST be included in one MAP-E Container | TLV-Type | TLV-Length | TLV-Value ...
Option or MAP-T Container Option. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
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
Each type of S46-Rule Sub Option also contains a number of sub The format of S46-Lightweight 4over6 TLV is shown as below:
options, including Rule-IPv6-Prefix Sub Option, Rule-IPv4-Prefix Sub
Option, and EA Length Sub Option. The structure of the sub options
for S46-Rule Sub Option is defined in section 4.4.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | | | TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
+ Sub Options +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
1 Basic Mapping Rule (Not Forwarding Mapping Rule) TBD4
2 Forwarding Mapping Rule (Not Basic Mapping Rule) TLV-Length
3 Basic & Forwarding Mapping Rule The TLV-Length field is one octet and indicates the length of this
SubLen TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
2 + the length of the Sub Options specified in octets TLV-Value
Sub Option This field contains a set of TLVs as follows:
A variable-length field that contains sub options defined in It MUST contain the S46-BR Sub TLV, defined in Section 4.4.2
Section 4.4. 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.2. S46-BR Sub Option 4.3. Softwire46 Sub TLVs
The S46-BR Sub Option can only be encapsulated in the MAP-E Container The table below shows which encapsulated Sub TLVs are mandatory,
Option or the Lightweight 4over6 Container Option. There MUST be at optional, or not permitted for each defined Softwire46 TLV.
least one S46-BR Sub Option included in each MAP-E Container Option
or Lightweight 4over6 Container Option. +----------------+-------+-------+--------------------+
| Sub TLV | MAP-E | MAP-T | Lightweight 4over6 |
+----------------+-------+-------+--------------------+
| S46-BR | M | N/P | M |
+----------------+-------+-------+--------------------+
| S46-Rule | M | M | N/P |
+----------------+-------+-------+--------------------+
| S46-DMR | N/P | M | N/P |
+----------------+-------+-------+--------------------+
| S46-V4V6Bind | N/P | N/P | O |
+----------------+-------+-------+--------------------+
| S46-PORTPARAMS | O | O | O |
+----------------+-------+-------+--------------------+
M - Mandatory, O - Optional, N/P - Not Permitted
According to the table described above, the Fig.2 had beed structured
into Figure 3, Figure 4 and Figure 5:
/ (Mandatory) /1.Rule-IPv6-Prefix
| | 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
/ (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
/ (Mandatory)
|
| 1.S46-BR Sub TLV
- - - - - - - - - - - - - - - - - - - - - - - - -
| (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
4.4. The format of Softwire46 Sub TLVs
4.4.1. S46-Rule Sub TLV
The S46-Rule Sub TLV can only be encapsulated in the S46-MAP-E TLV or
the S46-MAP-T TLV. Depending on deployment scenario, one Basic
Mapping Rule and zero or more Forwarding Mapping Rules MUST be
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,
including Rule-IPv6-Prefix sub-TLV, Rule-IPv4-Prefix sub-TLV, and EA-
Length sub-TLV. The structure of the sub-TLVs for S46-Rule Sub TLV
is defined in section 4.5.
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
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
The S46-BR Sub TLV can only be encapsulated in the S46-MAP-E TLV or
S46-Lightweight 4over6 TLV. There MUST be at least one S46-BR Sub
TLV included in each S46-MAP-E TLV or S46-Lightweight--4over6 TLV.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | | | TLV-Type | TLV-Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| | | |
| BR-ipv6-address | | BR-ipv6-address |
| | | |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TLV-Type
SubType 4
4 (SubType number, for the S46-BR sub option) TLV-Length
SubLen 18 octets
18 (the length of the S46-BR sub option)
BR-ipv6-address BR-ipv6-address
A fixed-length field of 16 octets that specifies the IPv6 IPv6 address. A fixed-length field of 16 octets that specifies
address for the S46 BR. the IPv6 address for the S46 BR.
4.3.3. S46-DMR Sub Option 4.4.3. S46-DMR Sub TLV
The S46-DMR Sub Option can only appear in the MAP-T Container Option. The S46-DMR Sub TLV can only appear in the S46-MAP-T TLV. There MUST
There MUST be exactly one S46-DMR Sub Option included in one MAP-T be exactly one S46-DMR Sub TLV included in one S46-MAP-T TLV.
Container Option.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved |dmr-prefix6-len| | TLV-Type | TLV-Length | Reserved |dmr-prefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| dmr-ipv6-prefix | | dmr-ipv6-prefix |
| (variable length) | | (variable length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
5 (SubType number, for the S46-DMR Sub Option) 5
SubLen TLV-Type
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 zero. 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 An 8 bits long field that expresses the bitmask length of
the IPv6 prefix specified in the dmr-ipv6-prefix field. the IPv6 prefix specified in the dmr-ipv6-prefix field.
Allowed values range from 0 to 96. Allowed values range from 0 to 96.
dmr-ipv6-prefix dmr-ipv6-prefix
A variable-length field specifying the IPv6 prefix or IPv6 Prefix. A variable-length field specifying the IPv6
address for the BR. This field is right-padded with zeros prefix or address for the BR. This field is right-padded
to the nearest octet boundary when dmr-prefix6-len is not with zeros to the nearest octet boundary when
divisible by 8. dmr-prefix6-len is not divisible by 8.
4.3.4. S46-V4V6Bind Sub Option 4.4.4. S46-V4V6Bind Sub TLV
The S46-V4V6Bind Sub Option can only be encapsulated in the The S46-V4V6Bind Sub TLV can only be encapsulated in the S46-
Lightweight 4over6 Container Option. There MUST be at most one Lightweight-4over6 TLV. There MUST be exactly one S46-V4V6Bind Sub
S46-V4V6Bind Sub Option included in each Lightweight 4over6 Container TLV included in each S46-Lightweight-4over6 TLV.
Option.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | | | TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | TLV-Type
+ Sub Options + 6
| | TLV-Length
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The TLV-Length field is one octet and indicates the length of this
SubType TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
6 (SubType number, for the S46-V4V6Bind sub option) TLV-Value
SubLen This field contains a set of TLVs as follows:
2 + the length of the Sub Options specified in octets IPv4-address sub-TLV
Sub Option This TLV contains an IPv4 address that MAY be used to
A variable-length field that contains sub options defined specify the full or shared IPv4 address of the CE.
in Section 4.5. 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.3.5. S46-PORTPARAMS Sub Option 4.4.5. S46-PORTPARAMS Sub TLV
The S46-PORTPARAMS Sub Option specifies optional port set information The S46-PORTPARAMS Sub TLV specifies optional port set information
that MAY be provided to CEs. The S46-PORTPARAMS sub option can be that MAY be provided to CEs. The S46-PORTPARAMS Sub TLV can be
included optionally by each type of S46 Container Option. included optionally by each type of Softwire46 TLVs .
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | | | TLV-Type | TLV-Length | TLV-Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | TLV-Type
+ Sub Options + 7
| | TLV-Length
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The TLV-Length field is one octet and indicates the length of this
SubType TLV, including the TLV-Type, TLV-Length, and TLV-Value fields.
7 (SubType number, for the S46-PORTPARAMS Sub Option) TLV-Value
SubLen This field contains a set of TLVs as follows:
2 + the length of the Sub Options specified in octets PSID-offset sub-TLV
Sub Option This TLV pecifies the numeric value for the S46 algorithm's
A variable-length field that contains sub options defined excluded port range/offset bits (a bits).
in Section 4.6. 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.4. Sub Options for S46-Rule Sub Option 4.5. Sub-TLVs for S46-Rule Sub TLV
4.4.1. Rule-IPv6-Prefix Sub Option There are three types of S46-Rule sub-TLVs, namely Basic Mapping
Rule, Forwarding Mapping Rule, Basic and Forwarding Mapping Rule.
Each type of S46-Rule Sub TLV also contains a number of sub-TLVs.
The Rule-IPv6-Prefix sub-TLV is necessary for every type of S46-Rule
Sub TLV. It should appear for once and only once.
The Rule-IPv6-Prefix Sub Option is necessary for every S46-RULE sub 4.5.1. Rule-IPv6-Prefix sub-TLV
option. There MUST be exactly one S46-IPv6-Prefix Sub Option
encapsulated in each type of S46-Rule Sub Option.
The IPv6 Prefix sub option follows the framed IPv6 prefix designed in The Rule-IPv6-Prefix sub-TLV is necessary for every S46-Rule Sub TLV.
[RFC3162]. 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].
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved |ruleprefix6-len| | TLV-Type | TLV-Length | Reserved |ruleprefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| rule-ipv6-prefix | | rule-ipv6-prefix |
| | | |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
8 (SubType number, for the Rule-IPv6-Prefix Sub Option) 8
SubLen TLV-Length
20 (the length of the Rule-IPv6-Prefix Sub Option) 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
A 128 bits long field that specifies an IPv6 prefix that IPv6 Prefix. A 128 bits long field that specifies an IPv6
appears in a MAP rule. prefix that appears in a MAP rule.
4.4.2. Rule-IPv4-Prefix Sub Option 4.5.2. Rule-IPv4-Prefix Sub-TLV
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved | prefix4-len | | TLV-Type | TLV-Length | Reserved |ruleprefix4-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| rule-ipv4-prefix | | rule-ipv4-prefix |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
9 (SubType number, for the Rule-IPv4-Prefix Sub Option) 9
SubLen TLV-Length
8 (the length of the Rule-IPv4-Prefix Sub Option) 8
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.
Prefix4-len Ruleprefix4-len
The length of IPv4 prefix, specified in the rule-ipv4-prefix The length of IPv4 prefix, specified in the rule-ipv4-prefix
field, expressed in bits. field, expressed in bits.
rule-ipv4-prefix rule-ipv4-prefix
A 32 bits long field that specifies an IPv4 prefix that IPv4 Prefix. A 32 bits long field that specifies an IPv4
appears in a MAP rule. prefix that appears in a MAP rule.
4.4.3. EA Length Sub Option 4.5.3. EA-Length Sub-TLV
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | EA-len | | TLV-Type | TLV-Length | EA-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
10 (SubType number, for the EA Length Sub Option) 10
SubLen TLV-Length
4 (the length of the EA Length Sub Option) 4
EA-len EA-len
A 16 bits long field that specifies the Embedded-Address(EA) Integer. A 16 bits long field that specifies the
bit length. Allowed values range from 0 to 48. Embedded-Address(EA) bit length. Allowed values range
from 0 to 48.
4.5. Sub Options for S46-v4v6Bind Sub Option 4.6. Sub-TLVs for S46-v4v6Bind Sub TLV
4.5.1. The IPv4-address Sub Option 4.6.1. The IPv4-address sub-TLV
The IPv4-address Sub Option 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.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | ipv4-address | | TLV-Type | TLV-Length | ipv4-address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ipv4-address | | ipv4-address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
11 (SubType number, for the IPv4-address Sub Option) 11
SubLen TLV-Length
6 (the length of the Rule-IPv4-Prefix Sub Option) 6
ipv4-address ipv4-address
A 32 bits long field that specifies an IPv4 address that IPv4 address. A 32 bits long field that specifies an IPv4
appears in the V4V6Bind Option. address that appears in the V4V6Bind Option.
4.5.2. The Bind-IPv6-Prefix Sub Option 4.6.2. The Bind-IPv6-Prefix Sub-TLV
The IPv6 prefix field specified in this field is used by the CE to The bind-ipv6-prefix field specified in this field is used by the CE
identify the correct prefix to be used for the tunnel source. to identify the correct prefix to be used for the tunnel source.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | Reserved |bindprefix6-len| | TLV-Type | TLV-Length | Reserved |bindprefix6-len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| bind-ipv6-prefix | | bind-ipv6-prefix |
| (variable length) | | (variable length) |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
12 (SubType number, for the Bind-IPv6-Prefix Sub Option) 12
SubLen TLV-Length
20 (the length of the Bind-IPv6-Prefix Sub Option) 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.
bindprefix6-len bindprefix6-len
An 8 bits long field that expresses the bitmask length of Integer. An 8 bits long field that expresses the bitmask
the IPv6 prefix specified in the bind-ipv6-prefix field. length of the IPv6 prefix specified in the bind-ipv6-prefix
Allowed values range from 0 to 96. field. Allowed values range from 0 to 96.
bind-ipv6-prefix bind-ipv6-prefix
A variable-length field specifying the IPv6 prefix or IPv6 prefix. A variable-length field specifying the IPv6
address for the S46 CE. This field is right-padded with prefix or address for the S46 CE. This field is right-padded
zeros to the nearest octet boundary when bindprefix6-len with zeros to the nearest octet boundary when bindprefix6-len
is not divisible by 8. is not divisible by 8.
4.6. Sub Options for S46-PORTPARAMS Sub Option 4.7. Sub-TLVs for S46-PORTPARAMS Sub TLV
4.6.1. The PSID-offset Sub Option 4.7.1. The PSID-offset sub-TLV
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 4
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | PSID-Offset | | TLV-Type | TLV-Length | PSID-Offset |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
13 (SubType number, for the PSID-offset Sub Option) 13
SubLen TLV-Length
3 (the length of the PSID-offset Sub Option) 3
PSID-Offset PSID-Offset
An 8 bits long field that specifies the numeric value Integer. An 8 bits long field that specifies the
for the S46 algorithm's excluded port range/offset numeric value for the S46 algorithm's excluded
bits (a bits), as per Section 5.1 of RFC7597. Allowed port range/offset bits (a bits), as per Section 5.1
values are between 0 and 15. Default values for this of RFC7597. Allowed values are between 0 and 15.
field are specific to the Softwire mechanism being Default values for this field are specific to the
implemented and are defined in the relevant Softwire mechanism being implemented and are defined
specification document. in the relevant specification document.
4.6.2. The PSID-len Sub Option 4.7.2. The PSID-len sub-TLV
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 4
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | PSID-len | | TLV-Type | TLV-Length | PSID-len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
14 (SubType number, for the PSID-len Sub Option) 14
SubLen TLV-Length
3 (the length of the PSID-len Sub Option) 3
PSID-len PSID-len
An 8 bits long field that specifies the number of Integer. An 8 bits long field that specifies the
significant bits in the PSID field (also known number of significant bits in the PSID field (also
as 'k'). When set to 0, the PSID field is to be known as 'k'). When set to 0, the PSID field is to
ignored. After the first 'a' bits, there are k bits be ignored. After the first 'a' bits, there are k
in the port number representing the value of the PSID. bits in the port number representing the value of
Subsequently, the address sharing ratio would be 2 ^k. the PSID. Subsequently, the address sharing ratio
would be 2 ^k.
4.6.3. The PSID Sub Option 4.7.3. The PSID sub-TLV
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SubType | SubLen | PSID | | TLV-Type | TLV-Length | PSID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
SubType TLV-Type
15 (SubType number, for the PSID Sub Option) 15
SubLen TLV-Length
4 (the length of the PSID Sub Option) 4 (the length of the PSID Sub Option)
PSID (Port-set ID) PSID (Port-set ID)
An explicit 16-bit (unsigned word) PSID value. The PSID Integer. An explicit 16-bit (unsigned word) PSID value.
value algorithmically identifies a set of ports assigned The PSID value algorithmically identifies a set of ports
to a CE. The first k bits on the left of this 2-octet field assigned to a CE. The first k bits on the left of this
is the PSID value. The remaining (16-k) bits on the right 2-octet field is the PSID value. The remaining (16-k) bits
are padding zeros. on the right are padding zeros.
4.7. Softwire46 Sub Options Encapsulation 4.8. Softwire46-Priority Attribute
The table below shows which encapsulated Sub Options are mandatory, The Softwire46-Priority Attribute defines a 16-bit S46-option-code
optional, or not permitted for each defined S46 Container Option. field to contain the information allowing the client to prioritize
which mechanism to use, corresponding to OPTION_S46_PRIORITY defined
in [RFC8026].
+----------------+-------+-------+--------------------+ The Softwire46-Priority Attribute MAY appear in an Access-Accept
| Sub Option | MAP-E | MAP-T | Lightweight 4over6 | packet. It MAY also appear in an Access-Request packet.
+----------------+-------+-------+--------------------+
| S46-BR | M | N/P | M |
+----------------+-------+-------+--------------------+
| S46-Rule | M | M | N/P |
+----------------+-------+-------+--------------------+
| S46-DMR | N/P | M | N/P |
+----------------+-------+-------+--------------------+
| S46-V4V6Bind | N/P | N/P | O |
+----------------+-------+-------+--------------------+
| S46-PORTPARAMS | O | O | O |
+----------------+-------+-------+--------------------+
M - Mandatory, O - Optional, N/P - Not Permitted The Softwire46-Priority Attribute MAY appear in a CoA-Request packet.
4.8. Softwire46-Priority Attribute The Softwire46-Priority Attribute MAY appear in an Accounting-Request
packet.
The Softwire46-Priority Attribute MUST NOT appear in any other 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 | S46-option-code | | Type | Length | Extended-Type | ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | S46-option-code | ... S46-option-code | S46-option-code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type Type
TBD 241 (To be confirmed by IANA)
Length Length
2 + the length of the S46-option-code(s) specified in octets 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 S46-option-code.
Extended-Type
TBD5
S46-option-code S46-option-code
A 16-bit IANA-registered option code of the DHCPv6 option Integer. A 16-bit IANA-registered option code of the
that is used to identify the softwire mechanisms. S46 DHCPv6 option that is used to identify the softwire
mechanisms are prioritized in the appearance order of the mechanisms. Refer to section 5 of RFC7598. S46 mechanisms are
prioritized in the appearance order of the
S46-option-code(s) in the Softwire46-Priority Attribute. S46-option-code(s) in the Softwire46-Priority Attribute.
A Softwire46-Priority Attribute MUST contain at least one A Softwire46-Priority Attribute MUST contain at least one
S46-option-code. The option codes of the corresponding S46 S46-option-code. The option codes of the corresponding
mechanisms are listed in Section 6.1. S46 mechanisms are listed in Section 6.3.
Softwire46-Priority Attribute is associated with the following
identifier: 241.Extended-Type(TBD5).
4.9. Softwire46-Multicast Attribute 4.9. Softwire46-Multicast Attribute
The Softwire46-Multicast attribute conveys the IPv6 prefixes to be The Softwire46-Multicast attribute conveys the IPv6 prefixes to be
used in [RFC8114] to synthesize IPv4-embedded IPv6 addresses. The used to synthesize IPv4-embedded IPv6 addresses as per [RFC8114].
BNG SHALL use the IPv6 prefixes returned in the RADIUS The BNG SHALL use the IPv6 prefixes returned in the RADIUS
Softwire46-Multicast attribute to populate the DHCPv6 PREFIX64 Option Softwire46-Multicast attribute to populate the DHCPv6 PREFIX64 Option
[RFC8115]. [RFC8115].
This attribute MAY be used in Access-Request packets as a hint to the This attribute MAY be used in Access-Request packets as a hint to the
RADIUS server. For example, if the BNG is pre-configured with RADIUS server. For example, if the BNG is pre-configured with
Softwire46-Multicast, these prefixes MAY be inserted in the Softwire46-Multicast, these prefixes MAY be inserted in the
attribute. The RADIUS server MAY ignore the hint sent by the BNG, attribute. The RADIUS server MAY ignore the hint sent by the BNG,
and it MAY assign a different Softwire46-Multicast attribute. and it MAY assign a different Softwire46-Multicast attribute.
The Softwire46-Multicast Attribute MAY appear in an Access-Accept The Softwire46-Multicast Attribute MAY appear in an Access-Accept
skipping to change at page 19, line 43 skipping to change at page 23, line 43
(see Section 4.9.3). (see Section 4.9.3).
The Softwire46-Multicast Attribute MUST include the ASM-Prefix64 TLV The Softwire46-Multicast Attribute MUST include the ASM-Prefix64 TLV
or the SSM-Prefix64 TLV, and it MAY include both. or the SSM-Prefix64 TLV, and it MAY include both.
The U-Prefix64 TLV MUST be present when the SSM-Prefix64 TLV is 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 present. The U-Prefix64 TLV MAY be present when the ASM-Prefix64 TLV
is present. is present.
The format of the Softwire46-Multicast Attribute is shown in The format of the Softwire46-Multicast Attribute is shown in
Figure 3. Figure 6.
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 | Value ... | Type | Length | Extended-Type | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3 Figure 6
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 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
TBD1. 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 4.9.1. This TLV contains the ASM IPv6 prefix. Refer to Section 4.9.1.
SSM-Prefix64 TLV SSM-Prefix64 TLV
This TLV contains the SSM IPv6 prefix. Refer to Section 4.9.2. This TLV contains the SSM IPv6 prefix. Refer to Section 4.9.2.
U-Prefix64 TLV U-Prefix64 TLV
This TLV contains the IPv4 prefix used for address translation This TLV contains the IPv4 prefix used for address translation
[RFC6052]. Refer to Section 4.9.3. [RFC6052]. Refer to Section 4.9.3.
Softwire46-Multicast Attribute is associated with the following Softwire46-Multicast Attribute is associated with the following
identifier: 241.Extended-Type(TBDx). identifier: 241.Extended-Type(TBD6).
4.9.1. ASM-Prefix64 TLV 4.9.1. ASM-Prefix64 TLV
The format of ASM-Prefix64 TLV is shown in Figure 4. The format of ASM-Prefix64 TLV is shown in Figure 7.
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 | Reserved | Prefix-Length |ASM Prefix64 ... | TLV-Type | Reserved | Prefix-Length |ASM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ASM Prefix64 ... ... ASM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ASM Prefix64 ... ... ASM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... ASM Prefix64 | ... ASM Prefix64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4 Figure 7
TLV-Type TLV-Type
1 16
Reserved Reserved
This field is reserved. It is always set to zero. This field is This field is reserved. It is always set to zero. This field is
one octet in length. one octet in length.
Length Prefix-Length
The length of the prefix, in bits. The length of the prefix, in bits.
ASM Prefix64 ASM Prefix64
IPv6 prefix. This field specifies the IPv6 multicast prefix to be IPv6 prefix. This field specifies the IPv6 multicast prefix to be
used to synthesize the IPv4-embedded IPv6 addresses of the used to synthesize the IPv4-embedded IPv6 addresses of the
multicast groups in the ASM mode. The conveyed multicast IPv6 multicast groups in the ASM mode. The conveyed multicast IPv6
prefix MUST belong to the ASM range. prefix MUST belong to the ASM range.
4.9.2. SSM-Prefix64 TLV 4.9.2. SSM-Prefix64 TLV
The format of SSM-Prefix64 TLV is shown in Figure 5. The format of SSM-Prefix64 TLV is shown in Figure 8.
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 | Reserved |Prefix-Length | SSM Prefix64 ... | TLV-Type | Reserved |Prefix-Length | SSM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... SSM Prefix64 ... ... SSM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... SSM Prefix64 ... ... SSM Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... SSM Prefix64 | ... SSM Prefix64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5 Figure 8
TLV-Type TLV-Type
2 17
Reserved Reserved
This fiel is reserved. It is always set to zero. This field is This field is reserved. It is always set to zero. This field is
one octet in length. one octet in length.
Length Prefix-Length
The length of the prefix, in bits. The length of the prefix, in bits.
SSM Prefix64 SSM Prefix64
IPv6 prefix. This field specifies the IPv6 multicast prefix to be IPv6 prefix. This field specifies the IPv6 multicast prefix to be
used to synthesize the IPv4-embedded IPv6 addresses of the used to synthesize the IPv4-embedded IPv6 addresses of the
multicast groups in the SSM mode. The conveyed multicast IPv6 multicast groups in the SSM mode. The conveyed multicast IPv6
prefix MUST belong to the SSM range. prefix MUST belong to the SSM range.
4.9.3. U-Prefix64 TLV 4.9.3. U-Prefix64 TLV
The format of U-Prefix64 TLV is shown in Figure 6. The format of U-Prefix64 TLV is shown in Figure 9.
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 | Reserved | Prefix-Length |Unicast Prefix64 | TLV-Type | Reserved | Prefix-Length |Unicast Prefix64
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Unicast Prefix64 ... ... Unicast Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Unicast Prefix64 ... ... Unicast Prefix64 ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
... Unicast Prefix64 | ... Unicast Prefix64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 6 Figure 9
TLV-Type TLV-Type
3 18
Reserved Reserved
This fiel is reserved. It is always set to zero. This field is This field is reserved. It is always set to zero. This field is
one octet in length. one octet in length.
Length Prefix-Length
The length of the prefix, in bits. The length of the prefix, in bits.
Unicast Prefix64 Unicast Prefix64
IPv6 prefix. This field identifies the IPv6 unicast prefix to be IPv6 prefix. This field identifies the IPv6 unicast prefix to be
used in SSM mode for constructing the IPv4-embedded IPv6 addresses used in SSM mode for constructing the IPv4-embedded IPv6 addresses
representing the IPv4 multicast sources in the IPv6 domain. It representing the IPv4 multicast sources in the IPv6 domain. It
may also be used to extract the IPv4 address from the received may also be used to extract the IPv4 address from the received
multicast data flows. multicast data flows.
4.10. Table of attributes 4.10. Table of attributes
This document proposes three new RADIUS attributes, and their formats
are as follows:
o Softwire46-Configuration Attribute: 241.TB1
o Softwire46-Priority Attribute: 241.TB5
o Softwire46-Multicast Attribute: 241.TB6
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 TBD1 Softwire46- 0-1 0-1 0 0 0-1 241.TBD1 Softwire46-
Configuration Configuration
0-1 0-1 0 0 0-1 TBD2 Softwire46- 0-1 0-1 0 0 0-1 241.TBD5 Softwire46-
Priority Priority
0-1 0-1 0 0 0-1 TBD3 Softwire46- 0-1 0-1 0 0 0-1 241.TBD6 Softwire46-
Multicast Multicast
0-1 0-1 0 0 0-1 1 User-Name
0-1 0 0 0 0 2 User-Password
0-1 0-1 0 0 0-1 6 Service-Type
0-1 0-1 0-1 0-1 0-1 80 Message-
Authenticator
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 5. Diameter Considerations
S46 Configuration using Diameter [RFC6733] is specified in [RFC7678]. S46 Configuration using Diameter [RFC6733] is specified in [RFC7678].
6. IANA Considerations 6. IANA Considerations
This document requires the assignment of two new RADIUS Attribute For this document, IANA has made new code point assignments for
Type in the "Radius Types" registry (currently located at RADIUS attributes as described in the following subsections.
http://www.iana.org/assignments/radius-types for the following
attributes:
o Softwire46-Configuration Attribute TBD1 6.1. New RADIUS Attributes
o Softwire46-Priority Attribute TBD2 The Attribute Types defined in this document have been registered by
IANA from the RADIUS namespace as described in the "IANA
Considerations" section of [RFC3575], in accordance with BCP 26
[RFC5226]. For RADIUS packets, attributes, and registries created by
this document, IANA has placed them at
<http://www.iana.org/assignments/radius-types>.
o Softwire46-Multicast Attribute TBD3 In particular, this document defines three new RADIUS attributes, as
follows, from the Short Extended Space of
[RFC6929].Softwire46-Configuration Attribute, Softwire46-Priority
Attribute, and Softwire46-Multicast Attribute
IANA should allocate the numbers from the standard RADIUS Attributes Type Description Data Type Reference
space using the "IETF Review" policy [RFC5226]. ---- ----------- --------- ---------
241.TB1 Softwire46-Configuration tlv Section 4.1
241.TB5 Softwire46-Priority integer Section 4.8
241.TB6 Softwire46-Multicast tlv Section 4.9
6.1. S46 Mechanisms and Their Identifying Option Codes 6.2. New RADIUS TLVs
IANA has created a new registry called "RADIUS Softwire46
Configuration and Multicast TLVs". All TLVs in this registry have
one or more parent RADIUS attributes in nesting (refer to
[RFC6929]]). This registry contains the following TLVs:
Value Description Data Type Reference
----- ----------- --------- ---------
0 Reserved
TB2 S46-MAP-E tlv Section 4.2
TB3 S46-MAP-T tlv Section 4.2
TB4 S46-Lightweight 4over6 tlv Section 4.2
1 S46-Rule tlv Section 4.4.1
2 S46-Rule tlv Section 4.4.1
3 S46-Rule tlv Section 4.4.1
4 S46-BR ipv6addr Section 4.4.2
5 S46-DMR ipv6prefix Section 4.4.3
6 S46-V4V6Bind tlv Section 4.4.4
7 S46-PORTPARAMS tlv Section 4.4.5
8 Rule-IPv6-Prefix ipv6prefix Section 4.5.1
9 Rule-IPv4-Prefix ipv4prefix Section 4.5.2
10 EA-Length integer Section 4.5.3
11 IPv4-address ipv4addr Section 4.6.1
12 Bind-IPv6-Prefix ipv6prefix Section 4.6.2
13 PSID-offset integer Section 4.7.1
14 PSID-len integer Section 4.7.2
15 PSID integer Section 4.7.3
16 ASM-Prefix64 ipv6prefix Section 4.9.1
17 SSM-Prefix64 ipv6prefix Section 4.9.2
18 U-Prefix64 ipv6prefix Section 4.9.3
19-255 Unassigned, TB2,TB3,TB4 will be assigned by IANA
The registration procedure for this registry is Standards Action as
defined in [RFC5226].
6.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 to create and maintain a new registry
entitled "Option Codes Permitted in the Softwire46-Priority entitled "Option Codes Permitted in the Softwire46-Priority
Attribute". This document requires IANA to register four option Attribute". This document requires IANA to register three option
codes of the Softwire46 mechanisms permitted to be included in the codes of the Softwire46 mechanisms permitted to be included in the
Softwire46-Priority Attribute. Additional options may be added to Softwire46-Priority Attribute. The value of option code is
this list in the future using the IETF Review process described in corresponding to the TLV-Type defined in the Section 4.2. Additional
Section 4.1 of [RFC5226]. 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 The following table shows the option codes that are required and the
S46 mechanisms that they represent. The option code for DS-Lite is S46 mechanisms that they represent. The option code for DS-Lite is
derived from the IANA allocated RADIUS Attribute Type value for DS- derived from the IANA allocated RADIUS Attribute Type value for DS-
Lite [RFC6519]. The option codes for MAP-E, MAP-T and Lightweight Lite [RFC6519]. The option codes for MAP-E, MAP-T and Lightweight
4over6 need to be determined. The option codes for MAP-E, MAP-T, and 4over6 need to be determined. The option codes for MAP-E, MAP-T, and
Lightweight 4over6 should also be used as the option Type values for Lightweight 4over6 should also be used as the TLV-Type values for the
the MAP-E, MAP-T, and Lightweight 4over6 Container Options defined in MAP-E, MAP-T, and Lightweight 4over6 TLV defined in Section 4.2.
Section 4.2.
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| Option Code | S46 Mechanism | Reference | | Option Code | S46 Mechanism | Reference |
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| TBD1 | MAP-E | RFC7597 | | TBD2 | MAP-E | RFC7597 |
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| TBD2 | MAP-T | RFC7599 | | TBD3 | MAP-T | RFC7599 |
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| TBD3 |Lightweight 4over6| RFC7596 | | TBD4 |Lightweight 4over6| RFC7596 |
+-------------+------------------+-----------+ +-------------+------------------+-----------+
| 144 | DS-Lite | RFC6519 | | 144 | DS-Lite | RFC6519 |
+--------------------------------+-----------+ +--------------------------------+-----------+
Table 1: Option Codes to S46 Mechanisms Table 1: Option Codes to S46 Mechanisms
7. Security Considerations 7. Security Considerations
Known security vulnerabilities of the RADIUS protocol are discussed Known security vulnerabilities of the RADIUS protocol are discussed
in [RFC2607], [RFC2865], and[RFC2869]. Use of IPsec [RFC4301] for in [RFC2607], [RFC2865], and[RFC2869]. Use of IPsec [RFC4301] for
providing security when RADIUS is carried in IPv6 is discussed in providing security when RADIUS is carried in IPv6 is discussed in
[RFC3162]. [RFC3162].
A malicious user may use MAC address spoofing on the shared password
that has been preconfigured on the DHCPv6 server to get unauthorized
configuration information.
Specific security considerations for interactions between the MAP CE Specific security considerations for interactions between the MAP CE
and the BNG are discussed in [RFC7597]. Security considerations for and the BNG are discussed in [RFC7597] and [RFC7599]. Security
Lightweight 4over6 are discussed in [RFC7596]. Security considerations for Lightweight 4over6 are discussed in [RFC7596].
considerations for DHCPv6-Based S46 Prioritization Mechanism are Security considerations for DHCPv6-Based S46 Prioritization Mechanism
discussed in [RFC8026]. Furthermore, generic DHCPv6 security are discussed in [RFC8026]. Security considerations for multicast
mechanisms can be applied to DHCPv6 intercommunication between the CE scenarios are discussed in [RFC 8114]. Furthermore, generic DHCPv6
and the BNG. security mechanisms can be applied to DHCPv6 intercommunication
between the CE and the BNG.
Security considerations for the Diameter protocol are discussed in Security considerations for the Diameter protocol are discussed in
[RFC6733]. [RFC6733].
8. Acknowledgements 8. Acknowledgements
The authors would like to thank the valuable comments made by Peter The authors would like to thank the valuable comments made by Peter
Lothberg, Wojciech Dec, 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-
skipping to change at page 26, line 46 skipping to change at page 31, line 32
[RFC3162] Aboba, B., Zorn, G., and D. Mitton, "RADIUS and IPv6", [RFC3162] Aboba, B., Zorn, G., and D. Mitton, "RADIUS and IPv6",
RFC 3162, DOI 10.17487/RFC3162, August 2001, RFC 3162, DOI 10.17487/RFC3162, August 2001,
<https://www.rfc-editor.org/info/rfc3162>. <https://www.rfc-editor.org/info/rfc3162>.
[RFC3315] Droms, R., Ed., Bound, J., Volz, B., Lemon, T., Perkins, [RFC3315] Droms, R., Ed., Bound, J., Volz, B., Lemon, T., Perkins,
C., and M. Carney, "Dynamic Host Configuration Protocol C., and M. Carney, "Dynamic Host Configuration Protocol
for IPv6 (DHCPv6)", RFC 3315, DOI 10.17487/RFC3315, July for IPv6 (DHCPv6)", RFC 3315, DOI 10.17487/RFC3315, July
2003, <https://www.rfc-editor.org/info/rfc3315>. 2003, <https://www.rfc-editor.org/info/rfc3315>.
[RFC4607] Holbrook, H. and B. Cain, "Source-Specific Multicast for [RFC3575] Aboba, B., "IANA Considerations for RADIUS (Remote
IP", RFC 4607, DOI 10.17487/RFC4607, August 2006, Authentication Dial In User Service)", RFC 3575,
<https://www.rfc-editor.org/info/rfc4607>. DOI 10.17487/RFC3575, July 2003,
<https://www.rfc-editor.org/info/rfc3575>.
[RFC5080] Nelson, D. and A. DeKok, "Common Remote Authentication [RFC5080] Nelson, D. and A. DeKok, "Common Remote Authentication
Dial In User Service (RADIUS) Implementation Issues and Dial In User Service (RADIUS) Implementation Issues and
Suggested Fixes", RFC 5080, DOI 10.17487/RFC5080, December Suggested Fixes", RFC 5080, DOI 10.17487/RFC5080, December
2007, <https://www.rfc-editor.org/info/rfc5080>. 2007, <https://www.rfc-editor.org/info/rfc5080>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<https://www.rfc-editor.org/info/rfc5226>.
[RFC6052] Bao, C., Huitema, C., Bagnulo, M., Boucadair, M., and X. [RFC6052] Bao, C., Huitema, C., Bagnulo, M., Boucadair, M., and X.
Li, "IPv6 Addressing of IPv4/IPv6 Translators", RFC 6052, Li, "IPv6 Addressing of IPv4/IPv6 Translators", RFC 6052,
DOI 10.17487/RFC6052, October 2010, DOI 10.17487/RFC6052, October 2010,
<https://www.rfc-editor.org/info/rfc6052>. <https://www.rfc-editor.org/info/rfc6052>.
[RFC6158] DeKok, A., Ed. and G. Weber, "RADIUS Design Guidelines", [RFC6158] DeKok, A., Ed. and G. Weber, "RADIUS Design Guidelines",
BCP 158, RFC 6158, DOI 10.17487/RFC6158, March 2011, BCP 158, RFC 6158, DOI 10.17487/RFC6158, March 2011,
<https://www.rfc-editor.org/info/rfc6158>. <https://www.rfc-editor.org/info/rfc6158>.
[RFC6929] DeKok, A. and A. Lior, "Remote Authentication Dial In User [RFC6929] DeKok, A. and A. Lior, "Remote Authentication Dial In User
Service (RADIUS) Protocol Extensions", RFC 6929, Service (RADIUS) Protocol Extensions", RFC 6929,
DOI 10.17487/RFC6929, April 2013, DOI 10.17487/RFC6929, April 2013,
<https://www.rfc-editor.org/info/rfc6929>. <https://www.rfc-editor.org/info/rfc6929>.
[RFC8026] Boucadair, M. and I. Farrer, "Unified IPv4-in-IPv6 [RFC8026] Boucadair, M. and I. Farrer, "Unified IPv4-in-IPv6
Softwire Customer Premises Equipment (CPE): A DHCPv6-Based Softwire Customer Premises Equipment (CPE): A DHCPv6-Based
Prioritization Mechanism", RFC 8026, DOI 10.17487/RFC8026, Prioritization Mechanism", RFC 8026, DOI 10.17487/RFC8026,
November 2016, <https://www.rfc-editor.org/info/rfc8026>. November 2016, <https://www.rfc-editor.org/info/rfc8026>.
[RFC8044] DeKok, A., "Data Types in RADIUS", RFC 8044,
DOI 10.17487/RFC8044, January 2017,
<https://www.rfc-editor.org/info/rfc8044>.
[RFC8114] Boucadair, M., Qin, C., Jacquenet, C., Lee, Y., and Q. [RFC8114] Boucadair, M., Qin, C., Jacquenet, C., Lee, Y., and Q.
Wang, "Delivery of IPv4 Multicast Services to IPv4 Clients Wang, "Delivery of IPv4 Multicast Services to IPv4 Clients
over an IPv6 Multicast Network", RFC 8114, over an IPv6 Multicast Network", RFC 8114,
DOI 10.17487/RFC8114, March 2017, DOI 10.17487/RFC8114, March 2017,
<https://www.rfc-editor.org/info/rfc8114>. <https://www.rfc-editor.org/info/rfc8114>.
[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
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
9.2. Informative References 9.2. Informative References
[RFC2607] Aboba, B. and J. Vollbrecht, "Proxy Chaining and Policy [RFC2607] Aboba, B. and J. Vollbrecht, "Proxy Chaining and Policy
Implementation in Roaming", RFC 2607, Implementation in Roaming", RFC 2607,
DOI 10.17487/RFC2607, June 1999, DOI 10.17487/RFC2607, June 1999,
<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>.
skipping to change at page 28, line 15 skipping to change at page 33, line 15
[RFC3580] Congdon, P., Aboba, B., Smith, A., Zorn, G., and J. Roese, [RFC3580] Congdon, P., Aboba, B., Smith, A., Zorn, G., and J. Roese,
"IEEE 802.1X Remote Authentication Dial In User Service "IEEE 802.1X Remote Authentication Dial In User Service
(RADIUS) Usage Guidelines", RFC 3580, (RADIUS) Usage Guidelines", RFC 3580,
DOI 10.17487/RFC3580, September 2003, DOI 10.17487/RFC3580, September 2003,
<https://www.rfc-editor.org/info/rfc3580>. <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>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<https://www.rfc-editor.org/info/rfc5226>.
[RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual- [RFC6333] Durand, A., Droms, R., Woodyatt, J., and Y. Lee, "Dual-
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>.
 End of changes. 155 change blocks. 
489 lines changed or deleted 713 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/