<?xml version="1.0" encoding="US-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
     which is available here: http://xml.resource.org. -->
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs),
     please see http://xml.resource.org/authoring/README.html. -->
<?rfc strict="yes" ?>
<!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC) -->
<?rfc toc="yes"?>
<!-- generate a ToC -->
<?rfc tocdepth="4"?>
<!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references -->
<?rfc symrefs="yes"?>
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?>
<!-- sort the reference entries alphabetically -->
<!-- control vertical white space
     (using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?>
<!-- keep one blank line between list items -->
<!-- end of list of popular I-D processing instructions --> version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category="std" docName="draft-ietf-softwire-map-radius-26"
     ipr="trust200902"> consensus="true" number="8658" ipr="trust200902" obsoletes="" updates="" xml:lang="en" version="3" sortRefs="true" symRefs="true" tocInclude="true" tocDepth="4" docName="draft-ietf-softwire-map-radius-26">
  <!-- xml2rfc v2v3 conversion 2.28.0 -->
  <front>
    <title abbrev="A+P RADIUS Attributes">RADIUS Attributes for Address plus
    Port (A+P) based Softwire Mechanisms</title>
    Mechanisms Based on Address&nbsp;plus&nbsp;Port&nbsp;(A&wj;+P)</title>
    <seriesInfo name="RFC" value="8658"/>
    <author fullname="Sheng Jiang" initials="S." surname="Jiang, Ed.">
      <organization>Huawei surname="Jiang" role="editor">
      <organization abbrev="Huawei">Huawei Technologies Co., Ltd</organization> Ltd.</organization>
      <address>
        <postal>
          <street>Q14, Huawei Campus, No.156 Beiqing Road</street>
          <city>Hai-Dian District, Beijing, 100095</city>

          <country>P.R. China</country>
          <country>China</country>
        </postal>
        <email>jiangsheng@huawei.com</email>
      </address>
    </author>
    <author fullname="Yu Fu" initials="Y." surname="Fu, Ed."> surname="Fu" role="editor">
      <organization>CNNIC</organization>
      <address>
        <postal>
          <street>No.4 South 4th Street, Zhongguancun</street>
          <city>Hai-Dian District, Beijing, 100190</city>

          <country>P.R. China</country>
          <country>China</country>
        </postal>
        <email>eleven711711@foxmail.com</email>
      </address>
    </author>
    <author fullname="Chongfeng Xie" initials="C." surname="Xie">
      <organization>China Telecom</organization>
      <address>
        <postal>
          <street></street>
          <street/>
          <city>Beijing</city>

          <code></code>

          <country>P.R. China</country>
          <code/>
          <country>China</country>
        </postal>
        <email>xiechf.bri@chinatelecom.cn</email>
      </address>
    </author>
    <author fullname="Tianxiang Li" initials="T" surname="Li">
      <organization>Tsinghua University</organization>
      <address>
        <postal>
          <street></street>
          <street/>
          <city>Beijing</city>
          <code>100084</code>

          <country>P.R.China</country>
          <country>China</country>
        </postal>
        <email>peter416733@gmail.com</email>
      </address>
    </author>
    <author fullname="Mohamed Boucadair" initials="M. " role="editor" surname="Boucadair">
      <organization>Orange</organization>
      <address>
        <postal>
          <street>Rennes, 35000</street>

          <city>France</city>

          <region></region>

          <code></code>

          <country></country>
          <street/>
          <city>Rennes</city>
          <region/>
          <code>35000</code>
          <country>France</country>
        </postal>

        <phone></phone>

        <facsimile></facsimile>
        <phone/>
        <email>mohamed.boucadair@orange.com</email>

        <uri></uri>
        <uri/>
      </address>
    </author>
    <date day="14" month="June" year="2019" />

    <area>Internet Area</area> month="October" year="2019"/>
    <area>Internet</area>
    <workgroup>Softwire</workgroup>
    <keyword>IPv6 Transition, MAP-E, MAP-T, Lightweight 4over6, RADIUS,
    address sharing, authorization, AAA, provisioning</keyword>
    <abstract>
      <t>IPv4-over-IPv6 transition mechanisms provide IPv4 connectivity
      services over IPv6 native networks during the IPv4/IPv6 co-existence coexistence
      period. DHCPv6 options have been defined for configuring to configure clients for
      Lightweight 4over6, Mapping of Address and Port with Encapsulation, and Encapsulation (MAP-E),
      Mapping of Address and Port using Translation (MAP-T) unicast softwire
      mechanisms, and also multicast softwires. However, in many networks,
      configuration information is stored in an Authentication, Authorization,
      and Accounting server (AAA) server, which utilizes the RADIUS Remote Authentication Dial In
      User Service (RADIUS) protocol to provide centralized management for
      users. When a new transition mechanism is developed, new RADIUS
      attributes need to be defined correspondingly.</t>
      <t>This document defines new RADIUS attributes to carry Address plus
      Port based softwire
      configuration parameters based on Address plus Port from an Authentication,
      Authorization, and Accounting a
      AAA server to a Broadband
      Network Gateway. Both unicast and multicast attributes are covered.</t>
    </abstract>
  </front>
  <middle>
    <section title="Introduction"> numbered="true" toc="default">
      <name>Introduction</name>
      <t>Providers have started deploying and transitioning to IPv6. Several
      IPv4 service continuity mechanisms based on the Address plus Port (A+P)
      <xref target="RFC6346"></xref> target="RFC6346" format="default"/> have been proposed for providing unicast
      IPv4 over IPv6-only
      IPv4-over-IPv6-only infrastructure, such as Mapping of Address and Port
      with Encapsulation (MAP-E) <xref target="RFC7597"></xref>, target="RFC7597" format="default"/>, Mapping of
      Address and Port using Translation (MAP-T) <xref
      target="RFC7599"></xref>, target="RFC7599" format="default"/>, and Lightweight 4over6 <xref
      target="RFC7596"></xref>. target="RFC7596" format="default"/>. Also, <xref target="RFC8114"></xref> target="RFC8114" format="default"/> specifies
      a generic solution for the delivery of IPv4 multicast services to IPv4
      clients over an IPv6 multicast network. For each of these mechanisms,
      DHCPv6 options have been specified for client configuration.</t>

      <!--     -->
      <t>In many networks, user configuration information is stored in an
      Authentication, Authorization, and Accounting (AAA) server. AAA servers
      generally communicate using the Remote Authentication Dial In User
      Service (RADIUS) <xref target="RFC2865"></xref> target="RFC2865" format="default"/> protocol. In a fixed
      broadband network, a Broadband Network Gateway (BNG) acts as the access
      gateway for users. That is, the BNG acts as both an a AAA client to the
      AAA server, server and a DHCPv6 server for DHCPv6 messages sent by clients.

      Throughout this document, the term BNG "BNG" describes a device implementing
      both the AAA client and DHCPv6 server functions.</t>
      <t>Since IPv4-in-IPv6 softwire configuration information is stored in an a
      AAA server, server and user configuration information is mainly transmitted
      through DHCPv6 between the BNGs and Customer Premises Equipment (CEs,
      a.k.a., CPE), new RADIUS attributes are needed to propagate the
      information from the AAA servers to BNGs so that they can be provided to
      CEs using the existing DHCPv6 options. </t>
      <t>The RADIUS attributes defined in this document provide the configuration
      to populate the corresponding DHCPv6 options for unicast and multicast
      softwire configuration, configurations, specifically:</t>

      <t><list style="symbols">
          <t>"Mapping
      <ul spacing="normal">
        <li>"Mapping of Address and Port with Encapsulation (MAP-E)" <xref
          target="RFC7597"></xref> target="RFC7597" format="default"/> (DHCPv6 options defined in <xref
          target="RFC7598"></xref>).</t>

          <t>"Mapping target="RFC7598" format="default"/>).</li>
        <li>"Mapping of Address and Port using Translation (MAP-T)" <xref
          target="RFC7599"></xref> target="RFC7599" format="default"/> (DHCPv6 options defined in <xref
          target="RFC7598"></xref>).</t>

          <t>"Lightweight target="RFC7598" format="default"/>).</li>
        <li>"Lightweight 4over6: An Extension to the Dual-Stack Lite
          Architecture" <xref target="RFC7596"></xref> target="RFC7596" format="default"/> (DHCPv6 options defined
          in <xref target="RFC7598"></xref>).</t>

          <t>"Unified target="RFC7598" format="default"/>).</li>
        <li>"Unified IPv4-in-IPv6 Softwire Customer Premises Equipment (CPE):
          A DHCPv6-Based Prioritization Mechanism" <xref
          target="RFC8026"></xref>.</t>

          <t>"Delivery target="RFC8026" format="default"/>.</li>
        <li>"Delivery of IPv4 Multicast Services to IPv4 Clients over an IPv6
          Multicast Network" <xref target="RFC8114"></xref> target="RFC8114" format="default"/> (DHCPv6 options
          defined in <xref target="RFC8115"></xref>).</t>
        </list></t> target="RFC8115" format="default"/>).</li>
      </ul>
      <t>The contents of the attributes defined in this document have a 1:1
      mapping into the fields of the various DHCPv6 options in <xref
      target="RFC7598"></xref>, target="RFC7598" format="default"/>, <xref target="RFC8026"></xref>, target="RFC8026" format="default"/>, and <xref
      target="RFC8115"></xref>. Table 1 target="RFC8115" format="default"/>. <xref target="Table1"/> shows how the DHCPv6 options map to
      the corresponding RADIUS attribute. For detailed mappings between each
      DHCPv6 option field and the corresponding RADIUS Attribute attribute or field, see
      <xref target="tlv-field-map"></xref>.</t>

      <t><figure
          title="Table 1: Mapping target="tlv-field-map" format="default"/>.</t>

<table anchor="Table1">
	<name>Mapping between DHCPv6 Options and RADIUS Attributes">
          <artwork align="center"><![CDATA[+----------------------------+--------------------------------+
|        DHCPv6 Option       |        RADIUS Attribute        |
+----------------------------+--------------------------------+
|     OPTION_S46_RULE (89)   |        Softwire46-Rule         |
|     OPTION_S46_BR (90)     |         Softwire46-BR          |
|     OPTION_S46_DMR (91)    |        Softwire46-DMR          |
|   OPTION_S46_V4V6BIND (92) |      Softwire46-V4V6Bind       |
| OPTION_S46_PORTPARAMS (93) |     Softwire46-PORTPARAMS      |
|  OPTION_S46_PRIORITY (111) |      Softwire46-Priority       |
|  OPTION_V6_PREFIX64 (113)  |      Softwire46-Multicast      |
+----------------------------+--------------------------------+
]]></artwork>
        </figure></t> RADIUS&nbsp;Attributes</name>
	<thead>
	<tr>
		<th>DHCPv6 Option</th>
		<th>RADIUS Attribute</th>
	</tr>
	</thead>
	<tbody>
	<tr>
		<td>&nbsp;OPTION_S46_RULE (89)</td>
		<td>&nbsp;Softwire46-Rule</td>
	</tr>
	<tr>
		<td>&nbsp;OPTION_S46_BR (90)</td>
		<td>&nbsp;Softwire46-BR</td>
	</tr>
	<tr>
		<td>&nbsp;OPTION_S46_DMR (91)</td>
		<td>&nbsp;Softwire46-DMR</td>
	</tr>
	<tr>
		<td>&nbsp;OPTION_S46_V4V6BIND (92)</td>
		<td>&nbsp;Softwire46-V4V6Bind</td>
	</tr>
	<tr>
		<td>&nbsp;OPTION_S46_PORTPARAMS (93)</td>
		<td>&nbsp;Softwire46-PORTPARAMS</td>
	</tr>
	<tr>
		<td>&nbsp;OPTION_S46_PRIORITY (111)</td>
		<td>&nbsp;Softwire46-Priority</td>
	</tr>
	<tr>
		<td>&nbsp;OPTION_V6_PREFIX64 (113)</td>
		<td>&nbsp;Softwire46-Multicast</td>
	</tr>
	</tbody>
</table>

      <t>A RADIUS attribute for Dual-Stack Lite <xref target="RFC6333"></xref> target="RFC6333" format="default"/>
      is defined in <xref target="RFC6519"></xref>.</t> target="RFC6519" format="default"/>.</t>
      <t>This document targets deployments where a trusted relationship is in
      place between the RADIUS client and server.</t>
    </section>
    <section title="Terminology">
      <t>The numbered="true" toc="default">
      <name>Terminology</name>
      <t>
    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
    NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
    "<bcp14>MAY</bcp14>", and
      "OPTIONAL" "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
    described in BCP 14 BCP&nbsp;14 <xref target="RFC2119"></xref> target="RFC2119" format="default"/> <xref target="RFC8174"></xref> target="RFC8174" format="default"/>
    when, and only when, they appear in all capitals, as shown here.</t> here.
      </t>
      <t>The reader should be familiar with the concepts and terms defined in
      <xref target="RFC7596"></xref>, target="RFC7596" format="default"/>, <xref target="RFC7597"></xref>, target="RFC7597" format="default"/>, <xref
      target="RFC7599"></xref>, target="RFC7599" format="default"/>, and <xref target="RFC8026"></xref>.</t> target="RFC8026" format="default"/>.</t>
      <t>The terms "multicast Basic Bridging BroadBand" element (mB4) and
      "multicast Address Family Transition Router" element (mAFTR) are defined
      in <xref target="RFC8114"></xref>.</t> target="RFC8114" format="default"/>.</t>
      <t>Softwire46 (S46) is used throughout to denote any of the IPv4-in-IPv6
      softwire mechanisms listed above. Additionally, the following
      abbreviations are used within the document:<list style="symbols">
          <t>BNG: Broadband document:</t>
      <dl spacing="normal" indent="10">
        <dt>BNG:</dt><dd>Broadband Network Gateway</t>

          <t>BR: Border Relay</t>

          <t>CE: Customer Edge</t>

          <t>DMR: Default Mapping Rule</t>

          <t>lwAFTR: Lightweight AFTR</t>

          <t>PSID: Port Set Identifier</t>

          <t>TLV: Type, Length, Value</t>

          <t>MAP-E: Gateway</dd>
        <dt>BR:</dt><dd>Border Relay</dd>
        <dt>CE:</dt><dd>Customer Edge</dd>
        <dt>CoA:</dt><dd>Change-of-Authorization </dd>
        <dt>DMR:</dt><dd>Default Mapping Rule</dd>
        <dt>EA:</dt><dd>Embedded Address</dd>
        <dt>lwAFTR:</dt><dd>Lightweight Address Family Transition Router</dd>
        <dt>MAP-E:</dt><dd>Mapping of Address and Port with Encapsulation</t>

          <t>MAP-T: Mapping Encapsulation</dd>
        <dt>MAP-T:</dt><dd>Mapping of Address and Port using Translation</t>
        </list></t> Translation</dd>
        <dt>PSID:</dt><dd>Port Set Identifier</dd>
        <dt>TLV:</dt><dd>Type, Length, Value</dd>
      </dl>
    </section>
    <section title="New numbered="true" toc="default">
      <name>New RADIUS Attributes"> Attributes</name>
      <t>This section defines the following attributes: <list style="numbers"> </t>
      <ol spacing="normal" type="1">
        <li>
          <t>Softwire46-Configuration Attribute (<xref
          target="conf-attr"></xref>): <vspace blankLines="1" />This target="conf-attr" format="default"/>): </t>
          <t>This attribute
          carries the configuration information for MAP-E, MAP-T, and
          Lightweight 4over6. The configuration information for each
          Softwire46 mechanism is carried in the corresponding Softwire46
          attributes. Different attributes are required for each Softwire46
          mechanism.</t>
        </li>
        <li>
          <t>Softwire46-Priority Attribute (<xref
          target="s46-prio-attr"></xref>): <vspace blankLines="1" />Depending target="s46-prio-attr" format="default"/>): </t>
          <t>Depending
          on the deployment scenario, a client may support several different
          Softwire46 mechanisms. Therefore, a client may request configuration
          for more than one Softwire46 mechanism at a time. The
          Softwire46-Priority Attribute contains information allowing the
          client to prioritize which mechanism to use, corresponding to
          OPTION_S46_PRIORITY defined in <xref target="RFC8026"></xref>.</t> target="RFC8026" format="default"/>.</t>
        </li>
        <li>
          <t>Softwire46-Multicast Attribute (<xref
          target="s46-mcast-attr"></xref>): <vspace blankLines="1" />This target="s46-mcast-attr" format="default"/>): </t>
          <t>This
          attribute conveys the IPv6 prefixes to be used in <xref
          target="RFC8114"></xref> target="RFC8114" format="default"/> to synthesize IPv4-embedded IPv6 addresses.
          The BNG uses the IPv6 prefixes returned in the RADIUS
          Softwire46-Multicast Attribute to populate the DHCPv6 PREFIX64
          Option <xref target="RFC8115"></xref>.</t>
        </list></t> target="RFC8115" format="default"/>.</t>
        </li>
      </ol>
      <t>All of these attributes are allocated from the RADIUS "Extended Type"
      code space per <xref target="RFC6929"></xref>.</t> target="RFC6929" format="default"/>.</t>
      <t>All of these attribute designs follow <xref target="RFC6158"></xref> target="RFC6158" format="default"/>
      and <xref target="RFC6929"></xref>.</t> target="RFC6929" format="default"/>.</t>
      <t>This document adheres to the guidance in <xref target="RFC8044"></xref> target="RFC8044" format="default"/> for defining
      the
      new RADIUS attributes.</t>
      <section anchor="conf-attr" title="Softwire46-Configuration Attribute"> numbered="true" toc="default">
        <name>Softwire46-Configuration Attribute</name>
        <t>This attribute is of type "tlv", as defined in the RADIUS "Remote Authentication Dial-In User Service (RADIUS) Protocol
        Extensions
        Extensions" <xref target="RFC6929"></xref>. target="RFC6929" format="default"/>. It contains some
        sub-attributes, with the following requirements:</t>

        <t><list style="empty">
            <t>The
        <ul spacing="normal">
          <li>The Softwire46-Configuration Attribute MUST <bcp14>MUST</bcp14> contain one or more
            of the following attributes: Softwire46-MAP-E, Softwire46-MAP-T,
            and/or Softwire46-Lightweight-4over6.</t>

            <t>The Softwire46-Lightweight-4over6.</li>
          <li>The Softwire46-Configuration Attribute conveys the
            configuration information for MAP-E, MAP-T, or Lightweight 4over6.
            The BNG SHALL <bcp14>SHALL</bcp14> use the configuration information returned in the
            RADIUS attribute to populate the DHCPv6 Softwire46 Container
            Option(s) container
            option(s) defined in Section 5 of <xref
            target="RFC7598"></xref>.</t>

            <t>The target="RFC7598" sectionFormat="of" section="5"/>.</li>
          <li>The Softwire46-Configuration Attribute MAY <bcp14>MAY</bcp14> appear in an
            Access-Accept packet. It MAY <bcp14>MAY</bcp14> also appear in an Access-Request
            packet to indicate a preferred Softwire46 configuration. However,
            the server is not required to honor such a preference.</t>

            <t>The preference.</li>
          <li>The Softwire46-Configuration Attribute MAY <bcp14>MAY</bcp14> appear in a
            CoA-Request packet.</t>

            <t>The packet.</li>
          <li>The Softwire46-Configuration Attribute MAY <bcp14>MAY</bcp14> appear in an
            Accounting-Request packet.</t>

            <t>The packet.</li>
          <li>The Softwire46-Configuration Attribute MUST NOT <bcp14>MUST NOT</bcp14> appear in any
            other RADIUS packet.</t>
          </list></t> packet.</li>
        </ul>
        <t>The Softwire46-Configuration Attribute is structured as
        follows:</t>

        <t><figure>
            <artwork><![CDATA[  Type
    241 (To be confirmed by IANA).

  Length
        <dl newline="true" spacing="normal">
          <dt>Type</dt>
          <dd>241</dd>
          <dt>Length</dt>
          <dd>
    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 attributes.

   Extended-Type
      TBD1

   Value attributes.</dd>
          <dt>Extended-Type</dt>
          <dd>9</dd>
          <dt>Value</dt>
          <dd>
            <t>
      Contains one or more of the following attributes. Each attribute
      type may appear once at most once:

      Softwire46-MAP-E most:
</t>
            <dl newline="true" spacing="normal">
              <dt>Softwire46-MAP-E</dt>
              <dd>
         For configuring MAP-E clients. For the construction of
         this attribute, refer to Section 3.1.1.1.

      Softwire46-MAP-T <xref target="etlv" format="default"/>.</dd>
              <dt>Softwire46-MAP-T</dt>
              <dd>
         For configuring MAP-T clients. For the construction of
         this attribute, refer to Section 3.1.1.2.

      Softwire46-Lightweight-4over6 <xref target="ttlv" format="default"/>.</dd>
              <dt>Softwire46-Lightweight-4over6</dt>
              <dd>
         For configuring Lightweight 4over6 clients. For the
         construction of this attribute, refer to Section 3.1.1.3.
]]></artwork>
          </figure></t> <xref target="ltlv" format="default"/>.</dd>
            </dl>
          </dd>
        </dl>
        <t>The Softwire46-Configuration Attribute is associated with the
        following identifier: 241.Extended-Type(TBD1).</t> 241.9.</t>
        <section anchor="s46-tlvs" title="Softwire46 Attributes"> numbered="true" toc="default">
          <name>Softwire46 Attributes</name>
          <t>The Softwire46 attributes can only be encapsulated in the
          Softwire46-Configuration Attribute. Depending on the deployment
          scenario, a client might request for more than one transition
          mechanism at a time. There MUST <bcp14>MUST</bcp14> be at least one Softwire46 attribute
          encapsulated in one Softwire46-Configuration Attribute. There MUST <bcp14>MUST</bcp14>
          be at most one instance of each type of Softwire46 attribute
          encapsulated in one Softwire46-Configuration Attribute.</t>
          <t>There are three types of Softwire46 attributes, namely:<list
              style="numbers">
              <t>Softwire46-MAP-E namely:</t>
          <ol spacing="normal" type="1">
            <li>Softwire46-MAP-E (<xref target="etlv"></xref>)</t>

              <t>Softwire46-MAP-T target="etlv" format="default"/>)</li>
            <li>Softwire46-MAP-T (<xref target="ttlv"></xref>)</t>

              <t>Softwire46-Lightweight target="ttlv" format="default"/>)</li>
            <li>Softwire46-Lightweight 4over6 (<xref
              target="ltlv"></xref>)</t>
            </list>Each target="ltlv" format="default"/>)</li>
          </ol>
          <t>Each type of Softwire46 attribute contains a number of
          sub-attributes, defined in <xref
          target="s46-sub-tlv-format"></xref>. target="s46-sub-tlv-format" format="default"/>. The hierarchy of the Softwire46
          attributes is shown in <xref target="Hierar"></xref>. target="Hierar" format="default"/>.  <xref
          target="s46-sub-tlvs"></xref> target="s46-sub-tlvs" format="default"/> describes which sub-attributes are
          mandatory, optional, or not permitted for each defined Softwire46
          attribute.</t>
          <figure anchor="Hierar" title="Softwire46 Attributes Hierarchy">
            <artwork><![CDATA[ anchor="Hierar">
            <name>Softwire46 Attribute Hierarchy</name>
            <artwork name="" type="" align="left" alt=""><![CDATA[
                                            /1.Rule-IPv6-Prefix
S                      /                    |
o  /                  | 1.Softwire46-Rule -----+ --+ 2.Rule-IPv4-Prefix
f | Softwire46-MAP-E--+                     |
t |                   | 2.Softwire46-BR     | 3.EA Length 3.EA-Length
w |                   |                      \
i |                   |                               /1.PSID-Offset
r |                   |                              |
e |                   | 3.Softwire46-PORTPARAMS -----+ 2.PSID-Len
-
4 |                    \                             |
C
6 |                                                  | 3.PSID
o
- |                                                   \
n
C |
f
o |                                          /1.Rule-IPv6-Prefix
i
n |                    /                    |
g
f |                   | 1.Softwire46-Rule------+ 1.Softwire46-Rule---+ 2.Rule-IPv4-Prefix
u
i | Softwire46-MAP-T--+                     |
r
g |                   | 2.Softwire46-DMR    | 3.EA Length
a 3.EA-Length
u |                   |                      \
t
r |                   |                               /1.PSID-Offset
i
a |                   |                              |
o
t |                   | 3.Softwire46-PORTPARAMS------+ 2.PSID-Len
n
i |                    \                             |
o |                                                  | 3.PSID
A
n |                                                   \
t
  |
t
A |                                              /1.IPv4-Address
r
t |                    /                        |
i
t |                   | 1.Softwire46-V4V6Bind -----+ --+ 2.Bind-IPv6-Prefix
b
r | Softwire46-       |                          \
u
i | Lightweight-4over6+ 2.Softwire46-BR               /1.PSID-Offset
t
b  \                  |                              |
e
u                     | 3.Softwire46-PORTPARAMS  ----+ 2.PSID-Len
t                      \                             |
e                                                    | 3.PSID
                                                      \ ]]></artwork>
          </figure>
          <section anchor="etlv" title="Softwire46-MAP-E Attribute">
            <t>Softwire46-MAP-E numbered="true" toc="default">
            <name>Softwire46-MAP-E Attribute</name>
            <t> The Softwire46-MAP-E attribute is designed for carrying to carry the
            configuration information for MAP-E. The structure of
            Softwire46-MAP-E is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
     1

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
     1</dd>
              <dt>TLV-Length</dt>
              <dd>
     Indicates the length of this attribute, including
     the TLV-Type, TLV-Length, and TLV-Value fields.

   TLV-Value fields.</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
     Contains a set of sub-attributes, with the following requirements:
</t>
                <t>
     It MUST <bcp14>MUST</bcp14> contain Softwire46-Rule, defined in Section 3.1.3.1. <xref target="s46-rule-sub-tlv" format="default"/>.
</t>
                <t>
     It MUST <bcp14>MUST</bcp14> contain Softwire46-BR, defined in Section 3.1.3.2. <xref target="s46br" format="default"/>.
</t>
                <t>
     It MAY <bcp14>MAY</bcp14> contain Softwire46-PORTPARAMS, defined in Section 3.1.3.5.
]]></artwork>
            </figure> <xref target="s46param" format="default"/>.</t>
              </dd>
            </dl>
          </section>
          <section anchor="ttlv" title="Softwire46-MAP-T Attribute">
            <t>Softwire46-MAP-T numbered="true" toc="default">
            <name>Softwire46-MAP-T Attribute</name>
            <t>The Softwire46-MAP-T attribute is designed for carrying to carry the
            configuration information for MAP-T. The structure of
            Softwire46-MAP-T is shown below:</t>

            <figure>
              <artwork><![CDATA[  TLV-Type
     2

  TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
     2</dd>
              <dt>TLV-Length</dt>
              <dd>
     Indicates the length of this attribute, including
     the TLV-Type, TLV-Length, and TLV-Value fields.

  TLV-Value fields.</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
     Contains a set of sub-attributes, with the following requirements:
</t>
                <t>
     It MUST <bcp14>MUST</bcp14> contain Softwire46-Rule, defined in Section 3.1.3.1. <xref target="s46-rule-sub-tlv" format="default"/>.
</t>
                <t>
     It MUST <bcp14>MUST</bcp14> contain Softwire46-DMR, defined in Section 3.1.3.3. <xref target="s46dmr" format="default"/>.
</t>
                <t>
     It MAY <bcp14>MAY</bcp14> contain Softwire46-PORTPARAMS, defined in Section 3.1.3.5.
]]></artwork>
            </figure> <xref target="s46param" format="default"/>.</t>
              </dd>
            </dl>
          </section>
          <section anchor="ltlv"
                   title="Softwire46-Lightweight-4over6 Attribute">
            <t>Softwire46-Lightweight-4over6 numbered="true" toc="default">
            <name>Softwire46-Lightweight-4over6 Attribute</name>
            <t>The Softwire46-Lightweight-4over6 attribute is designed for
            carrying to
            carry the configuration information for Lightweight 4over6. The
            structure of Softwire46-Lightweight-4over6 is shown below:</t>

            <figure>
              <artwork><![CDATA[  TLV-Type
     3

  TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
     3</dd>
              <dt>TLV-Length</dt>
              <dd>
     Indicates the length of this attribute, including
     the TLV-Type, TLV-Length, and TLV-Value fields.

  TLV-Value fields.</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
     Contains a set of sub-attributes as follows:
</t>
                <t>
     It MUST <bcp14>MUST</bcp14> contain Softwire46-BR, defined in Section 3.1.3.2. <xref target="s46br" format="default"/>.
</t>
                <t>
     It MUST <bcp14>MUST</bcp14> contain Softwire46-V4V6Bind, defined in Section 3.1.3.4. <xref target="s46bind" format="default"/>.
</t>
                <t>
     It MAY <bcp14>MAY</bcp14> contain Softwire46-PORTPARAMS, defined in Section 3.1.3.5.
     ]]></artwork>
            </figure> <xref target="s46param" format="default"/>.</t>
              </dd>
            </dl>
          </section>
        </section>
        <section anchor="s46-sub-tlvs" title="Softwire46 Sub-Attributes">
          <t>Table 2 numbered="true" toc="default">
          <name>Softwire46 Sub-attributes</name>
          <t><xref target="Table2"/> shows which encapsulated sub-attributes are mandatory,
          optional, or not permitted for each defined Softwire46
          attribute.</t>

          <figure title="Table 2: Softwire46 Sub-Attributes">
            <artwork><![CDATA[+-----------------------+-------+-------+--------------------+
| Sub-Attributes        | MAP-E | MAP-T | Lightweight 4over6 |
+-----------------------+-------+-------+--------------------+
| Softwire46-BR         |   1+  |   0   |         1+         |
| Softwire46-Rule       |   1   |   1   |          0         |
| Softwire46-DMR        |   0   |   1   |          0         |
| Softwire46-V4V6Bind   |   0   |   0   |          1         |
| Softwire46-PORTPARAMS |  0-1  |  0-1  |         0-1        |
+-----------------------+-------+-------+--------------------+

]]></artwork>
          </figure>

<table anchor="Table2">
	<name>Softwire46 Sub-attributes</name>
	<thead>
	<tr>
		<th>Sub-attributes</th>
		<th>MAP-E</th>
		<th>MAP-T</th>
		<th>Lightweight 4over6</th>
	</tr>
	</thead>
	<tbody>
	<tr>
		<td>Softwire46-BR</td>
		<td>&nbsp;1+</td>
		<td>&nbsp;0</td>
		<td>&nbsp;1+</td>
	</tr>
	<tr>
		<td>Softwire46-Rule</td>
		<td>&nbsp;1</td>
		<td>&nbsp;1</td>
		<td>&nbsp;0</td>
	</tr>
	<tr>
		<td>Softwire46-DMR</td>
		<td>&nbsp;0</td>
		<td>&nbsp;1</td>
		<td>&nbsp;0</td>
	</tr>
	<tr>
		<td>&nbsp;Softwire46-V4V6Bind</td>
		<td>&nbsp;0</td>
		<td>&nbsp;0</td>
		<td>&nbsp;1</td>
	</tr>
	<tr>
		<td>&nbsp;Softwire46-PORTPARAMS</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
	</tr>
	</tbody>
</table>

          <t>The following table list defines the meaning of Table 2 the <xref target="Table2"/> entries.</t>

          <t><figure>
              <artwork><![CDATA[0     Not Permitted
0-1   Optional,
          <dl newline="false" spacing="compact" indent="6">
            <dt>0</dt>
            <dd>Not permitted</dd>
            <dt>0-1</dt>
            <dd>Optional; zero or one instance of the attribute may be present.
1     Mandatory, present.</dd>
            <dt>1</dt>
            <dd>Mandatory; only one instance of the attribute must be present.
1+    Mandatory, present.</dd>
            <dt>1+</dt>
            <dd>Mandatory; one or more instances of the attribute may be present.
]]></artwork>
            </figure></t> present.</dd>
          </dl>
        </section>
        <section anchor="s46-sub-tlv-format"
                 title="Specification numbered="true" toc="default">
          <name>Specification of the Softwire46 Sub-Attributes"> Sub-attributes</name>
          <section anchor="s46-rule-sub-tlv" title="Softwire46-Rule Attribute"> numbered="true" toc="default">
            <name>Softwire46-Rule Attribute</name>
            <t>Softwire46-Rule can only be encapsulated in Softwire46-MAP-E
            (<xref target="etlv"></xref>) target="etlv" format="default"/>) or Softwire46-MAP-T (<xref
            target="ttlv"></xref>). target="ttlv" format="default"/>). Depending on the deployment scenario, one Basic Mapping Rule (BMR) and zero or more Forwarding Mapping Rules (FMRs) MUST <bcp14>MUST</bcp14> be included in one Softwire46-MAP-E or and Softwire46-MAP-T.</t>
            <t>Each type of Softwire46-Rule also contains a number of
            sub-attributes, including Rule-IPv6-Prefix, Rule-IPv4-Prefix, and
            EA-Length. The structure of the sub-attributes for Softwire46-Rule
            is defined in <xref target="s46-rule-sub-tlvs"></xref>.</t> target="s46-rule-sub-tlvs" format="default"/>.</t>
            <t>Defining multiple TLV-types TLV types achieves the same design goals as
            the "Softwire46 Rule Flags" defined in Section 4.1 of <xref
            target="RFC7598"></xref>. target="RFC7598" sectionFormat="of" section="4.1"/>. Using TLV-type a TLV type set to 5 is equivalent
	    to setting the F-flag F flag in the OPTION_S46_RULE S46 Rule Flags
            field.</t>

            <figure>
              <artwork><![CDATA[  TLV-Type
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
                <t>
     4 Basic Mapping Rule only (not to be used for forwarding) forwarding)</t>
                <t>
     5 Forwarding Permitted Mapping Rule

  TLV-Length Rule</t>
              </dd>
              <dt>TLV-Length</dt>
              <dd>
     Indicates the length of this attribute, including
     the TLV-Type, TLV-Length, and TLV-Value fields.

  Data Type fields.</dd>
              <dt>Data Type</dt>
              <dd>
     The attribute Softwire46-Rule is of type tlv (Section 3.13 of
     [RFC8044]).

  TLV-Value "tlv" (<xref target="RFC8044" sectionFormat="of" section="3.13"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
     This field contains a set of attributes as follows:

     Rule-IPv6-Prefix
</t>
                <dl newline="true" spacing="normal">
                  <dt>Rule-IPv6-Prefix</dt>
                  <dd>
        This attribute contains the IPv6 prefix for use in the MAP rule.
        Refer to Section 3.1.4.1.

     Rule-IPv4-Prefix <xref target="v6prefix" format="default"/>.</dd>
                  <dt>Rule-IPv4-Prefix</dt>
                  <dd>
        This attribute contains the IPv4 prefix for use in the MAP rule.
        Refer to Section 3.1.4.2.

     EA-Length <xref target="v4prefix" format="default"/>.</dd>
                  <dt>EA-Length</dt>
                  <dd>
        This attribute contains the Embedded-Address Embedded Address (EA) bit length.
        Refer to Section 3.1.4.3.
]]></artwork>
            </figure> <xref target="ea-length" format="default"/>.</dd>
                </dl>
              </dd>
            </dl>
          </section>
          <section anchor="s46br" title="Softwire46-BR Attribute"> numbered="true" toc="default">
            <name>Softwire46-BR Attribute</name>
            <t>Softwire46-BR can only be encapsulated in Softwire46-MAP-E
            (<xref target="etlv"></xref>) target="etlv" format="default"/>) or Softwire46-Lightweight-4over6
            (<xref target="ltlv"></xref>).</t> target="ltlv" format="default"/>).</t>
            <t>There MUST <bcp14>MUST</bcp14> be at least one Softwire46-BR included in each
            Softwire46-MAP-E or Softwire46-Lightweight-4over6.</t>
            <t>The structure of Softwire46-BR is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
      6

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      6</dd>
              <dt>TLV-Length</dt>
              <dd>
      18 octets

   Data Type octets</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Softwire46-BR is of type ip6addr (Section 3.9 of
      [RFC8044]).

   TLV-Value "ipv6addr" (<xref target="RFC8044" sectionFormat="of" section="3.9"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      br-ipv6-address. A fixed-length field of 16 octets that
      specifies the IPv6 address for the Softwire46 Border Relay (BR).]]></artwork>
            </figure> (BR).</dd>
            </dl>
          </section>
          <section anchor="s46dmr" title="Softwire46-DMR Attribute"> numbered="true" toc="default">
            <name>Softwire46-DMR Attribute</name>
            <t>Softwire46-DMR may only appear in Softwire46-MAP-T (<xref
            target="ttlv"></xref>). target="ttlv" format="default"/>). There MUST <bcp14>MUST</bcp14> be exactly one Softwire46-DMR
            included in one Softwire46-MAP-T.</t>
            <t>The structure of Softwire46-DMR is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
      7

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      7</dd>
              <dt>TLV-Length</dt>
              <dd>
      4 + length of dmr-ipv6-prefix specified in octets.

   Data Type octets.</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Softwire46-DMR is of type ipv6pref (Section 3.10 of
      [RFC8044]).

   TLV-Value "ipv6prefix" (<xref target="RFC8044" sectionFormat="of" section="3.10"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      A variable-length (dmr-prefix6-len) field
      specifying the IPv6 prefix (dmr-ipv6-prefix) for the BR. This field
      is right-padded with zeros to the nearest octet boundary when
      dmr-prefix6-len is not divisible by 8. Prefixes with length lengths from
      0 to 96 are allowed.
]]></artwork>
            </figure> allowed.</dd>
            </dl>
          </section>
          <section anchor="s46bind" title="Softwire46-V4V6Bind Attribute"> numbered="true" toc="default">
            <name>Softwire46-V4V6Bind Attribute</name>
            <t>Softwire46-V4V6Bind may only be encapsulated in
            Softwire46-Lightweight-4over6 (<xref target="ltlv"></xref>). target="ltlv" format="default"/>). There
            MUST
            <bcp14>MUST</bcp14> be exactly one Softwire46-V4V6Bind included in each
            Softwire46-Lightweight-4over6.</t>
            <t>The structure of Softwire46-V4V6Bind is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
      8

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      8</dd>
              <dt>TLV-Length</dt>
              <dd>
      Indicates the length of this attribute, including
      the TLV-Type, TLV-Length, and TLV-Value fields.

   Data Type fields.</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Softwire46-V4V6Bind is of type tlv (Section 3.13 of
      [RFC8044]).

   TLV-Value "tlv" (<xref target="RFC8044" sectionFormat="of" section="3.13"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
      This field contains a set of attributes as follows:

      IPv4-Address
</t>
                <dl newline="true" spacing="normal">
                  <dt>IPv4-Address</dt>
                  <dd>
         This attribute contains an IPv4 address, used to specify
         the full or shared IPv4 address of the CE. Refer to
         Section 3.1.5.1.

      Bind-IPv6-Prefix
         <xref target="v4address" format="default"/>.</dd>
                  <dt>Bind-IPv6-Prefix</dt>
                  <dd>
         This attribute contains an IPv6 prefix used to indicate which
         configured prefix the Softwire46 CE should use for constructing
         the softwire. Refer to Section 3.1.5.2.
 ]]></artwork>
            </figure> <xref target="bindv6" format="default"/>.</dd>
                </dl>
              </dd>
            </dl>
          </section>
          <section anchor="s46param" title="Softwire46-PORTPARAMS Attribute"> numbered="true" toc="default">
            <name>Softwire46-PORTPARAMS Attribute</name>
            <t>Softwire46-PORTPARAMS is optional. It is used to specify port
            set information for IPv4 address sharing between clients.
            Softwire46-PORTPARAMS MAY <bcp14>MAY</bcp14> be included in any of the Softwire46
            attributes.</t>
            <t>The structure of Softwire46-PORTPARAMS is shown below:</t>

            <figure>
              <artwork><![CDATA[
   TLV-Type
      9

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      9</dd>
              <dt>TLV-Length</dt>
              <dd>
      Indicates the length of this attribute, including
      the TLV-Type, TLV-Length, and TLV-Value fields.

   Data Type fields.</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Softwire46-PORTPARAMS is of type tlv (Section 3.13
      of [RFC8044]).

   TLV-Value "tlv" (<xref target="RFC8044" sectionFormat="of" section="3.13"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
      This field contains a set of attributes as follows:

      PSID-Offset
</t>
                <dl newline="true" spacing="normal">
                  <dt>PSID-Offset</dt>
                  <dd>
         This attribute specifies the numeric value for the Softwire46
         algorithm's excluded port range/offset bits (a bits). Refer to
         Section 3.1.6.1.

      PSID-Len
         <xref target="psid-offset" format="default"/>.</dd>
                  <dt>PSID-Len</dt>
                  <dd>
         This attribute specifies the number of significant bits in the
         PSID field (also known as 'k'). Refer to Section 3.1.6.2.

      PSID <xref target="psid-len" format="default"/>.</dd>
                  <dt>PSID</dt>
                  <dd>
         This attribute specifies the PSID value. Refer to Section 3.1.6.3.
]]></artwork>
            </figure> <xref target="psid" format="default"/>.</dd>
                </dl>
              </dd>
            </dl>
          </section>
        </section>
        <section anchor="s46-rule-sub-tlvs"
                 title="Sub-Attributes numbered="true" toc="default">
          <name>Sub-attributes for Sofwtire46-Rule"> Softwire46-Rule</name>
          <t>There are two types of Softwire46-Rule: the Basic Mapping Rule
          and the Forwarding Mapping Rule, indicated by the value in the
          TLV-Type field of Softwire46-Rule (<xref
          target="s46-rule-sub-tlv"></xref>).</t> target="s46-rule-sub-tlv" format="default"/>).</t>
          <t>Each type of Softwire46-Rule also contains a number of
          Sub-attributes
          sub-attributes as detailed in the following sub-sections.</t> subsections.</t>
          <section title="Rule-IPv6-Prefix Attribute"> anchor="v6prefix" numbered="true" toc="default">
            <name>Rule-IPv6-Prefix Attribute</name>
            <t>Rule-IPv6-Prefix is REQUIRED <bcp14>REQUIRED</bcp14> for every Softwire46-Rule. There
            MUST
            <bcp14>MUST</bcp14> be exactly one Rule-IPv6-Prefix encapsulated in each type of
            Softwire46-Rule.</t>
            <t>Rule-IPv6-Prefix follows the framed IPv6 prefix designed in
            <xref target="RFC3162"></xref> target="RFC3162" format="default"/> and <xref
            target="RFC8044"></xref>.</t> target="RFC8044" format="default"/>.</t>
            <t>The structure of Rule-IPv6-Prefix is shown below:</t>

            <t><figure>
                <artwork><![CDATA[   TLV-Type
      10

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      10</dd>
              <dt>TLV-Length</dt>
              <dd>
      4 + length of rule-ipv6-prefix specified in octets.

   Data Type
      octets.</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Rule-IPv6-Prefix is of type ipv6pref (Section 3.10
      of [RFC8044]).

   TLV-Value "ipv6prefix" (<xref target="RFC8044" sectionFormat="of" section="3.10"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      A variable-length field that specifies an IPv6
      prefix (rule-ipv6-prefix) appearing in the MAP rule.
]]></artwork>
              </figure></t> rule.</dd>
            </dl>
          </section>
          <section title="Rule-IPv4-Prefix Attribute"> anchor="v4prefix" numbered="true" toc="default">
            <name>Rule-IPv4-Prefix Attribute</name>
            <t>This attribute is used to convey the MAP Rule IPv4 prefix. The
            structure of Rule-IPv4-Prefix is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
      11

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      11</dd>
              <dt>TLV-Length</dt>
              <dd>
      4 + length of rule-ipv4-prefix specified in octets.

   Data Type octets.</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Rule-IPv4-Prefix is of type ipv4pref (Section 3.11
      of [RFC8044]).

   TLV-Value "ipv4prefix" (<xref target="RFC8044" sectionFormat="of" section="3.11"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      A variable-length field that specifies
      an IPv4 prefix (rule-ipv4-prefix) appearing in the MAP rule.
]]></artwork>
            </figure> rule.</dd>
            </dl>
          </section>
          <section title="EA-Length Attribute"> anchor="ea-length" numbered="true" toc="default">
            <name>EA-Length Attribute</name>
            <t>This attribute is used to convey the Embedded-Address Embedded Address (EA) bit
            length. The structure of EA-Length is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
      12

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      12</dd>
              <dt>TLV-Length</dt>
              <dd>
      6 octets

   Data Type octets</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute EA-Length is of type integer (Section 3.1 of
      [RFC8044]).

  TLV-Value "integer" (<xref target="RFC8044" sectionFormat="of" section="3.1"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      EA-len; 32-bits 32 bits long. Specifies the Embedded-Address Embedded Address (EA) bit
      length. Allowed values range from 0 to 48.]]></artwork>
            </figure> 48.</dd>
            </dl>
          </section>
        </section>
        <section title="Attributes numbered="true" toc="default">
          <name>Attributes for Softwire46-v4v6Bind"> Softwire46-v4v6Bind</name>
          <section title="IPv4-Address Attribute"> anchor="v4address" numbered="true" toc="default">
            <name>IPv4-Address Attribute</name>
            <t>The IPv4-Address MAY <bcp14>MAY</bcp14> be used to specify the full or shared IPv4
            address of the CE.</t>
            <t>The structure of IPv4-Address is shown below:</t>

            <t><figure>
                <artwork><![CDATA[
   TLV-Type
      13

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      13</dd>
              <dt>TLV-Length</dt>
              <dd>
      6 octets

   Data Type octets</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute IPv4-Address is of type ipv4addr (Section 3.8
      of [RFC8044]).

   TLV-Value
      32-bits "ipv4addr" (<xref target="RFC8044" sectionFormat="of" section="3.8"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      32 bits long. Specifies the IPv4 address (ipv4-address) to
      appear in Softwire46-V4V6Bind (Section 3.1.3.4).]]></artwork>
              </figure></t> (<xref target="s46bind" format="default"/>).</dd>
            </dl>
          </section>
          <section title="Bind-IPv6-Prefix Attribute"> anchor="bindv6" numbered="true" toc="default">
            <name>Bind-IPv6-Prefix Attribute</name>
            <t>The Bind-IPv6-Prefix is used by the CE to identify the correct
            IPv6 prefix to be used as the tunnel source.</t>
            <t>The structure of Bind-IPv6-Prefix is shown below:</t>

            <figure>
              <artwork><![CDATA[   TLV-Type
      14

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      14</dd>
              <dt>TLV-Length</dt>
              <dd>
      4 + length of bind-ipv6-prefix specified in octets.

   Data Type octets.</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute Bind-IPv6-Prefix is of type ipv6pref (Section 3.10
      of [RFC8044]).

   TLV-Value "ipv6prefix" (<xref target="RFC8044" sectionFormat="of" section="3.10"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      A variable-length field specifying the IPv6
      prefix or address for the Softwire46 CE (bind-ipv6-prefix).
      This field is right-padded with zeros to the nearest octet
      boundary when the prefix length is not divisible by 8.]]></artwork>
            </figure> 8.</dd>
            </dl>
          </section>
        </section>
        <section title="Attributes numbered="true" toc="default">
          <name>Attributes for Softwire46-PORTPARAMS"> Softwire46-PORTPARAMS</name>
          <section title="PSID-Offset Attribute"> anchor="psid-offset" numbered="true" toc="default">
            <name>PSID-Offset Attribute</name>
            <t>This attribute is used to convey the Port Set Identifier offset
            as defined in <xref target="RFC7597"></xref>. target="RFC7597" format="default"/>. This attribute is
            encoded in 32 bits as per the recommendation in Appendix A.2.1 of
            <xref target="RFC6158"></xref>.</t> target="RFC6158" sectionFormat="of" section="A.2.1"/>.</t>
            <t>The structure of PSID-Offset is shown below:</t>

            <t><figure>
                <artwork><![CDATA[   TLV-Type
      15

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      15</dd>
              <dt>TLV-Length</dt>
              <dd>
      6 octets

   Data Type octets</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute PSID-Offset is of type integer (Section 3.1
      of [RFC8044]).

   TLV-Value
      Contains "integer" (<xref target="RFC8044" sectionFormat="of" section="3.1"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      <t>Contains the PSID-Offset (8-bits) (8 bits) right
      justified, and the unused bits in this field MUST <bcp14>MUST</bcp14>
      be set to zero. This field specifies the
      numeric value for the Softwire46 algorithm's excluded
      port range/offset bits (a bits), as per Section 5.1
      of [RFC7597].
      <xref target="RFC7597" sectionFormat="of" section="5.1"/>.</t>

              <t>
      Default values for this field are specific to the
      Softwire
      softwire mechanism being implemented and are defined
      in the relevant specification document.]]></artwork>
              </figure></t> document.</t></dd>
            </dl>
          </section>
          <section title="PSID-Len Attribute"> anchor="psid-len" numbered="true" toc="default">
            <name>PSID-Len Attribute</name>
            <t>This attribute is used to convey the PSID length as defined in
            <xref target="RFC7597"></xref>. target="RFC7597" format="default"/>. This attribute is encoded in 32
            bits as per the recommendation in Appendix A.2.1 of <xref
            target="RFC6158"></xref>.</t> target="RFC6158" sectionFormat="of" section="A.2.1"/>.</t>
            <t>The structure of PSID-Len is shown below:</t>

            <t><figure>
                <artwork><![CDATA[   TLV-Type
      16

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      16</dd>
              <dt>TLV-Length</dt>
              <dd>
      6 octets

   Data Type octets</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute PSID-Len is of type integer (Section 3.1
      of [RFC8044]).

   TLV-Value "integer" (<xref target="RFC8044" sectionFormat="of" section="3.1"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
      Contains the PSID-len (8-bits) (8 bits) right
      justified, and the unused bits in this field MUST <bcp14>MUST</bcp14>
      be set to zero. This field specifies the number of
      significant bits in the PSID field (also known as
      'k'). When set to 0, the PSID field is to be ignored.
      After the first 'a' a bits, there are k bits in the
      port number representing the value of the PSID.
      Subsequently, the address sharing address-sharing ratio would be
      2^k.]]></artwork>
              </figure></t>
      2^k.</dd>
            </dl>
          </section>
          <section title="PSID Attribute"> anchor="psid" numbered="true" toc="default">
            <name>PSID Attribute</name>
            <t>This attribute is used to convey the PSID as defined in <xref
            target="RFC7597"></xref>. target="RFC7597" format="default"/>. This attribute is encoded in 32 bits as
            per the recommendation in Appendix A.2.1 of <xref
            target="RFC6158"></xref>.</t> target="RFC6158" sectionFormat="of" section="A.2.1"/>.</t>
            <t>The structure of PSID is shown below:</t>

            <t><figure>
                <artwork><![CDATA[   TLV-Type
      17

   TLV-Length
            <dl newline="true" spacing="normal">
              <dt>TLV-Type</dt>
              <dd>
      17</dd>
              <dt>TLV-Length</dt>
              <dd>
      6 octets

   Data Type octets</dd>
              <dt>Data Type</dt>
              <dd>
      The attribute PSID is of type integer (Section 3.1
      of [RFC8044]).

   TLV-Value "integer" (<xref target="RFC8044" sectionFormat="of" section="3.1"/>).</dd>
              <dt>TLV-Value</dt>
              <dd>
                <t>
      Contains the PSID (16-bits) (16 bits) right justified, and the unused bits
      in this field MUST <bcp14>MUST</bcp14> be set to zero. zero.</t>
                <t>
      The PSID value algorithmically identifies a set of ports
      assigned to a CE. The first k bits on the left of this
      2-octet field is are the PSID value. The remaining (16-k) bits
      on the right are padding zeros.]]></artwork>
              </figure></t> zeros.
</t>
              </dd>
            </dl>
          </section>
        </section>
      </section>
      <section anchor="s46-prio-attr" title="Softwire46-Priority Attribute"> numbered="true" toc="default">
        <name>Softwire46-Priority Attribute</name>
        <t>The Softwire46-Priority Attribute includes an ordered list of
        Softwire46 mechanisms allowing the client to prioritize which
        mechanism to use, corresponding to OPTION_S46_PRIORITY defined in
        <xref target="RFC8026"></xref>. target="RFC8026" format="default"/>. The following requirements apply:</t>

        <t><list style="empty">
            <t>The
        <ul empty="true" spacing="normal">
          <li>The Softwire46-Priority Attribute MAY <bcp14>MAY</bcp14> appear in an
            Access-Accept packet. It MAY <bcp14>MAY</bcp14> also appear in an Access-Request
            packet.</t>

            <t>The
            packet.</li>
          <li>The Softwire46-Priority Attribute MAY <bcp14>MAY</bcp14> appear in a CoA-Request
            packet.</t>

            <t>The
            packet.</li>
          <li>The Softwire46-Priority Attribute MAY <bcp14>MAY</bcp14> appear in an
            Accounting-Request packet.</t>

            <t>The packet.</li>
          <li>The Softwire46-Priority Attribute MUST NOT <bcp14>MUST NOT</bcp14> appear in any other
            RADIUS packet.</t>
          </list></t> packet.</li>
        </ul>
        <t>The Softwrie46-Priority Softwire46-Priority Attribute is structured as follows:<figure>
            <artwork><![CDATA[   Type
     241 (To be confirmed by IANA)

   Length follows:</t>
        <dl newline="true" spacing="normal">
          <dt>Type</dt>
          <dd>
     241</dd>
          <dt>Length</dt>
          <dd>
     Indicates the length of this attribute,
     including the Type, Length, Extended-Type and Value fields.

   Extended-Type
     TBD5

   TLV-Value fields.</dd>
          <dt>Extended-Type</dt>
          <dd>
     10</dd>
          <dt>TLV-Value</dt>
          <dd>
            <t>
    The attribute includes one or more Softwire46-Option-Code TLVs:
       A Softwire46-Priority Attribute MUST <bcp14>MUST</bcp14> contain at least one
       Softwire46-Option-Code TLV (Section 3.2.1). (<xref target="opc" format="default"/>).</t>
            <t>

       Softwire46 mechanisms are prioritized in the appearance order
       of the
       in the Softwire46-Priority Attribute. That is,
       the first-appearing mechanism is most preferred.
]]></artwork>
          </figure></t> preferred.</t>
          </dd>
        </dl>
        <t>The Softwire46-Priority Attribute is associated with the following
        identifier: 241.Extended-Type (TBD5).</t> 241.10.</t>
        <section anchor="opc" title="Softwire46-Option-Code"> numbered="true" toc="default">
          <name>Softwire46-Option-Code</name>
          <t>This attribute is used to convey an option code assigned to a
          Softwire46 mechanism <xref target="RFC8026"></xref>. target="RFC8026" format="default"/>. This attribute
          is encoded in 32 bits as per the recommendation in Appendix A.2.1 of
          <xref target="RFC6158"></xref>.</t> target="RFC6158" sectionFormat="of" section="A.2.1"/>.</t>
          <t>The structure of Softwire46-Option-Code is shown below:</t>

          <t><figure>
              <artwork><![CDATA[   TLV-Type
      18

   TLV-Length
          <dl newline="true" spacing="normal">
            <dt>TLV-Type</dt>
            <dd>
      18</dd>
            <dt>TLV-Length</dt>
            <dd>
      6 octets

   Data Type octets</dd>
            <dt>Data Type</dt>
            <dd>
      The attribute Softwire46-Option-Code is of type integer
     (Section 3.1 of [RFC8044]).

   TLV-Value "integer"
     (<xref target="RFC8044" sectionFormat="of" section="3.1"/>).</dd>
            <dt>TLV-Value</dt>
            <dd>
      A 32-bit IANA-registered option code representing a Softwire46
      mechanism (Softwire46-option-code). The codes and their
      corresponding Softwire46 mechanisms are listed in Section 7.3.]]></artwork>
            </figure></t>

          <t></t> <xref target="s46option" format="default"/>.</dd>
          </dl>
        </section>
      </section>
      <section anchor="s46-mcast-attr" title="Softwire46-Multicast Attribute"> numbered="true" toc="default">
        <name>Softwire46-Multicast Attribute</name>
        <t>The Softwire46-Multicast Attribute conveys the IPv6 prefixes to be
        used to synthesize multicast and unicast IPv4-embedded IPv6 addresses
        as per <xref target="RFC8114"></xref>. target="RFC8114" format="default"/>. This attribute is of type "tlv"
        and contains additional TLVs. The following requirements apply:</t>

        <t><list style="empty">
            <t>The
        <ul spacing="normal">
          <li>The BNG SHALL <bcp14>SHALL</bcp14> use the IPv6 prefixes returned in the RADIUS
            Softwire46-Multicast Attribute to populate the DHCPv6 PREFIX64
            Option <xref target="RFC8115"></xref>.</t>

            <t>This target="RFC8115" format="default"/>.</li>
          <li>This attribute MAY <bcp14>MAY</bcp14> be used in Access-Request packets as a hint
            to the RADIUS server. For example, if the BNG is pre-configured preconfigured
            for Softwire46-Multicast, these prefixes may be inserted in the
            attribute. The RADIUS server MAY <bcp14>MAY</bcp14> ignore the hint sent by the BNG,
            and it MAY <bcp14>MAY</bcp14> assign a different Softwire46-Multicast Attribute.</t>

            <t>The Attribute.</li>
          <li>The Softwire46-Multicast Attribute MAY <bcp14>MAY</bcp14> appear in an
            Access-Request, Access-Accept, CoA-Request, and Accounting-Request
            packet.</t>

            <t>The
            packet.</li>
          <li>The Softwire46-Multicast Attribute MUST NOT <bcp14>MUST NOT</bcp14> appear in any other
            RADIUS packet.</t>

            <t>The packet.</li>
          <li>The Softwire46-Multicast Attribute MAY <bcp14>MAY</bcp14> contain ASM-Prefix64
            (<xref target="TLV0"></xref>), target="TLV0" format="default"/>), SSM-Prefix64 (<xref
            target="TLV1"></xref>), target="TLV1" format="default"/>), and U-Prefix64 (<xref
            target="TLV2"></xref>).</t>

            <t>The target="TLV2" format="default"/>).</li>
          <li>The Softwire46-Multicast Attribute MUST <bcp14>MUST</bcp14> include ASM-Prefix64 or
            SSM-Prefix64, and it MAY <bcp14>MAY</bcp14> include both.</t>

            <t>The both.</li>
          <li>The U-Prefix64 MUST <bcp14>MUST</bcp14> be present when SSM-Prefix64 is present.
            U-Prefix64 MAY <bcp14>MAY</bcp14> be present when ASM-Prefix64 is present.</t>
          </list></t> present.</li>
        </ul>
        <t>The Softwire46-Multicast Attribute is structured as follows:</t>

        <figure>
          <artwork><![CDATA[
   Type
     241 (To be confirmed by IANA)

   Length
        <dl newline="true" spacing="normal">
          <dt>Type</dt>
          <dd>
     241</dd>
          <dt>Length</dt>
          <dd>
     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 attributes.

   Extended-Type
     TBD6

   Value attributes.</dd>
          <dt>Extended-Type</dt>
          <dd>
     11</dd>
          <dt>Value</dt>
          <dd>
            <t>
     This field contains a set of attributes as follows:

     ASM-Prefix64
</t>
            <dl newline="true" spacing="normal">
              <dt>ASM-Prefix64</dt>
              <dd>
       This attribute contains the Any-Source Multicast (ASM)
       IPv6 prefix. Refer to Section 3.3.1.

     SSM-Prefix64 <xref target="TLV0" format="default"/>.</dd>
              <dt>SSM-Prefix64</dt>
              <dd>
       This attribute contains the Source-Source Multicast (SSM)
       IPv6 prefix. Refer to Section 3.3.2.

     U-Prefix64 <xref target="TLV1" format="default"/>.</dd>
              <dt>U-Prefix64</dt>
              <dd>
       This attribute contains the IPv4 prefix used for address
       translation. Refer to Section 3.3.3.
      ]]></artwork>
        </figure> <xref target="TLV2" format="default"/>.</dd>
            </dl>
          </dd>
        </dl>
        <t>The Softwire46-Multicast Attribute is associated with the following
        identifier: 241.Extended-Type(TBD6).</t> 241.11.</t>
        <section anchor="TLV0" title="ASM-Prefix64 Attribute"> numbered="true" toc="default">
          <name>ASM-Prefix64 Attribute</name>
          <t>The ASM-Prefix64 attribute is structured as follows:</t>

          <figure>
            <preamble></preamble>

            <artwork><![CDATA[
   TLV-Type
      19

   TLV-Length
          <dl newline="true" spacing="normal">
            <dt>TLV-Type</dt>
            <dd>
      19</dd>
            <dt>TLV-Length</dt>
            <dd>
      16 octets. The length of asm-prefix64 must be /96 [RFC8115].

   Data Type <xref target="RFC8115" format="default"/>.</dd>
            <dt>Data Type</dt>
            <dd>
      The attribute ASM-Prefix64 is of type ipv6prefix (Section 3.10 of
      [RFC8044]).

   TLV-Value "ipv6prefix" (<xref target="RFC8044" sectionFormat="of" section="3.10"/>).</dd>
            <dt>TLV-Value</dt>
            <dd>
      This field specifies the IPv6 multicast prefix (asm-prefix64)
      to be used to synthesize the IPv4-embedded IPv6 addresses of the
      multicast groups in the ASM mode. The conveyed multicast IPv6
      prefix MUST <bcp14>MUST</bcp14> belong to the ASM range.
      ]]></artwork>
          </figure> </dd>
          </dl>
        </section>
        <section anchor="TLV1" title="SSM-Prefix64 Attribute"> numbered="true" toc="default">
          <name>SSM-Prefix64 Attribute</name>
          <t>The SSM-Prefix64 attribute is structured as follows:</t>

          <figure>
            <artwork><![CDATA[   Type
     20

   TLV-Length
          <dl newline="true" spacing="normal">
            <dt>Type</dt>
            <dd>
     20</dd>
            <dt>TLV-Length</dt>
            <dd>
      16 octets. The length of ssm-prefix64 must be /96 [RFC8115].

   Data Type <xref target="RFC8115" format="default"/>.</dd>
            <dt>Data Type</dt>
            <dd>
      The attribute SSM-Prefix64 is of type ipv6prefix (Section 3.10 of
      [RFC8044]).

   TLV-Type "ipv6prefix" (<xref target="RFC8044" sectionFormat="of" section="3.10"/>).</dd>
            <dt>TLV-Type</dt>
            <dd>
      This field specifies the IPv6 multicast prefix (ssm-prefix64)
      to be used to synthesize the IPv4-embedded IPv6 addresses of the
      multicast groups in the SSM mode. The conveyed multicast IPv6
      prefix MUST <bcp14>MUST</bcp14> belong to the SSM range.
      ]]></artwork>
          </figure> </dd>
          </dl>
        </section>
        <section anchor="TLV2" title="U-Prefix64 Attribute"> numbered="true" toc="default">
          <name>U-Prefix64 Attribute</name>
          <t>The structure of U-Prefix64 is shown below:</t>

          <figure>
            <preamble></preamble>

            <artwork><![CDATA[
   TLV-Type
      21

   TLV-Length
          <dl newline="true" spacing="normal">
            <dt>TLV-Type</dt>
            <dd>
      21</dd>
            <dt>TLV-Length</dt>
            <dd>
      4 + length of unicast-prefix. As specified in [RFC6052], <xref target="RFC6052" format="default"/>,
      the unicast-prefix prefix-length MUST prefix length <bcp14>MUST</bcp14> be set to 32, 40, 48,
      56, 64, or 96.

   Data Type 96.</dd>
            <dt>Data Type</dt>
            <dd>
      The attribute U-Prefix64 is of type ipv6prefix (Section 3.10 of
      [RFC8044]).

   TLV-Value "ipv6prefix" (<xref target="RFC8044" sectionFormat="of" section="3.10"/>).</dd>
            <dt>TLV-Value</dt>
            <dd>
      This field identifies the IPv6 unicast prefix (u-prefix64) to
      be used in the SSM mode for constructing the IPv4-embedded IPv6
      addresses representing the IPv4 multicast sources in the IPv6
      domain. It may also be used to extract the IPv4 address from the
      received multicast data flows.      ]]></artwork>
          </figure> flows.</dd>
          </dl>
        </section>
      </section>
    </section>
    <section title="A numbered="true" toc="default">
      <name>A Sample Configuration Process with RADIUS"> RADIUS</name>
      <t><xref target="example"></xref> target="example" format="default"/> illustrates how the RADIUS and DHCPv6
      protocols interwork to provide CE with softwire configuration
      information.</t>
      <figure align="center" anchor="example"
              title="Interaction anchor="example">
        <name>Interaction between DHCPv6 and AAA Server with RADIUS authentication">
        <artwork><![CDATA[ RADIUS&nbsp;Authentication</name>
        <artwork name="" type="" align="left" alt=""><![CDATA[
CE                             BNG                     AAA Server
|                               |                               |
|-------1.DHCPv6 Solicit------->|                               |
|(ORO with unicast and/or m'cast|       |                               |
|    multicast container option code(s)) |                               |
|    codes(s))                  |                               |
|                               |-------2.Access-Request------->|
|                               |   (Softwire46-Configuration   |
|                               |       Attribute and/or        |
|                               |Softwire46-Multicast Attribute)|
|                               |                               |
|                               |<------3.Access-Accept---------|
|                               |   (Softwire46-Configuration   |
|                               |       Attribute and/or        |
|                               |Softwire46-Multicast Attribute)|
|                               |                               |
|<----4.DHCPv6 Advertisement----|                               |
|     (container option(s))     |                               |
|                               |                               |
|-------5.DHCPv6  Request------>|                               |
|     (container Option(s)) option(s))     |                               |
|                               |                               |
|<--------6.DHCPv6 Reply--------|                               |
|     (container option(s))     |                               |
|                               |                               |
             DHCPv6                         RADIUS

]]></artwork>                         RADIUS]]></artwork>
      </figure>

      <t><list style="numbers">
          <t>The
      <ol spacing="normal" type="1">
        <li>The CE creates a DHCPv6 Solicit message. For unicast softwire
          configuration, the message includes an OPTION_REQUEST_OPTION (6)
          with the Softwire46 Container option code(s) as defined in <xref
          target="RFC7598"></xref>. target="RFC7598" format="default"/>. OPTION_S46_CONT_MAPE (94) should be
          included for MAP-E, OPTION_S46_CONT_MAPT (95) for MAP-T, and
          OPTION_S46_CONT_LW (96) for Lightweight 4over6. For multicast
          configuration, the option number for OPTION_V6_PREFIX64 (113) is
          included in the client's ORO. Option Request Option (ORO). The message is sent to the BNG.</t>

          <t>On BNG.</li>

        <li>On receipt of the DHCPv6 Solicit message, the BNG constructs a RADIUS
          Access-Request message containing a User-Name Attribute (1)
          (containing either a CE MAC Media Access Control (MAC) address,
	  interface-id, or both), both) and a
          User-Password Attribute (2) (with a pre-configured preconfigured shared password
          between the CE and AAA server as defined in <xref
          target="RFC2865"></xref>). target="RFC2865" format="default"/>). The Softwire46-Configuration Attribute
          and/or Softwire46-Multicast Attribute are also included (as
          requested by the client). The resulting message is sent to the AAA
          server.</t>

          <t>The
          server.</li>
        <li>The AAA server authenticates the request. If this is successful,
          and a suitable configuration is available, an Access-Accept message
	  is sent to the BNG containing the requested Softwire46-Configuration
          Attribute or Softwire46-Multicast Attribute. It is the
          responsibility of the AAA server to ensure the consistency of the
          provided configuration.</t>

          <t>The configuration.</li>
        <li>The BNG maps the received softwire configuration into the
          corresponding fields in the DHCPv6 softwire configuration option(s).
          These are included in the DHCPv6 Advertise message message, which is sent to
          the CE.</t>

          <t>The CE.</li>
        <li>The CE sends a DHCPv6 Request message. In the ORO, the option
          code(s)
          codes of any of the required softwire options that were received
          in the DHCPv6 Advertise message are included.</t>

          <t>The included.</li>
        <li>The BNG sends a DHCPv6 Reply message to the client containing the
          softwire container option(s) enumerated in the ORO.</t>
        </list></t> ORO.</li>
      </ol>
      <t>The authorization operation could be done independently, independently after the
      authentication process. In this case, steps 1-5 are completed as above,
      then the following steps are performed:</t>

      <t><list hangIndent="4" style="hanging">
          <t hangText="6a.">When
      <dl newline="false" spacing="normal" indent="5">
        <dt>6a.</dt>
        <dd>When the BNG receives the DHCPv6 Request, it
          constructs a RADIUS Access-Request message, which contains a
          Service-Type Attribute (6) with the value "Authorize Only" (17), the
          corresponding Softwire46-Configuration Attribute, and a State
          Attribute obtained from the previous authentication process
          according to <xref target="RFC5080"></xref>. target="RFC5080" format="default"/>. The resulting message
          is sent to the AAA server.</t>

          <t hangText="7a.">The server.</dd>
        <dt>7a.</dt>
        <dd>The AAA server checks the authorization request. If it is
          approved, an Access-Accept message is returned to the BNG with the
          corresponding Softwire46-Configuration Attribute.</t>

          <t hangText="8a.">The Attribute.</dd>
        <dt>8a.</dt>
        <dd>The BNG sends a Reply message to the client
          containing the softwire container options enumerated in the ORO.</t>
        </list></t> ORO.</dd>
      </dl>
      <t>In addition to the above, the following points need to be
      considered:</t>

      <t><list style="symbols">
          <t>In
      <ul spacing="normal">
        <li>In the configuration message flows described above above, the
          Message-Authenticator (type 80) <xref target="RFC2869"></xref> target="RFC2869" format="default"/>
          should be used to protect both Access-Request and Access-Accept
          messages.</t>

          <t>If
          messages.</li>
        <li>If the BNG does not receive the corresponding
          Softwire46-Configuration Attribute in the Access-Accept message message, it
          may fall back to creating the DHCPv6 softwire configuration options
          using pre-configured the preconfigured Softwire46 configuration, configuration if this is
          present.</t>

          <t>If
          present.</li>
        <li>If the BNG receives an Access-Reject from the AAA server, then
          the Softwire46 configuration must not be supplied to the client.</t>

          <t>As client.</li>
        <li>As specified in <xref target="RFC8415"></xref>, Section 18.2.5,
          "Creation target="RFC8415" sectionFormat="of" section="18.2.5"/> ("Creation and Transmission of Rebind Messages", 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, a secondary BNG receiving the DHCPv6 message must
          initiate a new Access-Request message towards the AAA server. The
          secondary BNG includes the Softwire46-Configuration Attribute in
          this Access-Request message.</t>

          <t>For message.</li>
        <li>For Lightweight 4over6, the CE's binding state needs to be
          synchronized between the clients and the Lightweight AFTR
          (lwAFTR)/BR. This can be achieved in two ways: static
          pre-configuration
          preconfiguration of the bindings on both the AAA server and lwAFTR, lwAFTR
          or on-demand on demand, whereby the AAA server updates the lwAFTR with the CE's
          binding state as it is created or deleted.</t>
        </list></t> deleted.</li>
      </ul>
      <t>In some deployments, the DHCP server may use the Accounting-Request
      to report to a AAA server the softwire configuration returned to a
      requesting host. host to a AAA server. It is the responsibility of the DHCP server to ensure
      the consistency of the configuration provided to the requesting hosts.
      Reported data to a AAA server may be required for various operational
      purposes (e.g., regulatory).</t>
      <t>A configuration change (e.g., BR address) may result in an exchange
      of CoA-Requests between the BNG and the AAA server server, as shown in <xref
      target="coa"></xref>. target="coa" format="default"/>. Concretely, when the BNG receives a CoA-Request
      message containing Softwire46 attributes, it sends a DHCPv6 Reconfigure
      message to the appropriate CE to inform that CE that an updated
      configuration is available. Upon receipt of such a message, the CE sends a
      DHCPv6 Renew or Information-Request in order to receive the updated
      Softwire46 configuration. In deployments where the BNG embeds a DHCPv6
      relay, CoA-Requests can be used following the procedure specified in
      <xref target="RFC6977"></xref>. target="RFC6977" format="default"/>. </t>

      <t><figure anchor="coa" title="Change
      <figure anchor="coa">
        <name>Change of Configuration Example">
          <artwork><![CDATA[ Example</name>
        <artwork name="" type="" align="left" alt=""><![CDATA[
        CE                          BNG                    AAA Server
        |                           |                            |
        |---DHCPv6 Solicit--------->|                            |
        |                           |---Access-Request---------->|
        |                           |<--Access-Accept------------|
        |                           |(Softwire46-Configuration   |
        |                           |    Attribute ...)          |
                                  ....
        |                           |                            |
        |                           |<-----CoA-Request-----------|
        |                           |(Softwire46-Configuration   |
        |                           |    Attribute ...)          |
        |                           |------CoA-Response--------->|
        |<--DHCPv6 Reconfigure------|                            |
        |                           |                            |
                                  ....]]></artwork>
        </figure></t>
      </figure>
    </section>

    <section title="Table numbered="true" toc="default">
      <name>Table of Attributes"> Attributes</name>
      <t>This document specifies three new RADIUS attributes, and their
      formats are as follows:</t>

      <t><list style="symbols">
          <t>Softwire46-Configuration
      <ul spacing="normal">
        <li>Softwire46-Configuration Attribute: 241.TBD1</t>

          <t>Softwire46-Priority 241.9</li>
        <li>Softwire46-Priority Attribute: 241.TBD5</t>

          <t>Softwire46-Multicast 241.10</li>
        <li>Softwire46-Multicast Attribute: 241.TBD6</t>
        </list></t>

      <t>Table 3 241.11</li>
      </ul>
      <t><xref target="Table3"/> describes which attributes may be found, found in which kinds of
      packets and in what quantity.</t>

      <t><figure title="Table 3: Table of Attributes">
          <artwork><![CDATA[Request Accept Reject Challenge Acct CoA-  #       Attribute
                                Req  Req
 0-1     0-1     0      0       0-1  0-1  241.TBD1 Softwire46-
                                                   Configuration
 0-1     0-1     0      0       0-1  0-1  241.TBD5 Softwire46-
                                                   Priority
 0-1     0-1     0      0       0-1  0-1  241.TBD6 Softwire46-
                                                   Multicast
]]></artwork>
        </figure></t>

      <t></t>

  <table anchor="Table3">
	<name>Table of Attributes</name>
	<thead>
	<tr>
		<th>Request</th>
		<th>Accept</th>
		<th>Reject</th>
		<th>Challenge</th>
		<th>Acct Req</th>
		<th>CoA-Req</th>
		<th>#</th>
		<th>Attribute</th>
	</tr>
	</thead>
	<tbody>
	<tr>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>0</td>
		<td>&nbsp;0</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;241.9</td>
		<td>Softwire46-&zwsp;Configuration</td>
	</tr>
	<tr>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>0</td>
		<td>&nbsp;0</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;241.10</td>
		<td>Softwire46-&zwsp;Priority</td>
	</tr>
	<tr>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>0</td>
		<td>&nbsp;0</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;0-1</td>
		<td>&nbsp;241.11</td>
		<td>Softwire46-&zwsp;Multicast</td>
	</tr>
	</tbody>
</table>

    </section>
    <section anchor="Security" title="Security Considerations">
      <t>Section 9 of <xref target="RFC7596"></xref> numbered="true" toc="default">
      <name>Security Considerations</name>
      <t><xref target="RFC7596" sectionFormat="of" section="9"/> discusses security issues
      related to Lightweight 4over6, Section 10 of 4over6; <xref
      target="RFC7597"></xref> target="RFC7597" sectionFormat="of" section="10"/> discusses security issues related to MAP-E,
      Section 13 of MAP-E;
       <xref target="RFC7599"></xref> target="RFC7599" sectionFormat="of" section="13"/> discusses security issues
      related to MAP-T, MAP-T; and Section 9 of <xref target="RFC8114"></xref> target="RFC8114" sectionFormat="of" section="9"/>
      discusses security issues related to the delivery of IPv4 multicast
      services to IPv4 clients over an IPv6 multicast network.</t>
      <t>This document does not introduce any security issues inherently
      different from those already identified in Section 8 of <xref
      target="RFC2865"></xref> target="RFC2865" sectionFormat="of" section="8"/> and Section 6 of <xref target="RFC5176"></xref> target="RFC5176" sectionFormat="of" section="6"/>
      for CoA messages. Known security vulnerabilities of the RADIUS protocol
      discussed in Section 7 of <xref target="RFC2607"></xref> target="RFC2607" sectionFormat="of" section="7"/> and Section 7
      of
      <xref target="RFC2869"></xref> target="RFC2869" sectionFormat="of" section="7"/> apply to this specification. These
      well-established properties of the RADIUS protocol place some
      limitations on how it can safely be used, since there is some inherent
      requirement to trust the counterparty to not misbehave.</t>
      <t>Accordingly, this document targets deployments where a trusted
      relationship is in place between the RADIUS client and server server, with
      communication optionally secured by IPsec or Transport Layer Security
      (TLS) <xref target="RFC6614"></xref>. target="RFC6614" format="default"/>. The use of IPsec <xref
      target="RFC4301"></xref> target="RFC4301" format="default"/> for providing security when RADIUS is carried
      in IPv6 is discussed in <xref target="RFC3162"></xref>.</t> target="RFC3162" format="default"/>.</t>
      <t>Security considerations for interactions between a Softwire46 CE and
      the BNG are discussed in Section 9 of <xref target="RFC7598"></xref> target="RFC7598" sectionFormat="of" section="9"/>
      (DHCPv6 options for the configuration of softwire46 Softwire46 address and port-mapped
      clients), Section 3 of <xref target="RFC8026"></xref> (DHCPv6-based target="RFC8026" sectionFormat="of" section="3"/> (a DHCPv6-based
      Softwire46 prioritization mechanism), and Section 5 of <xref
      target="RFC8115"></xref> target="RFC8115" sectionFormat="of" section="5"/> (DHCPv6 options for configuration of
      IPv4-embedded IPv6 prefixes).</t>
    </section>
    <section anchor="IANA" title="IANA Considerations"> numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>IANA is requested to make has made new code point assignments for RADIUS
      attributes as described in the following subsections. The assignments
      should use the RADIUS registry available at
      https://www.iana.org/assignments/radius-types/.</t>
      &lt;<eref target="https://www.iana.org/assignments/radius-types/"/>&gt;.</t>
      <section title="New numbered="true" toc="default">
        <name>New RADIUS Attributes">
        <t>This document requests IANA to assign Attributes</name>
        <t>IANA has assigned the Attribute Types attribute types defined
        in this document from the RADIUS namespace as described in the "IANA
        Considerations" section Section <xref target="RFC3575" section="2" sectionFormat="bare">IANA Considerations</xref> of <xref target="RFC3575"></xref>, target="RFC3575"/>, in
        accordance with BCP 26 <xref target="RFC8126"></xref>.</t>

        <t>This document requests that IANA register target="RFC8126" format="default"/>.</t>
        <t>IANA has registered three new RADIUS
        attributes,
        attributes from the "Short Extended Space" section of <xref
        target="RFC6929"></xref>. target="RFC6929" format="default"/>. The attributes are: are the Softwire46-Configuration
        Attribute, Softwire46-Priority Attribute, and Softwire46-Multicast
        Attribute:</t>

        <figure>
          <artwork><![CDATA[   Type        Description                Data Type   Reference
   ----        -----------                ---------   ---------
   241.TBD1     Softwire46-Configuration   tlv         Section 3.1
   241.TBD5     Softwire46-Priority        tlv         Section 3.2
   241.TBD6     Softwire46-Multicast       tlv         Section 3.3]]></artwork>
        </figure>
      </section>

      <section title="RADIUS

<table anchor="Table4">
      <name>New RADIUS Attributes</name>
	<thead>
	<tr>
		<th>Type</th>
		<th>Description</th>
		<th>Data Type</th>
		<th>Reference</th>
	</tr>
	</thead>
	<tbody>
	<tr>
		<td>&nbsp;241.9</td>
		<td>&nbsp;Softwire46-Configuration</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="conf-attr"/></td>
	</tr>
	<tr>
		<td>&nbsp;241.10</td>
		<td>&nbsp;Softwire46-Priority</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="s46-prio-attr"/></td>
	</tr>
	<tr>
		<td>&nbsp;241.11</td>
		<td>&nbsp;Softwire46-Multicast</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="s46-mcast-attr"/></td>
	</tr>
	</tbody>
</table>

      </section>
      <section numbered="true" toc="default">
        <name>RADIUS Softwire46 Configuration and Multicast Attributes"> Attributes</name>
        <t>IANA is requested to create has created a new registry called "RADIUS
        Softwire46 Configuration and Multicast Attributes".</t>
        <t>All attributes in this registry have one or more parent RADIUS
        attributes in nesting (refer to <xref target="RFC6929"></xref>).</t> target="RFC6929" format="default"/>).</t>
        <t>This registry must be has been initially populated with the following
        values:</t>

        <t><figure>
            <artwork><![CDATA[Value  Description                     Data Type    Reference
-----  -----------                     ---------    ---------
0      Reserved
1      Softwire46-MAP-E                tlv          Section 3.1.1.1
2      Softwire46-MAP-T                tlv          Section 3.1.1.2
3      Softwire46-Lightweight-4over6   tlv          Section 3.1.1.3
4      Softwire46-Rule (BMR)           tlv          Section 3.1.3.1
5      Softwire46-Rule (FMR)           tlv          Section 3.1.3.1
6      Softwire46-BR                   ipv6addr     Section 3.1.3.2
7      Softwire46-DMR                  ipv6prefix   Section 3.1.3.3
8      Softwire46-V4V6Bind             tlv          Section 3.1.3.4
9      Softwire46-PORTPARAMS           tlv          Section 3.1.3.5
10     Rule-IPv6-Prefix                ipv6prefix   Section 3.1.4.1
11     Rule-IPv4-Prefix                ipv4prefix   Section 3.1.4.2
12     EA-Length                       integer      Section 3.1.4.3
13     IPv4-Address                    ipv4addr     Section 3.1.5.1
14     Bind-IPv6-Prefix                ipv6prefix   Section 3.1.5.2
15     PSID-Offset                     integer      Section 3.1.6.1
16     PSID-Len                        integer      Section 3.1.6.2
17     PSID                            integer      Section 3.1.6.3
18     Softwire46-Option-Code          integer      Section 3.2.1
19     ASM-Prefix64                    ipv6prefix   Section 3.3.1
20     SSM-Prefix64                    ipv6prefix   Section 3.3.2
21     U-Prefix64                      ipv6prefix   Section 3.3.3
22-255 Unassigned]]></artwork>
          </figure></t>

<table anchor="Table5">
<name>RADIUS Softwire46 Configuration and Multicast Attributes</name>
	<thead>
	<tr>
		<th>Value</th>
		<th>Description</th>
		<th>Data Type</th>
		<th>Reference</th>
	</tr>
	</thead>
	<tbody>
	<tr>
		<td>&nbsp;0</td>
		<td>&nbsp;Reserved</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;1</td>
		<td>&nbsp;Softwire46-MAP-E</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="etlv"/></td>
	</tr>
	<tr>
		<td>&nbsp;2</td>
		<td>&nbsp;Softwire46-MAP-T</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="ttlv"/></td>
	</tr>
	<tr>
		<td>&nbsp;3</td>
		<td>&nbsp;Softwire46-Lightweight-4over6</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="ltlv"/></td>
	</tr>
	<tr>
		<td>&nbsp;4</td>
		<td>&nbsp;Softwire46-Rule (BMR)</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="s46-rule-sub-tlv"/></td>
	</tr>
	<tr>
		<td>&nbsp;5</td>
		<td>&nbsp;Softwire46-Rule (FMR)</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="s46-rule-sub-tlv"/></td>
	</tr>
	<tr>
		<td>&nbsp;6</td>
		<td>&nbsp;Softwire46-BR</td>
		<td>&nbsp;ipv6addr</td>
		<td>&nbsp;<xref target="s46br"/></td>
	</tr>
	<tr>
		<td>&nbsp;7</td>
		<td>&nbsp;Softwire46-DMR</td>
		<td>&nbsp;ipv6prefix</td>
		<td>&nbsp;<xref target="s46dmr"/></td>
	</tr>
	<tr>
		<td>&nbsp;8</td>
		<td>&nbsp;Softwire46-V4V6Bind</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="s46bind"/></td>
	</tr>
	<tr>
		<td>&nbsp;9</td>
		<td>&nbsp;Softwire46-PORTPARAMS</td>
		<td>&nbsp;tlv</td>
		<td>&nbsp;<xref target="s46param"/></td>
	</tr>
	<tr>
		<td>&nbsp;10</td>
		<td>&nbsp;Rule-IPv6-Prefix</td>
		<td>&nbsp;ipv6prefix</td>
		<td>&nbsp;<xref target="v6prefix"/></td>
	</tr>
	<tr>
		<td>&nbsp;11</td>
		<td>&nbsp;Rule-IPv4-Prefix</td>
		<td>&nbsp;ipv4prefix</td>
		<td>&nbsp;<xref target="v4prefix"/></td>
	</tr>
	<tr>
		<td>&nbsp;12</td>
		<td>&nbsp;EA-Length</td>
		<td>&nbsp;integer</td>
		<td>&nbsp;<xref target="ea-length"/></td>
	</tr>
	<tr>
		<td>&nbsp;13</td>
		<td>&nbsp;IPv4-Address</td>
		<td>&nbsp;ipv4addr</td>
		<td>&nbsp;<xref target="v4address"/></td>
	</tr>
	<tr>
		<td>&nbsp;14</td>
		<td>&nbsp;Bind-IPv6-Prefix</td>
		<td>&nbsp;ipv6prefix</td>
		<td>&nbsp;<xref target="bindv6"/></td>
	</tr>
	<tr>
		<td>&nbsp;15</td>
		<td>&nbsp;PSID-Offset</td>
		<td>&nbsp;integer</td>
		<td>&nbsp;<xref target="psid-offset"/></td>
	</tr>
	<tr>
		<td>&nbsp;16</td>
		<td>&nbsp;PSID-Len</td>
		<td>&nbsp;integer</td>
		<td>&nbsp;<xref target="psid-len"/></td>
	</tr>
	<tr>
		<td>&nbsp;17</td>
		<td>&nbsp;PSID</td>
		<td>&nbsp;integer</td>
		<td>&nbsp;<xref target="psid"/></td>
	</tr>
	<tr>
		<td>&nbsp;18</td>
		<td>&nbsp;Softwire46-Option-Code</td>
		<td>&nbsp;integer</td>
		<td>&nbsp;<xref target="opc"/></td>
	</tr>
	<tr>
		<td>&nbsp;19</td>
		<td>&nbsp;ASM-Prefix64</td>
		<td>&nbsp;ipv6prefix</td>
		<td>&nbsp;<xref target="TLV0"/></td>
	</tr>
	<tr>
		<td>&nbsp;20</td>
		<td>&nbsp;SSM-Prefix64</td>
		<td>&nbsp;ipv6prefix</td>
		<td>&nbsp;<xref target="TLV1"/></td>
	</tr>
	<tr>
		<td>&nbsp;21</td>
		<td>&nbsp;U-Prefix64</td>
		<td>&nbsp;ipv6prefix</td>
		<td>&nbsp;<xref target="TLV2"/></td>
	</tr>
	<tr>
		<td>&nbsp;22-255</td>
		<td>&nbsp;Unassigned</td>
		<td>&nbsp;</td>
		<td>&nbsp;</td>
	</tr>
	</tbody>
</table>

        <t>The registration procedure for this registry is Standards Action as
        defined in <xref target="RFC8126"></xref>.</t> target="RFC8126" format="default"/>.</t>
      </section>
      <section title="Softwire46 anchor="s46option" numbered="true" toc="default">
        <name>Softwire46 Mechanisms and Their Identifying Option Codes"> Codes</name>
        <t>The Softwire46-Priority Attribute conveys an ordered list of option
        codes assigned to Softwire46 mechanisms, for which IANA is requested
        to create has
        created and will maintain a new registry entitled titled "Option Codes Permitted
        in the Softwire46-Priority Attribute".</t>

        <t>Table 4
        <t><xref target="Table6"/> shows the initial version of allowed option codes, codes and the
        Softwire46 mechanisms that they represent. The option code for DS-Lite
        is derived from the IANA allocated IANA-allocated RADIUS Attribute Type value for
        DS-Lite <xref target="RFC6519"></xref>. target="RFC6519" format="default"/>. The option codes for MAP-E,
        MAP-T, and Lightweight 4over6 are the TLV-Type values for the MAP-E,
        MAP-T, and Lightweight 4over6 attributes defined in <xref
        target="s46-tlvs"></xref>.</t>

        <figure title="Table 4: Option target="s46-tlvs" format="default"/>.</t>
<table anchor="Table6">
	<name>Option Codes to S46 Mechanisms">
          <artwork><![CDATA[          +-----------+--------------------+-----------+
          |Option Code|Softwire46 Mechanism| Reference |
          +-----------+--------------------+-----------+
          |     1     |        MAP-E       |  RFC7597  |
          |     2     |        MAP-T       |  RFC7599  |
          |     3     | Lightweight 4over6 |  RFC7596  |
          |    144    |      DS-Lite       |  RFC6519  |
          +-----------+--------------------+-----------+
]]></artwork>
        </figure> Mechanisms</name>
	<thead>
	<tr>
		<th>Option Code</th>
		<th>Softwire46 Mechanism</th>
		<th>Reference</th>
	</tr>	</thead>	<tbody>	<tr>
		<td>&nbsp;1</td>
		<td>&nbsp;MAP-E</td>
		<td>&nbsp;<xref target="RFC7597"/></td>
	</tr>
	<tr>
		<td>&nbsp;2</td>
		<td>&nbsp;MAP-T</td>
		<td>&nbsp;<xref target="RFC7599"/></td>
	</tr>
	<tr>
		<td>&nbsp;3</td>
		<td>&nbsp;Lightweight 4over6</td>
		<td>&nbsp;<xref target="RFC7596"/></td>
	</tr>
	<tr>
		<td>&nbsp;144</td>
		<td>&nbsp;DS-Lite</td>
		<td>&nbsp;<xref target="RFC6519"/></td>
	</tr>
	</tbody>
</table>

        <t>Additional option codes may be added to this list in the future
        using the IETF Review process described in Section 4.8 of <xref
        target="RFC8126"></xref>.</t>
      </section>
    </section>

    <section title="Contributing Authors">
      <figure>
        <artwork><![CDATA[Bing Liu
Huawei Technologies Co., Ltd
Q14, Huawei Campus, No.156 Beiqing Road
Hai-Dian District, Beijing, 100095
P.R. China

Email: leo.liubing@huawei.com

Peter Deacon
IEA Software, Inc.
P.O. Box 1170
Veradale, WA  99037
USA

Email: peterd@iea-software.com

Qiong Sun
China Telecom
Beijing  China

Email: sunqiong@ctbri.com.cn

Qi Sun
Tsinghua University
Department of Computer Science, Tsinghua University
Beijing 100084
P.R.China
Phone: +86-10-6278-5822

Email: sunqibupt@gmail.com

Cathy Zhou
Huawei Technologies
Bantian, Longgang District
Shenzhen 518129

Email: cathy.zhou@huawei.com

Tina Tsou
Huawei Technologies(USA)
2330 Central Expressway
Santa Clara, CA 95050
USA

Email: Tina.Tsou.Zouting@huawei.com

ZiLong Liu
Tsinghua University
Beijing 100084
P.R.China
Phone: +86-10-6278-5822

Email: liuzilong8266@126.com

Yong Cui
Tsinghua University
Beijing 100084
P.R.China
Phone: +86-10-62603059

Email: yong@csnet1.cs.tsinghua.edu.cn    ]]></artwork>
      </figure> target="RFC8126" sectionFormat="of" section="4.8"/>.</t>
      </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t>The authors would like to thank the valuable comments made by Peter
      Lothberg, Wojciech Dec, Ian Farrer, Suresh Krishnan, Qian Wang, Wei
      Meng, Cui Wang, Alan Dekok, Stefan Winter, and Yu Tianpeng to this
      document.</t>

      <t>This document was merged with <xref
      target="I-D.sun-softwire-lw4over6-radext"></xref> and <xref
      target="I-D.wang-radext-multicast-radius-ext"></xref>, thanks to
      everyone who contributed to this document.</t>

      <t>This document was produced using the xml2rfc tool <xref
      target="RFC7991"></xref>.</t>

      <t>Many thanks to Al Morton, Bernie Volz, Joel Halpern, and Donald
      Eastlake for the review.</t>
    </section>
  </middle>
  <back>
    <references title="Normative References">
      <?rfc include='reference.RFC.2119'?>

      <?rfc include='reference.RFC.2865'?>

      <?rfc include='reference.RFC.3162'?>

      <?rfc include='reference.RFC.8415'?>

      <?rfc include='reference.RFC.3575'?>

      <?rfc include='reference.RFC.5080'?>

      <?rfc include='reference.RFC.8126'?>

      <?rfc include='reference.RFC.6052'?>

      <?rfc include='reference.RFC.6158'?>

      <?rfc include='reference.RFC.6929'?>

      <?rfc include='reference.RFC.8026'?>

      <?rfc include='reference.RFC.8044'?>

      <?rfc include='reference.RFC.8115'?>

      <?rfc include='reference.RFC.8174'?>

      <?rfc include='reference.RFC.5176'?>
    <displayreference target="I-D.wang-radext-multicast-radius-ext" to="RADIUS-EXT"/>
     <displayreference target="I-D.sun-softwire-lw4over6-radext" to="LIGHTWEIGHT-4OVER6"/>

    <references>
      <name>References</name>

      <references>
        <name>Normative References</name>

<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2865.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3162.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3575.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5080.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5176.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6052.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6158.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6929.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8026.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8044.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8115.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8415.xml"/>
      </references>

    <references title="Informative References">
      <?rfc include='reference.RFC.2869'?>

      <?rfc include='reference.RFC.6614'?>

      <?rfc include='reference.RFC.7596'?>

      <?rfc include='reference.RFC.8114'?>

      <?rfc include='reference.RFC.7597'?>

      <?rfc include='reference.RFC.7598'?>

      <?rfc include='reference.RFC.7599'?>

      <?rfc include='reference.RFC.2607'?>

      <?rfc include='reference.RFC.7991'?>

      <?rfc include='reference.RFC.4301'?>

      <?rfc include='reference.RFC.6346'?>

      <?rfc include='reference.RFC.6333'?>

      <?rfc include='reference.RFC.6519'?>

      <?rfc include='reference.RFC.6977'?>
      <references>
        <name>Informative References</name>

     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2607.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2869.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4301.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6333.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6346.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6519.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6614.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6977.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7596.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7597.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7598.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.7599.xml"/>
     <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8114.xml"/>

<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml3/reference.I-D.wang-radext-multicast-radius-ext.xml"/>

<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml3/reference.I-D.sun-softwire-lw4over6-radext.xml"/>

        <!-- <?rfc include='reference.I-D.wang-radext-multicast-radius-ext'?> include='reference.I-D.wang-radext-multicast-radius-ext'?>; Expired -->

        <!--  <?rfc include='reference.I-D.sun-softwire-lw4over6-radext'?> include='reference.I-D.sun-softwire-lw4over6-radext'?>; Expired -->

      </references>
    </references>

    <section anchor="tlv-field-map" title="DHCPv6 numbered="true" toc="default">
      <name>DHCPv6 to RADIUS Field Mappings"> Mappings</name>
      <t>The following sections detail the mappings between the softwire
      DHCPv6 option fields and the relevant RADIUS attributes as defined in
      this document.</t>
      <section title="OPTION_S46_RULE numbered="true" toc="default">
        <name>OPTION_S46_RULE (89) to Softwire46-Rule Sub-TLV Field Mappings">
        <t></t>

        <texttable>
          <ttcol Mappings</name>

        <table align="center">
	  <name>OPTION_S46_RULE to Softwire46-Rule Sub-TLV Field Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_S46_RULE Field</ttcol>

          <ttcol Field</th>
              <th align="center">Softwire46-Rule Name</ttcol>

          <ttcol Name</th>
              <th align="center">TLV Subfield</ttcol>

          <c>flags</c>

          <c>N/A</c>

          <c>TLV-type (TBD7, TBD8)</c>

          <c>ea-len</c>

          <c>EA-Length</c>

          <c>EA-len</c>

          <c>prefix4-len</c>

          <c>Rule-IPv4-Prefix</c>

          <c>Prefix-Length</c>

          <c>ipv4-prefix</c>

          <c>Rule-IPv4-Prefix</c>

          <c>rule-ipv4-prefix</c>

          <c>prefix6-len</c>

          <c>Rule-IPv6-Prefix</c>

          <c>Prefix-Length</c>

          <c>ipv6-prefix</c>

          <c>Rule-IPv6-Prefix</c>

          <c>rule-ipv6-prefix</c>
        </texttable>
      </section>

      <section title="OPTION_S46_BR Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">flags</td>
              <td align="center">N/A</td>
              <td align="center">TLV-type (4, 5)</td>
            </tr>
            <tr>
              <td align="center">ea-len</td>
              <td align="center">EA-Length</td>
              <td align="center">EA-len</td>
            </tr>
            <tr>
              <td align="center">prefix4-len</td>
              <td align="center">Rule-IPv4-Prefix</td>
              <td align="center">Prefix-Length</td>
            </tr>
            <tr>
              <td align="center">ipv4-prefix</td>
              <td align="center">Rule-IPv4-Prefix</td>
              <td align="center">rule-ipv4-prefix</td>
            </tr>
            <tr>
              <td align="center">prefix6-len</td>
              <td align="center">Rule-IPv6-Prefix</td>
              <td align="center">Prefix-Length</td>
            </tr>
            <tr>
              <td align="center">ipv6-prefix</td>
              <td align="center">Rule-IPv6-Prefix</td>
              <td align="center">rule-ipv6-prefix</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>OPTION_S46_BR (90) to Softwire46-BR Field Mappings">
        <texttable>
          <ttcol Mappings</name>
        <table align="center">
	  <name>OPTION_S46_BR to Softwire46-BR Field Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_S46_BR Field</ttcol>

          <ttcol Field</th>
              <th align="center">Softwire46-BR Subfield</ttcol>

          <c>br-ipv6-address</c>

          <c>br-ipv6-address</c>
        </texttable>
      </section>

      <section title="OPTION_S46_DMR Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">br-ipv6-address</td>
              <td align="center">br-ipv6-address</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>OPTION_S46_DMR (91) to Softwire46-DMR">
        <texttable>
          <ttcol align="center">OPTION_S46_BR Field</ttcol>

          <ttcol Softwire46-DMR</name>
        <table align="center">
	  <name>OPTION_S46_DMR to Softwire46-DMR Field Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_S46_DMR Field</th>
              <th align="center">Softwire46-DMR Subfield</ttcol>

          <c>dmr-prefix6-len</c>

          <c>dmr-prefix6-len</c>

          <c>dmr-ipv6-prefix</c>

          <c>dmr-ipv6-prefix</c>
        </texttable>
      </section>

      <section title="OPTION_S46_V4V6BIND Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">dmr-prefix6-len</td>
              <td align="center">dmr-prefix6-len</td>
            </tr>
            <tr>
              <td align="center">dmr-ipv6-prefix</td>
              <td align="center">dmr-ipv6-prefix</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>OPTION_S46_V4V6BIND (92) to Softwire46-V4V6Bind">
        <texttable>
          <ttcol Softwire46-V4V6Bind</name>
        <table align="center">
	  <name>OPTION_S46_V4V6BIND to Softwire46-V4V6Bind Field&nbsp;Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_S46_V4V6BIND Field</ttcol>

          <ttcol Field</th>
              <th align="center">Softwire46-V4V6Bind Name</ttcol>

          <ttcol Name</th>
              <th align="center">TLV Subfield</ttcol>

          <c>ipv4-address</c>

          <c>IPv4-Address</c>

          <c>ipv4-address</c>

          <c>bindprefix6-len</c>

          <c>Bind-IPv6-Prefix</c>

          <c>Prefix-Length</c>

          <c>bind-ipv6-prefix</c>

          <c>Bind-IPv6-Prefix</c>

          <c>bind-ipv6-prefix</c>
        </texttable>
      </section>

      <section title="OPTION_S46_PORTPARAMS Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">ipv4-address</td>
              <td align="center">IPv4-Address</td>
              <td align="center">ipv4-address</td>
            </tr>
            <tr>
              <td align="center">bindprefix6-len</td>
              <td align="center">Bind-IPv6-Prefix</td>
              <td align="center">Prefix-Length</td>
            </tr>
            <tr>
              <td align="center">bind-ipv6-prefix</td>
              <td align="center">Bind-IPv6-Prefix</td>
              <td align="center">bind-ipv6-prefix</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>OPTION_S46_PORTPARAMS (93) to Softwire46-PORTPARAMS Field Mappings">
        <texttable>
          <ttcol Mappings</name>
        <table align="center">
	  <name>OPTION_S46_PORTPARAMS to Softwire46-PORTPARAMS Field&nbsp;Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_S46_PORTPARAMS Field</ttcol>

          <ttcol Field</th>
              <th align="center">Softwire46-PORTPARAMS Name</ttcol>

          <ttcol Name</th>
              <th align="center">TLV Subfield</ttcol>

          <c>offset</c>

          <c>PSID-Offset</c>

          <c>PSID-Offset</c>

          <c>PSID-len</c>

          <c>PSID-Len</c>

          <c>PSID-len</c>

          <c>PSID</c>

          <c>PSID</c>

          <c>PSID</c>
        </texttable>
      </section>

      <section title="OPTION_S46_PRIORITY Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">offset</td>
              <td align="center">PSID-Offset</td>
              <td align="center">PSID-Offset</td>
            </tr>
            <tr>
              <td align="center">PSID-len</td>
              <td align="center">PSID-Len</td>
              <td align="center">PSID-len</td>
            </tr>
            <tr>
              <td align="center">PSID</td>
              <td align="center">PSID</td>
              <td align="center">PSID</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>OPTION_S46_PRIORITY (111) to Softwire46-PORTPARAMS Field Mappings">
        <texttable>
          <ttcol Mappings</name>
        <table align="center">
	  <name>OPTION_S46_PRIORITY to Softwire46-PORTPARAMS Field Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_S46_PRIORITY Field</ttcol>

          <ttcol Field</th>
              <th align="center">Softwire46-Priority Attribute Subfield</ttcol>

          <c>s46-option-code</c>

          <c>Softwire46-option-code</c>
        </texttable>
      </section>

      <section title="OPTION_V6_PREFIX64 Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">s46-option-code</td>
              <td align="center">Softwire46-option-code</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>OPTION_V6_PREFIX64 (113) to Softwire46-Multicast Attribute Field Mappings">
        <texttable>
          <ttcol Mappings</name>
        <table align="center">
	  <name>OPTION_V6_PREFIX64 to Softwire46-Multicast Field Mappings</name>
          <thead>
            <tr>
              <th align="center">OPTION_V6_PREFIX64 Field</ttcol>

          <ttcol Field</th>
              <th align="center">Softwire46-Multicast Attribute TLV
          Name</ttcol>

          <ttcol
          Name</th>
              <th align="center">TLV Subfield</ttcol>

          <c>asm-length</c>

          <c>ASM-Prefix64</c>

          <c>Prefix-Length</c>

          <c>ASM_mPrefix64</c>

          <c>ASM-Prefix64</c>

          <c>asm-prefix64</c>

          <c>ssm-length</c>

          <c>SSM-Prefix64</c>

          <c>Prefix-Length</c>

          <c>SSM_mPrefix64</c>

          <c>SSM-Prefix64</c>

          <c>ssm-prefix64</c>

          <c>unicast-length</c>

          <c>U-Prefix64</c>

          <c>Prefix-Length</c>

          <c>uPrefix64</c>

          <c>U-Prefix64</c>

          <c>u-prefix64</c>
        </texttable> Subfield</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">asm-length</td>
              <td align="center">ASM-Prefix64</td>
              <td align="center">Prefix-Length</td>
            </tr>
            <tr>
              <td align="center">ASM_mPrefix64</td>
              <td align="center">ASM-Prefix64</td>
              <td align="center">asm-prefix64</td>
            </tr>
            <tr>
              <td align="center">ssm-length</td>
              <td align="center">SSM-Prefix64</td>
              <td align="center">Prefix-Length</td>
            </tr>
            <tr>
              <td align="center">SSM_mPrefix64</td>
              <td align="center">SSM-Prefix64</td>
              <td align="center">ssm-prefix64</td>
            </tr>
            <tr>
              <td align="center">unicast-length</td>
              <td align="center">U-Prefix64</td>
              <td align="center">Prefix-Length</td>
            </tr>
            <tr>
              <td align="center">uPrefix64</td>
              <td align="center">U-Prefix64</td>
              <td align="center">u-prefix64</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="Acknowledgements" numbered="false" toc="default">
      <name>Acknowledgements</name>
      <t>The authors would like to thank Peter Lothberg, Wojciech Dec, Ian
      Farrer, Suresh Krishnan, Qian Wang, Wei Meng, Cui Wang, Alan Dekok,
      Stefan Winter, and Yu Tianpeng for their valuable comments regarding this
      document.</t>
      <t>This document was merged with <xref target="I-D.sun-softwire-lw4over6-radext" format="default"/> and <xref target="I-D.wang-radext-multicast-radius-ext" format="default"/>. Thanks to
      everyone who contributed to this document.</t>

      <t>Many thanks to Al Morton, Bernie Volz, Joel Halpern, and Donald
      Eastlake for the review.</t>
    </section>
    <section numbered="false" toc="default">
      <name>Contributors</name>

 <artwork name="" type="" align="left" alt="">
Bing Liu
Huawei Technologies Co., Ltd.
China

Email: leo.liubing@huawei.com</artwork>
 <artwork name="" type="" align="left" alt="">
Peter Deacon
IEA Software, Inc.
United States of America

Email: peterd@iea-software.com</artwork>
 <artwork name="" type="" align="left" alt="">
Qiong Sun
China Telecom
China

Email: sunqiong@ctbri.com.cn</artwork>
 <artwork name="" type="" align="left" alt="">
Qi Sun
Tsinghua University
China

Email: sunqibupt@gmail.com</artwork>
 <artwork name="" type="" align="left" alt="">
Cathy Zhou
Huawei Technologies
China

Email: cathy.zhou@huawei.com</artwork>
 <artwork name="" type="" align="left" alt="">
Tina Tsou
Huawei Technologies (USA)
United States of America

Email: Tina.Tsou.Zouting@huawei.com</artwork>
 <artwork name="" type="" align="left" alt="">
ZiLong Liu
Tsinghua University
China

Email: liuzilong8266@126.com</artwork>
 <artwork name="" type="" align="left" alt="">
Yong Cui
Tsinghua University
China

Email: yong@csnet1.cs.tsinghua.edu.cn</artwork>

    </section>
  </back>
</rfc>