rfc8676.original.v2v3.xml | rfc8676.form.xml | |||
---|---|---|---|---|
<?xml version='1.0' encoding='utf-8'?> | <?xml version='1.0' encoding='utf-8'?> | |||
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | <!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | |||
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" category=" | ||||
std" consensus="yes" number="8676" ipr="trust200902" obsoletes="" updates="" xml | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" submissionType="IETF" | |||
:lang="en" tocInclude="true" symRefs="true" sortRefs="true" version="3"> | category="std" consensus="yes" docName="draft-ietf-softwire-yang-16" number | |||
="8676" ipr="trust200902" | ||||
obsoletes="" updates="" xml:lang="en" tocInclude="true" symRefs="true" | ||||
sortRefs="true" version="3"> | ||||
<!-- xml2rfc v2v3 conversion 2.34.0 --> | <!-- xml2rfc v2v3 conversion 2.34.0 --> | |||
<front> | <front> | |||
<title abbrev="YANG Modules for A+P Softwires">YANG Modules for | <title abbrev="YANG Modules for A+P Softwires">YANG Modules for | |||
IPv4-in-IPv6 Address plus Port (A+P) Softwires</title> | IPv4-in-IPv6 Address plus Port (A&wj;+P) Softwires</title> | |||
<seriesInfo name="RFC" value="8676"/> | <seriesInfo name="RFC" value="8676"/> | |||
<author fullname="Ian Farrer" initials="I." role="editor" surname="Farrer"> | <author fullname="Ian Farrer" initials="I." role="editor" surname="Farrer"> | |||
<organization>Deutsche Telekom AG</organization> | <organization>Deutsche Telekom AG</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>CTO-ATI, Landgrabenweg 151</street> | <street>CTO-ATI, Landgrabenweg 151</street> | |||
<city>Bonn</city> | <city>Bonn</city> | |||
<region>NRW</region> | <region>NRW</region> | |||
<code>53227</code> | <code>53227</code> | |||
<country>Germany</country> | <country>Germany</country> | |||
skipping to change at line 56 ¶ | skipping to change at line 60 ¶ | |||
<keyword>automation</keyword> | <keyword>automation</keyword> | |||
<keyword>IPv6</keyword> | <keyword>IPv6</keyword> | |||
<abstract> | <abstract> | |||
<t>This document defines YANG modules for the configuration and | <t>This document defines YANG modules for the configuration and | |||
operation of IPv4-in-IPv6 softwire Border Relays and Customer Premises | operation of IPv4-in-IPv6 softwire Border Relays and Customer Premises | |||
Equipment for the Lightweight 4over6, Mapping of Address and Port with | Equipment for the Lightweight 4over6, Mapping of Address and Port with | |||
Encapsulation (MAP-E), and Mapping of Address and Port using Translation | Encapsulation (MAP-E), and Mapping of Address and Port using Translation | |||
(MAP-T) softwire mechanisms.</t> | (MAP-T) softwire mechanisms.</t> | |||
</abstract> | </abstract> | |||
</front> | </front> | |||
<!-- [rfced] Please review the type attribute of each sourcecode element | ||||
in the XML file to ensure correctness. See | ||||
https://www.rfc-editor.org/materials/sourcecode-types.txt for the currently | ||||
defined types. | ||||
Also, please review each artwork element. Should any artwork element | ||||
be tagged as sourcecode or another element? | ||||
--> | ||||
<middle> | <middle> | |||
<section anchor="introduction" numbered="true" toc="default"> | <section anchor="introduction" numbered="true" toc="default"> | |||
<name>Introduction</name> | <name>Introduction</name> | |||
<t>The IETF Softwire Working Group has developed several IPv4-in-IPv6 | <t>The IETF Softwire Working Group has developed several IPv4-in-IPv6 | |||
softwire mechanisms to address various deployment contexts and | softwire mechanisms to address various deployment contexts and | |||
constraints. As a companion to the architectural specification | constraints. As a companion to the architectural specification | |||
documents, this document focuses on the provisioning of Address plus | documents, this document focuses on the provisioning of Address plus | |||
Port (A+P) softwire functional elements: Border Routers (BRs) and | Port (A+P) softwire functional elements: Border Routers (BRs) and | |||
<!-- [rfced] We don't typically see CE as an abbreviation for | <!-- [rfced] We don't typically see CE as an abbreviation for | |||
"Customer Premises Equipment". The abbreviations list [1] includes the | "Customer Premises Equipment". | |||
https://www.rfc-editor.org/materials/abbrev.expansion.txt includes the | ||||
following for CE: | following for CE: | |||
- Customer Edge (CE) or | - Customer Edge (CE) or | |||
- Control Element (CE) (RFC 3746) or | - Control Element (CE) (RFC 3746) or | |||
- Congestion Experienced (CE) | - Congestion Experienced (CE) | |||
And it shows the following for CPE: | And it shows the following for CPE: | |||
- Customer Premises Equipment (CPE) | - Customer Premises Equipment (CPE) | |||
Are CE and CPE commonly considered equivalent? If not, may we globally update | Are CE and CPE commonly considered equivalent? If not, may we globally update | |||
the document to use CPE? | the document to use CPE? | |||
[1] https://www.rfc-editor.org/materials/abbrev.expansion.txt | ||||
--> | --> | |||
Customer Premises Equipment (CEs, a.k.a., CPE). The softwire mechanisms | Customer Premises Equipment (CEs, a.k.a., CPE). The softwire mechanisms | |||
covered in this document are Lightweight 4over6 (lw4o6) <xref target="RFC7 596" format="default"/>, Mapping of Address and Port with Encapsulation | covered in this document are Lightweight 4over6 (lw4o6) <xref target="RFC7 596" format="default"/>, Mapping of Address and Port with Encapsulation | |||
(MAP-E) <xref target="RFC7597" format="default"/>, and Mapping of Address and Port | (MAP-E) <xref target="RFC7597" format="default"/>, and Mapping of Address and Port | |||
using Translation (MAP-T) <xref target="RFC7599" format="default"/>.</t> | using Translation (MAP-T) <xref target="RFC7599" format="default"/>.</t> | |||
<t>This document focuses on A+P mechanisms <xref target="RFC6346" format=" default"/>; the reader can refer to <xref target="RFC8513" format="default"/> fo r a YANG module for Dual-Stack Lite (DS-Lite) <xref target="RFC6333" format="def ault"/>.</t> | <t>This document focuses on A+P mechanisms <xref target="RFC6346" format=" default"/>; the reader can refer to <xref target="RFC8513" format="default"/> fo r a YANG module for Dual-Stack Lite (DS-Lite) <xref target="RFC6333" format="def ault"/>.</t> | |||
<t>This document defines YANG modules <xref target="RFC7950" format="defau lt"/> | <t>This document defines YANG modules <xref target="RFC7950" format="defau lt"/> | |||
that can be used to configure and manage A+P softwire elements using the | that can be used to configure and manage A+P softwire elements using the | |||
NETCONF <xref target="RFC6241" format="default"/> or RESTCONF <xref target ="RFC8040" format="default"/> protocols for:</t> | NETCONF <xref target="RFC6241" format="default"/> or RESTCONF <xref target ="RFC8040" format="default"/> protocols for:</t> | |||
skipping to change at line 120 ¶ | skipping to change at line 131 ¶ | |||
instances, or MAP-T instances) may have its own configuration and | instances, or MAP-T instances) may have its own configuration and | |||
parameters. The term 'algo-instance' is used to denote both MAP-E and | parameters. The term 'algo-instance' is used to denote both MAP-E and | |||
MAP-T instances.</t> | MAP-T instances.</t> | |||
</section> | </section> | |||
<section anchor="overview" numbered="true" toc="default"> | <section anchor="overview" numbered="true" toc="default"> | |||
<name>Overview of the Modules</name> | <name>Overview of the Modules</name> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Overall Structure</name> | <name>Overall Structure</name> | |||
<t>The document defines the following two YANG modules for the | <t>The document defines the following two YANG modules for the | |||
configuration and monitoring of softwire functional elements:</t> | configuration and monitoring of softwire functional elements:</t> | |||
<dl newline="false" spacing="normal" indent="22"> | <ul empty="true"><li> | |||
<dl newline="true" spacing="normal" indent="3"> | ||||
<dt>ietf-softwire-ce</dt> | <dt>ietf-softwire-ce</dt> | |||
<dd>Provides configuration and | <dd>Provides configuration and | |||
monitoring for softwire CE element. This module is defined as | monitoring for softwire CE element. This module is defined as | |||
augments to the interface YANG module <xref target="RFC8343" format= "default"/>.</dd> | augments to the interface YANG module <xref target="RFC8343" format= "default"/>.</dd> | |||
<dt>ietf-softwire-br</dt> | <dt>ietf-softwire-br</dt> | |||
<dd>Provides configuration and | <dd>Provides configuration and | |||
monitoring for softwire BR element.</dd> | monitoring for softwire BR element.</dd> | |||
</dl> | </dl> | |||
</li> | ||||
</ul> | ||||
<t>In addition, the following module is defined:</t> | <t>In addition, the following module is defined:</t> | |||
<dl newline="false" spacing="normal" indent="22"> | <ul empty="true"><li> | |||
<dl newline="true" spacing="normal" indent="3"> | ||||
<dt>ietf-softwire-common</dt> | <dt>ietf-softwire-common</dt> | |||
<dd>Contains groups of common | <dd>Contains groups of common | |||
functions that are imported into the CE and BR modules.</dd> | functions that are imported into the CE and BR modules.</dd> | |||
</dl> | </dl> | |||
</li> | ||||
</ul> | ||||
<t>This approach has been taken so that the various modules can be | <t>This approach has been taken so that the various modules can be | |||
easily extended to support additional softwire mechanisms, if | easily extended to support additional softwire mechanisms, if | |||
required.</t> | required.</t> | |||
<t>Within the BR and CE modules, the YANG "feature" statement is used | <t>Within the BR and CE modules, the YANG "feature" statement is used | |||
to distinguish which of the different softwire mechanism(s) is | to distinguish which of the different softwire mechanism(s) is | |||
relevant for a specific element's configuration. For each module, a | relevant for a specific element's configuration. For each module, a | |||
choice statement 'ce-type' is included for either 'binding' or | choice statement 'ce-type' is included for either 'binding' or | |||
'algorithm'. 'Binding' is used for configuring Lightweight 4over6, | 'algorithm'. 'Binding' is used for configuring Lightweight 4over6, | |||
whereas 'algorithm' is used for configuring MAP-T or MAP-E.</t> | whereas 'algorithm' is used for configuring MAP-T or MAP-E.</t> | |||
<t>In the 'algo-instances' container, a choice statement 'data-plane' | <t>In the 'algo-instances' container, a choice statement 'data-plane' | |||
skipping to change at line 176 ¶ | skipping to change at line 193 ¶ | |||
<td align="center">encapsulation</td> | <td align="center">encapsulation</td> | |||
</tr> | </tr> | |||
<tr> | <tr> | |||
<td align="center">MAP-T</td> | <td align="center">MAP-T</td> | |||
<td align="center">algorithm</td> | <td align="center">algorithm</td> | |||
<td align="center">translation</td> | <td align="center">translation</td> | |||
</tr> | </tr> | |||
</tbody> | </tbody> | |||
</table> | </table> | |||
<t>NETCONF notifications are also included.</t> | <t>NETCONF notifications are also included.</t> | |||
<ul empty="true" spacing="normal"> | <aside><t>Earlier draft versions of this specification combined the | |||
<li>Note: Earlier draft versions of this specification combined the | ||||
softwire mechanisms by their associated technologies rather than | softwire mechanisms by their associated technologies rather than | |||
their function in the architecture. As the document was revised, | their function in the architecture. As the document was revised, | |||
it became apparent that dividing the modules by their role in the | it became apparent that dividing the modules by their role in the | |||
architecture (CE or BR) was a better approach as this follows the | architecture (CE or BR) was a better approach as this follows the | |||
intended function and existing implementation approaches more | intended function and existing implementation approaches more | |||
closely.</li> | closely.</t> | |||
</ul> | </aside> | |||
</section> | </section> | |||
<!--[rfced] May we update this section title for clarity? | <!--[rfced] May we update this section title for clarity? | |||
Original: | Original: | |||
Additional Components Configuration | Additional Components Configuration | |||
Perhaps A: | Perhaps A: | |||
Configuration of Additional Components | Configuration of Additional Components | |||
Perhaps B: | Perhaps B: | |||
Additional Configuration for Components | Additional Configuration for Components | |||
--> | --> | |||
skipping to change at line 244 ¶ | skipping to change at line 260 ¶ | |||
<t>This module augments "ietf-interfaces", defined in <xref target="RFC8 343" format="default"/> with an entry for the softwire. This entry | <t>This module augments "ietf-interfaces", defined in <xref target="RFC8 343" format="default"/> with an entry for the softwire. This entry | |||
can be referenced to configure IPv4 forwarding features for the | can be referenced to configure IPv4 forwarding features for the | |||
element. This entry is added only if tunnel type (<xref target="iana" fo rmat="default"/>) is set to 'aplusp'.</t> | element. This entry is added only if tunnel type (<xref target="iana" fo rmat="default"/>) is set to 'aplusp'.</t> | |||
<t><xref target="tree-diagram-ce" format="default"/> shows the tree stru cture of | <t><xref target="tree-diagram-ce" format="default"/> shows the tree stru cture of | |||
the softwire CE YANG module:</t> | the softwire CE YANG module:</t> | |||
<!--[rfced] Please confirm the use of "rw enable" as opposed to "rw | <!--[rfced] Please confirm the use of "rw enable" as opposed to "rw | |||
enabled" in the tree diagrams in Sections 4.1 and 5.1. See also, | enabled" in the tree diagrams in Sections 4.1 and 5.1. See also, | |||
leaf enable.--> | leaf enable.--> | |||
<figure anchor="tree-diagram-ce"> | <figure anchor="tree-diagram-ce"> | |||
<name>Softwire CE YANG Tree Diagram</name> | <name>Softwire CE YANG Tree Diagram</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="yangtree"><![CDATA[ | |||
module: ietf-softwire-ce | module: ietf-softwire-ce | |||
augment /if:interfaces/if:interface: | augment /if:interfaces/if:interface: | |||
+--rw softwire-payload-mtu? uint16 | +--rw softwire-payload-mtu? uint16 | |||
+--rw softwire-path-mru? uint16 | +--rw softwire-path-mru? uint16 | |||
+--rw (ce-type)? | +--rw (ce-type)? | |||
+--:(binding) {binding-mode}? | +--:(binding) {binding-mode}? | |||
| +--rw binding-ipv6info? union | | +--rw binding-ipv6info? union | |||
| +--rw br-ipv6-addr inet:ipv6-address | | +--rw br-ipv6-addr inet:ipv6-address | |||
+--:(algo) {map-e or map-t}? | +--:(algo) {map-e or map-t}? | |||
+--rw algo-instances | +--rw algo-instances | |||
skipping to change at line 315 ¶ | skipping to change at line 331 ¶ | |||
+--ro out-icmpv4-error-bytes? | +--ro out-icmpv4-error-bytes? | |||
| yang:zero-based-counter64 | | yang:zero-based-counter64 | |||
+--ro out-icmpv6-error-packets? | +--ro out-icmpv6-error-packets? | |||
| yang:zero-based-counter64 | | yang:zero-based-counter64 | |||
+--ro out-icmpv6-error-bytes? | +--ro out-icmpv6-error-bytes? | |||
yang:zero-based-counter64 | yang:zero-based-counter64 | |||
notifications: | notifications: | |||
+---n softwire-ce-event {binding-mode}? | +---n softwire-ce-event {binding-mode}? | |||
+--ro ce-binding-ipv6-addr-change inet:ipv6-address | +--ro ce-binding-ipv6-addr-change inet:ipv6-address | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section anchor="tree-diagram-ce-desc" numbered="true" toc="default"> | <section anchor="tree-diagram-ce-desc" numbered="true" toc="default"> | |||
<name>Softwire CE Tree Diagram Description</name> | <name>Softwire CE Tree Diagram Description</name> | |||
<t>Additional information related to the operation of a CE element is | <t>Additional information related to the operation of a CE element is | |||
provided below:</t> | provided below:</t> | |||
<!--[rfced] We have moved the expansion of MTU to the first use and expa nded | <!--[rfced] We have moved the expansion of MTU to the first use and expa nded | |||
it as "Maximum Transmission Unit" (as opposed to Maximum Transit Unit). | it as "Maximum Transmission Unit" (as opposed to Maximum Transit Unit). | |||
Please let us know if any corrections are required. | Please let us know if any corrections are required. | |||
skipping to change at line 331 ¶ | skipping to change at line 347 ¶ | |||
provided below:</t> | provided below:</t> | |||
<!--[rfced] We have moved the expansion of MTU to the first use and expa nded | <!--[rfced] We have moved the expansion of MTU to the first use and expa nded | |||
it as "Maximum Transmission Unit" (as opposed to Maximum Transit Unit). | it as "Maximum Transmission Unit" (as opposed to Maximum Transit Unit). | |||
Please let us know if any corrections are required. | Please let us know if any corrections are required. | |||
Original: | Original: | |||
o softwire-payload-mtu: optionally used to set the IPv4 MTU for the | o softwire-payload-mtu: optionally used to set the IPv4 MTU for the | |||
softwire. Needed if the softwire implementation is unable to | softwire. Needed if the softwire implementation is unable to | |||
correctly calculate the correct IPv4 Maximum Transit Unit (MTU) | correctly calculate the correct IPv4 Maximum Transit Unit (MTU) | |||
size automatically. | size automatically. | |||
--> | --> | |||
<ul spacing="normal"> | <ul empty="true"><li> | |||
<li>softwire-payload-mtu: optionally used to set the IPv4 Maximum Tran | <dl newline="true" indent="3"> | |||
smission Unit (MTU) for | <dt>softwire-payload-mtu:</dt><dd>optionally used to set the IPv4 Maxi | |||
mum Transmission Unit (MTU) for | ||||
the softwire. Needed if the softwire implementation is unable to | the softwire. Needed if the softwire implementation is unable to | |||
correctly calculate the correct IPv4 MTU | correctly calculate the correct IPv4 MTU | |||
size automatically.</li> | size automatically.</dd> | |||
<li>softwire-path-mru: optionally used to set the maximum IPv6 | <dt>softwire-path-mru:</dt><dd>optionally used to set the maximum IPv6 | |||
softwire packet size that can be received, including the | softwire packet size that can be received, including the | |||
encapsulation/translation overhead. Needed if the softwire | encapsulation/translation overhead. Needed if the softwire | |||
implementation is unable to correctly calculate the correct IPv4 | implementation is unable to correctly calculate the correct IPv4 | |||
payload Maximum Receive Unit (MRU) size automatically (see Section | payload Maximum Receive Unit (MRU) size automatically (see <xref tar | |||
3.2 of <xref target="RFC4213" format="default"/>).</li> | get="RFC4213" sectionFormat="of" section="3.2" format="default"/>).</dd> | |||
<li>ce-type: provides a choice statement allowing the binding or | <dt>ce-type:</dt><dd>provides a choice statement allowing the binding | |||
algorithmic softwire mechanisms to be selected.</li> | or | |||
</ul> | algorithmic softwire mechanisms to be selected.</dd> | |||
</dl> | ||||
</li> | ||||
</ul> | ||||
<t>Further details relevant to binding softwire elements are as follows: </t> | <t>Further details relevant to binding softwire elements are as follows: </t> | |||
<ul spacing="normal"> | <ul empty="true"><li> | |||
<li>binding-ipv6info: used to set the IPv6 binding prefix type to | <dl spacing="normal" newline="true"> | |||
<dt>binding-ipv6info:</dt><dd>used to set the IPv6 binding prefix type | ||||
to | ||||
identify which IPv6 address to use as the tunnel source. It can be | identify which IPv6 address to use as the tunnel source. It can be | |||
'ipv6-prefix' or 'ipv6-address'.</li> | 'ipv6-prefix' or 'ipv6-address'.</dd> | |||
<li>br-ipv6-addr: sets the IPv6 address of the remote BR.</li> | <dt>br-ipv6-addr:</dt><dd>sets the IPv6 address of the remote BR.</dd> | |||
</ul> | </dl> | |||
</li> | ||||
</ul> | ||||
<t>Additional details relevant to some of the important algorithmic | <t>Additional details relevant to some of the important algorithmic | |||
elements are provided below:</t> | elements are provided below:</t> | |||
<ul spacing="normal"> | <ul empty="true"><li> | |||
<li>algo-versioning: optionally used to associate a version number | <dl spacing="normal" newline="true"> | |||
<dt>algo-versioning:</dt><dd>optionally used to associate a version nu | ||||
mber | ||||
and/or timestamp to the algorithm. This can be used for | and/or timestamp to the algorithm. This can be used for | |||
logging/data retention purposes <xref target="RFC7422" format="defau lt"/>. | logging/data retention purposes <xref target="RFC7422" format="defau lt"/>. | |||
The version number is selected to uniquely identify the algorithm | The version number is selected to uniquely identify the algorithm | |||
configuration and a new value written whenever a change is made to | configuration and a new value written whenever a change is made to | |||
the algorithm or a new algo-instance is created.</li> | the algorithm or a new algo-instance is created.</dd> | |||
<li>forwarding: specifies whether the rule can be used as a Forwarding | <dt>forwarding:</dt><dd>specifies whether the rule can be used as a Fo | |||
rwarding | ||||
Mapping Rule (FMR). If not set, this rule is a Basic Mapping Rule | Mapping Rule (FMR). If not set, this rule is a Basic Mapping Rule | |||
(BMR) only and must not be used for forwarding. Refer to Section | (BMR) only and must not be used for forwarding. Refer to <xref targe | |||
4.1 of <xref target="RFC7598" format="default"/>.</li> | t="RFC7598" format="default" sectionFormat="of" section="4.1"/>.</dd> | |||
<li>ea-len: used to set the length of the Embedded-Address (EA), | <dt>ea-len:</dt><dd>used to set the length of the Embedded-Address (EA | |||
which is defined in the mapping rule for a MAP domain.</li> | ), | |||
<li>data-plane: provides a choice statement for either | which is defined in the mapping rule for a MAP domain.</dd> | |||
encapsulation (MAP-E) or translation (MAP-T).</li> | <dt>data-plane:</dt><dd>provides a choice statement for either | |||
<li>br-ipv6-addr: defines the IPv6 address of the BR. This | encapsulation (MAP-E) or translation (MAP-T).</dd> | |||
information is valid for MAP-E.</li> | <dt>br-ipv6-addr:</dt><dd>defines the IPv6 address of the BR. This | |||
<li>dmr-ipv6-prefix: defines the Default Mapping Rule (DMR) IPv6 | information is valid for MAP-E.</dd> | |||
prefix of the BR. This information is valid for MAP-T.</li> | <dt>dmr-ipv6-prefix:</dt><dd>defines the Default Mapping Rule (DMR) IP | |||
</ul> | v6 | |||
prefix of the BR. This information is valid for MAP-T.</dd> | ||||
</dl> | ||||
</li> | ||||
</ul> | ||||
<t>Additional information on the notification node is listed | <t>Additional information on the notification node is listed | |||
below:</t> | below:</t> | |||
<ul spacing="normal"> | <ul empty="true"><li> | |||
<li>ce-binding-ipv6-addr-change: if the CE's binding IPv6 address | <dl spacing="normal" newline="true"> | |||
changes for any reason, the NETCONF client will be notified.</li> | <dt>ce-binding-ipv6-addr-change:</dt><dd>if the CE's binding IPv6 addr | |||
</ul> | ess | |||
changes for any reason, the NETCONF client will be notified.</dd> | ||||
</dl> | ||||
</li> | ||||
</ul> | ||||
</section> | </section> | |||
</section> | </section> | |||
<section anchor="br-tree-diagram" numbered="true" toc="default"> | <section anchor="br-tree-diagram" numbered="true" toc="default"> | |||
<name>Softwire BR YANG Tree Diagram</name> | <name>Softwire BR YANG Tree Diagram</name> | |||
<section anchor="br-tree-diagram-com" numbered="true" toc="default"> | <section anchor="br-tree-diagram-com" numbered="true" toc="default"> | |||
<name>BR Tree Diagram</name> | <name>BR Tree Diagram</name> | |||
<t>The BR YANG module provides configuration and monitoring for all of | <t>The BR YANG module provides configuration and monitoring for all of | |||
the softwire mechanisms covered in this document (i.e., Lightweight | the softwire mechanisms covered in this document (i.e., Lightweight | |||
4over6, MAP-E, and MAP-T).</t> | 4over6, MAP-E, and MAP-T).</t> | |||
<t><xref target="br-structure" format="default"/> provides the tree stru cture of | <t><xref target="br-structure" format="default"/> provides the tree stru cture of | |||
this module:</t> | this module:</t> | |||
<!--[rfced] Please review the alginment of the tree diagram in Section 5 .1. | <!--[rfced] Please review the alginment of the tree diagram in Section 5 .1. | |||
We believe the text should line up under the "d" in "module" per the | We believe the text should line up under the "d" in "module" per the | |||
guidance of Section 2 of RFC 8340. --> | guidance of Section 2 of RFC 8340. --> | |||
<figure anchor="br-structure"> | <figure anchor="br-structure"> | |||
<name>Softwire BR YANG Tree</name> | <name>Softwire BR YANG Tree</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="yangtree"><![CDATA[ | |||
module: ietf-softwire-br | module: ietf-softwire-br | |||
+--rw br-instances | +--rw br-instances | |||
+--rw (br-type)? | +--rw (br-type)? | |||
+--:(binding) {binding-mode}? | +--:(binding) {binding-mode}? | |||
| +--rw binding | | +--rw binding | |||
| +--rw bind-instance* [name] | | +--rw bind-instance* [name] | |||
| +--rw name string | | +--rw name string | |||
| +--rw binding-table-versioning | | +--rw binding-table-versioning | |||
| | +--rw version? uint64 | | | +--rw version? uint64 | |||
| | +--rw date? yang:date-and-time | | | +--rw date? yang:date-and-time | |||
skipping to change at line 565 ¶ | skipping to change at line 590 ¶ | |||
+---n softwire-algorithm-instance-event {map-e, map-t}? | +---n softwire-algorithm-instance-event {map-e, map-t}? | |||
+--ro algo-name | +--ro algo-name | |||
| -> /br-instances/algorithm/algo-instance/name | | -> /br-instances/algorithm/algo-instance/name | |||
+--ro invalid-entry-id* | +--ro invalid-entry-id* | |||
| -> /br-instances/algorithm/algo-instance/name | | -> /br-instances/algorithm/algo-instance/name | |||
+--ro added-entry* | +--ro added-entry* | |||
| -> /br-instances/algorithm/algo-instance/name | | -> /br-instances/algorithm/algo-instance/name | |||
+--ro modified-entry* | +--ro modified-entry* | |||
-> /br-instances/algorithm/algo-instance/name | -> /br-instances/algorithm/algo-instance/name | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section anchor="tree-diagram-br-desc" numbered="true" toc="default"> | <section anchor="tree-diagram-br-desc" numbered="true" toc="default"> | |||
<name>Softwire BR Tree Diagram Description</name> | <name>Softwire BR Tree Diagram Description</name> | |||
<t>The descriptions for leaves that are common with the CE module are | <t>The descriptions for leaves that are common with the CE module are | |||
provided in <xref target="tree-diagram-ce-desc" format="default"/>. Desc riptions | provided in <xref target="tree-diagram-ce-desc" format="default"/>. Desc riptions | |||
for additional elements are provided below:</t> | for additional elements are provided below:</t> | |||
<ul spacing="normal"> | <ul empty="true" spacing="normal"><li> | |||
<li>binding-table-versioning: optionally used to associate a | <dl newline="true" indent="3"><dt>binding-table-versioning:</dt><dd>optio | |||
nally used to associate a | ||||
version number and/or timestamp to the binding table. This can be | version number and/or timestamp to the binding table. This can be | |||
used for logging or data retention purposes <xref target="RFC7422" f ormat="default"/>. The version number is selected to | used for logging or data retention purposes <xref target="RFC7422" f ormat="default"/>. The version number is selected to | |||
uniquely identify the binding table configuration and a new | uniquely identify the binding table configuration and a new | |||
timestamp value written whenever a change is made to the contents | timestamp value written whenever a change is made to the contents | |||
of the binding table or a new binding table list is created.</li> | of the binding table or a new binding table list is created.</dd> | |||
<li>binding-entry: used to define the binding relationship between | <dt>binding-entry:</dt><dd>used to define the binding relationship bet | |||
ween | ||||
3-tuples {lwB4's IPv6 address/prefix, the allocated IPv4 address, | 3-tuples {lwB4's IPv6 address/prefix, the allocated IPv4 address, | |||
restricted port-set}. For detailed information, please refer t o | restricted port-set}. For detailed information, please refer t o | |||
<xref target="RFC7596" format="default"/>.</li> | <xref target="RFC7596" format="default"/>.</dd> | |||
<li>softwire-num-max: used to set the maximum number of softwire | <dt>softwire-num-max:</dt><dd>used to set the maximum number of softwi | |||
re | ||||
binding rules that can be created on the lw4o6 element | binding rules that can be created on the lw4o6 element | |||
simultaneously. This parameter must not be set to zero because this | simultaneously. This parameter must not be set to zero because this | |||
is equivalent to disabling the BR instance.</li> | is equivalent to disabling the BR instance.</dd> | |||
<li>active-softwire-num: holds the number of softwires currently | <dt>active-softwire-num:</dt><dd>holds the number of softwires current | |||
provisioned on the BR element.</li> | ly | |||
provisioned on the BR element.</dd> | ||||
<!--- | <!--- | |||
<t>active (ro): used to show the status of particular | <t>active (ro): used to show the status of particular | |||
binding-entry.</t> | binding-entry.</t> | |||
IF - Commented out as it isn't in the model any more. I forget what the | IF - Commented out as it isn't in the model any more. I forget what the | |||
intended use for this was. Should it be put back in the model, or can | intended use for this was. Should it be put back in the model, or can | |||
this descrtiption be removed? | this descrtiption be removed? | |||
--> | --> | |||
</dl></li> | ||||
</ul> | </ul> | |||
<t>Additional information on some of the important notification nodes | <t>Additional information on some of the important notification nodes | |||
is listed below:</t> | is listed below:</t> | |||
<ul spacing="normal"> | <ul empty="true" spacing="normal"><li> | |||
<li>invalid-entry, added-entry, modified-entry: used to notify the | <dl newline="true" indent="3"><dt>invalid-entry, added-entry, modified-entry:</d | |||
t><dd>used to notify the | ||||
NETCONF client that a specific binding entry or MAP rule has | NETCONF client that a specific binding entry or MAP rule has | |||
expired, been invalidated, added, or modified.</li> | expired, been invalidated, added, or modified.</dd> | |||
</dl></li> | ||||
</ul> | </ul> | |||
</section> | </section> | |||
</section> | </section> | |||
<section anchor="ce-yang-module" numbered="true" toc="default"> | <section anchor="ce-yang-module" numbered="true" toc="default"> | |||
<name>Softwire CE YANG Module</name> | <name>Softwire CE YANG Module</name> | |||
<t>This module imports the modules defined in <xref target="RFC6991" forma | <t>This module imports the modules defined in <xref target="RFC6991" | |||
t="default"/>, <xref target="RFC8343" format="default"/>, and <xref target="RFC7 | format="default"/>, <xref target="RFC8343" format="default"/>, and <xref | |||
224" format="default"/>. It also imports the 'ietf-softwire-common' and | target="RFC7224" format="default"/>. It also imports the | |||
'iana-tunnel-type' modules <xref target="RFC8675" format="default"/>.</t> | 'ietf-softwire-common' and 'iana-tunnel-type' modules <xref target="RFC867 | |||
<sourcecode name="" type="" markers="true"><![CDATA[file "ietf-softwire-ce | 5" | |||
@2019-01-11.yang" | format="default"/>.</t> | |||
<!-- [rfced] Please note that the yang modules have been updated per the | ||||
formatting feature of pyang. Each of the modules parse successfully. | ||||
However, we get the following warning for ietf-softwire-ce.yang; please let us | ||||
know if any updates are needed. | ||||
ietf-softwire-ce.yang:20: warning: imported module "iana-tunnel-type" not use | ||||
d | ||||
--> | ||||
<sourcecode name="ietf-softwire-ce@2019-10-28.yang" type="yang" markers="t | ||||
rue"><![CDATA[ | ||||
module ietf-softwire-ce { | module ietf-softwire-ce { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-softwire-ce"; | namespace "urn:ietf:params:xml:ns:yang:ietf-softwire-ce"; | |||
prefix softwire-ce; | prefix softwire-ce; | |||
import ietf-inet-types { | import ietf-inet-types { | |||
prefix inet; | prefix inet; | |||
reference "RFC 6991: Common YANG Data Types, Section 4"; | reference | |||
"RFC 6991: Common YANG Data Types, Section 4"; | ||||
} | } | |||
import ietf-interfaces { | import ietf-interfaces { | |||
prefix if; | prefix if; | |||
reference "RFC 8343: A YANG Data Model for Interface Management"; | reference | |||
"RFC 8343: A YANG Data Model for Interface Management"; | ||||
} | } | |||
import ietf-softwire-common { | import ietf-softwire-common { | |||
prefix softwire-common; | prefix softwire-common; | |||
reference | reference | |||
"RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | "RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | |||
Softwires"; | Softwires"; | |||
} | } | |||
import iana-tunnel-type { | import iana-tunnel-type { | |||
prefix iana-tunnel-type; | prefix iana-tunnel-type; | |||
reference | reference | |||
"RFC 8675: Tunnel Interface Types YANG Module"; | "RFC 8675: Tunnel Interface Types YANG Module"; | |||
} | } | |||
organization | organization | |||
"IETF Softwire Working Group"; | "IETF Softwire Working Group"; | |||
contact | contact | |||
skipping to change at line 682 ¶ | skipping to change at line 721 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC 8676; see | This version of this YANG module is part of RFC 8676; see | |||
the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
revision 2019-01-11 { | revision 2019-10-28 { | |||
description | description | |||
"Initial revision"; | "Initial revision"; | |||
reference | reference | |||
"RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | "RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | |||
Softwires"; | (A+P) Softwires"; | |||
} | } | |||
/* | /* | |||
* Features | * Features | |||
*/ | */ | |||
feature binding-mode { | feature binding-mode { | |||
description | description | |||
"Binding is used for configuring the Lightweight 4over6 mechanism. | "Binding is used for configuring the Lightweight 4over6 mechanism. | |||
skipping to change at line 713 ¶ | skipping to change at line 752 ¶ | |||
This is accomplished by maintaining state for each softwire | This is accomplished by maintaining state for each softwire | |||
(per-subscriber state) in the central Border Relay (BR) and using | (per-subscriber state) in the central Border Relay (BR) and using | |||
a hub-and-spoke forwarding architecture. In order to delegate | a hub-and-spoke forwarding architecture. In order to delegate | |||
the NAPT function and achieve IPv4 address sharing, | the NAPT function and achieve IPv4 address sharing, | |||
port-restricted IPv4 addresses needs to be allocated to CEs. | port-restricted IPv4 addresses needs to be allocated to CEs. | |||
This feature indicates that the network element can function as | This feature indicates that the network element can function as | |||
one or more binding-based softwire instances."; | one or more binding-based softwire instances."; | |||
reference | reference | |||
"RFC 7596: Lightweight 4over6: An Extension to the Dual-Stack Lite | "RFC 7596: Lightweight 4over6: An Extension to the Dual-Stack Lite | |||
Architecture | Architecture | |||
RFC 7597: Mapping of Address and Port with Encapsulation (MAP-E) | RFC 7597: Mapping of Address and Port with Encapsulation (MAP-E) | |||
RFC 7599: Mapping of Address and Port using Translation (MAP-T)"; | RFC 7599: Mapping of Address and Port using Translation (MAP-T)"; | |||
} | } | |||
feature map-e { | feature map-e { | |||
description | description | |||
"MAP-E is an IPv6 transition mechanism for transporting IPv4 | "MAP-E is an IPv6 transition mechanism for transporting IPv4 | |||
packets across an IPv6 network using IP encapsulation. MAP-E | packets across an IPv6 network using IP encapsulation. MAP-E | |||
allows for a reduction of the amount of centralized state using | allows for a reduction of the amount of centralized state using | |||
rules to express IPv4/IPv6 address mappings. This introduces an | rules to express IPv4/IPv6 address mappings. This introduces an | |||
skipping to change at line 770 ¶ | skipping to change at line 809 ¶ | |||
description | description | |||
"The IPv6 information for a binding entry. | "The IPv6 information for a binding entry. | |||
When the IPv6 prefix type is used, | When the IPv6 prefix type is used, | |||
the IPv6 source address of the CE is constructed | the IPv6 source address of the CE is constructed | |||
according to the description in RFC 7596. | according to the description in RFC 7596. | |||
If the IPv6 address type is used, the CE can use | If the IPv6 address type is used, the CE can use | |||
any valid /128 address from a prefix assigned to | any valid /128 address from a prefix assigned to | |||
the CE."; | the CE."; | |||
reference "RFC 7596: Lightweight 4over6: An Extension | reference | |||
to the Dual-Stack Lite Architecture, Section 5.1"; | "RFC 7596: Lightweight 4over6: An Extension | |||
to the Dual-Stack Lite Architecture, Section 5.1"; | ||||
} | } | |||
leaf br-ipv6-addr { | leaf br-ipv6-addr { | |||
type inet:ipv6-address; | type inet:ipv6-address; | |||
mandatory true; | mandatory true; | |||
description | description | |||
"The IPv6 address of the binding BR"; | "The IPv6 address of the binding BR"; | |||
} | } | |||
} | } | |||
// configuration and stateful parameters for softwire CE interface | // configuration and stateful parameters for softwire CE interface | |||
skipping to change at line 801 ¶ | skipping to change at line 841 ¶ | |||
"The payload IPv4 MTU for the softwire tunnel"; | "The payload IPv4 MTU for the softwire tunnel"; | |||
} | } | |||
leaf softwire-path-mru { | leaf softwire-path-mru { | |||
type uint16; | type uint16; | |||
units "bytes"; | units "bytes"; | |||
description | description | |||
"The path MRU for the softwire (payload + encapsulation | "The path MRU for the softwire (payload + encapsulation | |||
overhead)"; | overhead)"; | |||
reference | reference | |||
"RFC 4213: Basic Transition Mechanisms for IPv6 Hosts and | "RFC 4213: Basic Transition Mechanisms for IPv6 Hosts and | |||
Routers"; | Routers"; | |||
} | } | |||
choice ce-type { | choice ce-type { | |||
description | description | |||
"Sets the softwire CE mechanism"; | "Sets the softwire CE mechanism"; | |||
case binding { | case binding { | |||
if-feature "binding-mode"; | if-feature "binding-mode"; | |||
description | description | |||
"CE binding configuration"; | "CE binding configuration"; | |||
uses binding-entry; | uses binding-entry; | |||
} | } | |||
skipping to change at line 870 ¶ | skipping to change at line 910 ¶ | |||
address changes for any reason."; | address changes for any reason."; | |||
} | } | |||
} | } | |||
} | } | |||
]]></sourcecode> | ]]></sourcecode> | |||
</section> | </section> | |||
<section anchor="br-yang-module" numbered="true" toc="default"> | <section anchor="br-yang-module" numbered="true" toc="default"> | |||
<name>BR Softwire YANG Module</name> | <name>BR Softwire YANG Module</name> | |||
<t>This module imports typedefs from <xref target="RFC6991" format="defaul t"/>. It | <t>This module imports typedefs from <xref target="RFC6991" format="defaul t"/>. It | |||
also imports the 'ietf-softwire-common' module.</t> | also imports the 'ietf-softwire-common' module.</t> | |||
<sourcecode name="" type="" markers="true"><![CDATA[file "ietf-softwire-br | <sourcecode name="ietf-softwire-br@2019-10-28.yang" type="yang" markers="t | |||
@2019-01-11.yang" | rue"><![CDATA[ | |||
module ietf-softwire-br { | module ietf-softwire-br { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-softwire-br"; | namespace "urn:ietf:params:xml:ns:yang:ietf-softwire-br"; | |||
prefix softwire-br; | prefix softwire-br; | |||
import ietf-inet-types { | import ietf-inet-types { | |||
prefix inet; | prefix inet; | |||
reference "RFC 6991: Common YANG Data Types, Section 4"; | reference | |||
"RFC 6991: Common YANG Data Types, Section 4"; | ||||
} | } | |||
import ietf-yang-types { | import ietf-yang-types { | |||
prefix yang; | prefix yang; | |||
reference "RFC 6991: Common YANG Data Types, Section 3"; | reference | |||
"RFC 6991: Common YANG Data Types, Section 3"; | ||||
} | } | |||
import ietf-softwire-common { | import ietf-softwire-common { | |||
prefix softwire-common; | prefix softwire-common; | |||
reference | reference | |||
"RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | "RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | |||
Softwires"; | (A+P) Softwires"; | |||
} | } | |||
organization | organization | |||
"IETF Softwire Working Group"; | "IETF Softwire Working Group"; | |||
contact | contact | |||
"WG Web: <https://datatracker.ietf.org/wg/softwire/> | "WG Web: <https://datatracker.ietf.org/wg/softwire/> | |||
WG List: <mailto:softwire@ietf.org> | WG List: <mailto:softwire@ietf.org> | |||
Author: Qi Sun | Author: Qi Sun | |||
<mailto:sunqi.ietf@gmail.com> | <mailto:sunqi.ietf@gmail.com> | |||
skipping to change at line 937 ¶ | skipping to change at line 978 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC 8676; see | This version of this YANG module is part of RFC 8676; see | |||
the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
revision 2019-01-11 { | revision 2019-10-28 { | |||
description | description | |||
"Initial revision"; | "Initial revision"; | |||
reference | reference | |||
"RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | "RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | |||
Softwires"; | (A+P) Softwires"; | |||
} | } | |||
/* | /* | |||
* Groupings | * Groupings | |||
*/ | */ | |||
grouping port-set { | grouping port-set { | |||
description | description | |||
"Describes a set of Layer 4 port numbers. | "Describes a set of Layer 4 port numbers. | |||
skipping to change at line 1009 ¶ | skipping to change at line 1050 ¶ | |||
description | description | |||
"The IPv6 information for a CE binding entry. | "The IPv6 information for a CE binding entry. | |||
When the IPv6 prefix type is used, | When the IPv6 prefix type is used, | |||
the IPv6 source address of the CE is constructed | the IPv6 source address of the CE is constructed | |||
according to the description in RFC 7596; | according to the description in RFC 7596; | |||
if the IPv6 address type is used, the CE can use | if the IPv6 address type is used, the CE can use | |||
any valid /128 address from a prefix assigned to | any valid /128 address from a prefix assigned to | |||
the CE."; | the CE."; | |||
reference | reference | |||
"RFC 7596: Lightweight 4over6: An Extension to the Dual-Stack | "RFC 7596: Lightweight 4over6: An Extension to the Dual-Stack | |||
Lite Architecture"; | Lite Architecture"; | |||
} | } | |||
leaf binding-ipv4-addr { | leaf binding-ipv4-addr { | |||
type inet:ipv4-address; | type inet:ipv4-address; | |||
description | description | |||
"The IPv4 address assigned to the binding CE, | "The IPv4 address assigned to the binding CE, | |||
which is used as the IPv4 external address | which is used as the IPv4 external address | |||
for binding CE local NAPT44"; | for binding CE local NAPT44"; | |||
} | } | |||
container port-set { | container port-set { | |||
description | description | |||
skipping to change at line 1059 ¶ | skipping to change at line 1100 ¶ | |||
This is accomplished by maintaining state for each softwire | This is accomplished by maintaining state for each softwire | |||
(per-subscriber state) in the central Border Relay (BR) and using | (per-subscriber state) in the central Border Relay (BR) and using | |||
a hub-and-spoke forwarding architecture. In order to delegate | a hub-and-spoke forwarding architecture. In order to delegate | |||
the NAPT function and achieve IPv4 address sharing, | the NAPT function and achieve IPv4 address sharing, | |||
port-restricted IPv4 addresses needs to be allocated to CEs. | port-restricted IPv4 addresses needs to be allocated to CEs. | |||
This feature indicates that the network element can function as | This feature indicates that the network element can function as | |||
one or more binding-based softwire instances."; | one or more binding-based softwire instances."; | |||
reference | reference | |||
"RFC 7596: Lightweight 4over6: An Extension to the Dual-Stack Lite | "RFC 7596: Lightweight 4over6: An Extension to the Dual-Stack Lite | |||
Architecture | Architecture | |||
RFC 7597: Mapping of Address and Port with Encapsulation (MAP-E) | RFC 7597: Mapping of Address and Port with Encapsulation (MAP-E) | |||
RFC 7599: Mapping of Address and Port using Translation (MAP-T)"; | RFC 7599: Mapping of Address and Port using Translation (MAP-T)"; | |||
} | } | |||
feature map-e { | feature map-e { | |||
description | description | |||
"MAP-E is an IPv6 transition mechanism for transporting IPv4 | "MAP-E is an IPv6 transition mechanism for transporting IPv4 | |||
packets across an IPv6 network using IP encapsulation. MAP-E | packets across an IPv6 network using IP encapsulation. MAP-E | |||
allows for a reduction of the amount of centralized state using | allows for a reduction of the amount of centralized state using | |||
rules to express IPv4/IPv6 address mappings. This introduces an | rules to express IPv4/IPv6 address mappings. This introduces an | |||
skipping to change at line 1142 ¶ | skipping to change at line 1183 ¶ | |||
victim of abuse presents an external IP address/port, | victim of abuse presents an external IP address/port, | |||
the version of the binding table is important | the version of the binding table is important | |||
because, depending on the version, a distinct | because, depending on the version, a distinct | |||
customer may be identified. | customer may be identified. | |||
The timestamp is used as a key to find the | The timestamp is used as a key to find the | |||
appropriate binding table that was put into effect | appropriate binding table that was put into effect | |||
when an abuse occurred."; | when an abuse occurred."; | |||
reference | reference | |||
"RFC 7422: Deterministic Address Mapping to Reduce | "RFC 7422: Deterministic Address Mapping to Reduce | |||
Logging in Carrier-Grade NAT Deployments"; | Logging in Carrier-Grade NAT Deployments"; | |||
} | } | |||
} | } | |||
leaf softwire-num-max { | leaf softwire-num-max { | |||
type uint32 { | type uint32 { | |||
range "1..max"; | range "1..max"; | |||
} | } | |||
mandatory true; | mandatory true; | |||
description | description | |||
"The maximum number of softwires that can be created | "The maximum number of softwires that can be created | |||
on the binding BR"; | on the binding BR"; | |||
skipping to change at line 1177 ¶ | skipping to change at line 1218 ¶ | |||
reference | reference | |||
"RFC 4213: Basic Transition Mechanisms for IPv6 Hosts | "RFC 4213: Basic Transition Mechanisms for IPv6 Hosts | |||
and Routers"; | and Routers"; | |||
} | } | |||
leaf enable-hairpinning { | leaf enable-hairpinning { | |||
type boolean; | type boolean; | |||
default "true"; | default "true"; | |||
description | description | |||
"Enables/disables support for locally forwarding | "Enables/disables support for locally forwarding | |||
(hairpinning) traffic between two CEs"; | (hairpinning) traffic between two CEs"; | |||
reference "RFC 7596: Lightweight 4over6: An Extension to | reference | |||
the Dual-Stack Lite Architecture, Section 6.2"; | "RFC 7596: Lightweight 4over6: An Extension to | |||
the Dual-Stack Lite Architecture, Section 6.2"; | ||||
} | } | |||
container binding-table { | container binding-table { | |||
description | description | |||
"binding table"; | "binding table"; | |||
list binding-entry { | list binding-entry { | |||
key "binding-ipv6info"; | key "binding-ipv6info"; | |||
description | description | |||
"binding entry"; | "binding entry"; | |||
uses binding-entry; | uses binding-entry; | |||
} | } | |||
skipping to change at line 1206 ¶ | skipping to change at line 1248 ¶ | |||
description | description | |||
"ICMPv4 error processing configuration"; | "ICMPv4 error processing configuration"; | |||
leaf allow-incoming-icmpv4 { | leaf allow-incoming-icmpv4 { | |||
type boolean; | type boolean; | |||
default "true"; | default "true"; | |||
description | description | |||
"Enables the processing of incoming ICMPv4 | "Enables the processing of incoming ICMPv4 | |||
packets"; | packets"; | |||
reference | reference | |||
"RFC 7596: Lightweight 4over6: An Extension to | "RFC 7596: Lightweight 4over6: An Extension to | |||
the Dual-Stack Lite Architecture"; | the Dual-Stack Lite Architecture"; | |||
} | } | |||
leaf icmpv4-rate { | leaf icmpv4-rate { | |||
type uint32; | type uint32; | |||
description | description | |||
"Rate limit threshold in messages per second | "Rate limit threshold in messages per second | |||
for processing incoming ICMPv4 errors messages"; | for processing incoming ICMPv4 errors messages"; | |||
} | } | |||
leaf generate-icmpv4-errors { | leaf generate-icmpv4-errors { | |||
type boolean; | type boolean; | |||
default "true"; | default "true"; | |||
description | description | |||
"Enables the generation of outgoing ICMPv4 error | "Enables the generation of outgoing ICMPv4 error | |||
messages on receipt of an inbound IPv4 packet | messages on receipt of an inbound IPv4 packet | |||
with no matching binding table entry"; | with no matching binding table entry"; | |||
reference "RFC 7596: Lightweight 4over6: | reference | |||
"RFC 7596: Lightweight 4over6: | ||||
An Extension to the Dual-Stack Lite | An Extension to the Dual-Stack Lite | |||
Architecture, Section 5.2"; | Architecture, Section 5.2"; | |||
} | } | |||
} | } | |||
container icmpv6-errors { | container icmpv6-errors { | |||
description | description | |||
"ICMPv6 error processing configuration"; | "ICMPv6 error processing configuration"; | |||
leaf generate-icmpv6-errors { | leaf generate-icmpv6-errors { | |||
type boolean; | type boolean; | |||
default "true"; | default "true"; | |||
description | description | |||
"Enables the generation of ICMPv6 error messages if | "Enables the generation of ICMPv6 error messages if | |||
no matching binding table entry is found for a | no matching binding table entry is found for a | |||
received packet"; | received packet"; | |||
reference "RFC 7596: Lightweight 4over 6: | reference | |||
"RFC 7596: Lightweight 4over 6: | ||||
4over 6: An Extension to the Dual-Stack Lite | 4over 6: An Extension to the Dual-Stack Lite | |||
Architecture, Section 6.2"; | Architecture, Section 6.2"; | |||
} | } | |||
leaf icmpv6-rate { | leaf icmpv6-rate { | |||
type uint32; | type uint32; | |||
description | description | |||
"Rate limit threshold in messages per second | "Rate limit threshold in messages per second | |||
for sending ICMPv6 errors messages"; | for sending ICMPv6 errors messages"; | |||
reference "RFC 7596: Lightweight 4over6: An Extension | reference | |||
to the Dual-Stack Lite Architecture, | "RFC 7596: Lightweight 4over6: An Extension | |||
Section 9"; | to the Dual-Stack Lite Architecture, Section 9"; | |||
} | } | |||
} | } | |||
} | } | |||
container traffic-stat { | container traffic-stat { | |||
config false; | config false; | |||
description | description | |||
"Traffic statistics information for the BR"; | "Traffic statistics information for the BR"; | |||
leaf discontinuity-time { | leaf discontinuity-time { | |||
type yang:date-and-time; | type yang:date-and-time; | |||
mandatory true; | mandatory true; | |||
skipping to change at line 1397 ¶ | skipping to change at line 1441 ¶ | |||
leaf bind-name { | leaf bind-name { | |||
type leafref { | type leafref { | |||
path "/br-instances/binding/bind-instance/name"; | path "/br-instances/binding/bind-instance/name"; | |||
} | } | |||
description | description | |||
"The name of the binding-instance that | "The name of the binding-instance that | |||
generated the notification"; | generated the notification"; | |||
} | } | |||
leaf-list invalid-entry { | leaf-list invalid-entry { | |||
type leafref { | type leafref { | |||
path | path "/br-instances/binding/" | |||
"/br-instances/binding/" | + "bind-instance[name=current()/../bind-name]/" | |||
+ "bind-instance[name=current()/../bind-name]/" | + "binding-table/binding-entry/binding-ipv6info"; | |||
+ "binding-table/binding-entry/binding-ipv6info"; | ||||
} | } | |||
description | description | |||
"Notify the client that a specific binding entry has | "Notify the client that a specific binding entry has | |||
expired or is invalid. The binding-ipv6info identifies | expired or is invalid. The binding-ipv6info identifies | |||
an entry."; | an entry."; | |||
} | } | |||
leaf-list added-entry { | leaf-list added-entry { | |||
type inet:ipv6-address; | type inet:ipv6-address; | |||
description | description | |||
"Notify the client that a binding entry has been added. | "Notify the client that a binding entry has been added. | |||
The IPv6 address of that entry is the index. The client | The IPv6 address of that entry is the index. The client | |||
gets other information from the binding BR about the entry | gets other information from the binding BR about the entry | |||
indexed by that ipv6 address."; | indexed by that ipv6 address."; | |||
} | } | |||
leaf-list modified-entry { | leaf-list modified-entry { | |||
type leafref { | type leafref { | |||
path | path "/br-instances/binding/" | |||
"/br-instances/binding/" | + "bind-instance[name=current()/../bind-name]/" | |||
+ "bind-instance[name=current()/../bind-name]/" | + "binding-table/binding-entry/binding-ipv6info"; | |||
+ "binding-table/binding-entry/binding-ipv6info"; | ||||
} | } | |||
description | description | |||
"The binding-table entry that has been modified"; | "The binding-table entry that has been modified"; | |||
} | } | |||
} | } | |||
notification softwire-algorithm-instance-event { | notification softwire-algorithm-instance-event { | |||
if-feature "map-e or map-t"; | if-feature "map-e or map-t"; | |||
description | description | |||
"Notifications for an algorithm instance when an entry is | "Notifications for an algorithm instance when an entry is | |||
added, modified, or is not valid anymore"; | added, modified, or is not valid anymore"; | |||
skipping to change at line 1485 ¶ | skipping to change at line 1527 ¶ | |||
if not set, this rule is a Basic Mapping Rule (BMR) only | if not set, this rule is a Basic Mapping Rule (BMR) only | |||
and must not be used for forwarding."; | and must not be used for forwarding."; | |||
Current: | Current: | |||
description | description | |||
"This parameter specifies whether the rule may be used as a | "This parameter specifies whether the rule may be used as a | |||
Forward Mapping Rule (FMR). If set, this rule is used as | Forward Mapping Rule (FMR). If set, this rule is used as | |||
an FMR; if not set, this rule is a Basic Mapping Rule (BMR) | an FMR; if not set, this rule is a Basic Mapping Rule (BMR) | |||
only and must not be used for forwarding."; | only and must not be used for forwarding."; | |||
--> | --> | |||
<sourcecode name="" type="" markers="true"><![CDATA[file "ietf-softwire-co | <sourcecode name="ietf-softwire-common@2019-10-28.yang" type="yang" marker | |||
mmon@2019-01-11.yang" | s="true"><![CDATA[ | |||
module ietf-softwire-common { | module ietf-softwire-common { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-softwire-common"; | namespace "urn:ietf:params:xml:ns:yang:ietf-softwire-common"; | |||
prefix softwire-common; | prefix softwire-common; | |||
import ietf-inet-types { | import ietf-inet-types { | |||
prefix inet; | prefix inet; | |||
reference "RFC 6991: Common YANG Data Types, Section 4"; | reference | |||
"RFC 6991: Common YANG Data Types, Section 4"; | ||||
} | } | |||
import ietf-yang-types { | import ietf-yang-types { | |||
prefix yang; | prefix yang; | |||
reference "RFC 6991: Common YANG Data Types, Section 3"; | reference | |||
"RFC 6991: Common YANG Data Types, Section 3"; | ||||
} | } | |||
organization | organization | |||
"IETF Softwire Working Group"; | "IETF Softwire Working Group"; | |||
contact | contact | |||
"WG Web: <https://datatracker.ietf.org/wg/softwire/> | "WG Web: <https://datatracker.ietf.org/wg/softwire/> | |||
WG List: <mailto:softwire@ietf.org> | WG List: <mailto:softwire@ietf.org> | |||
Author: Qi Sun | Author: Qi Sun | |||
<mailto:sunqi.ietf@gmail.com> | <mailto:sunqi.ietf@gmail.com> | |||
skipping to change at line 1544 ¶ | skipping to change at line 1587 ¶ | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC 8676; see | This version of this YANG module is part of RFC 8676; see | |||
the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
revision 2019-01-11 { | revision 2019-10-28 { | |||
description | description | |||
"Initial revision"; | "Initial revision"; | |||
reference | reference | |||
"RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | "RFC 8676: YANG Modules for IPv4-in-IPv6 Address plus Port | |||
Softwires"; | (A+P) Softwires"; | |||
} | } | |||
feature map-e { | feature map-e { | |||
description | description | |||
"MAP-E is an IPv6 transition mechanism for transporting IPv4 | "MAP-E is an IPv6 transition mechanism for transporting IPv4 | |||
packets across an IPv6 network using IP encapsulation. MAP-E | packets across an IPv6 network using IP encapsulation. MAP-E | |||
allows for a reduction of the amount of centralized state using | allows for a reduction of the amount of centralized state using | |||
rules to express IPv4/IPv6 address mappings. This introduces an | rules to express IPv4/IPv6 address mappings. This introduces an | |||
algorithmic relationship between the IPv6 subnet and IPv4 | algorithmic relationship between the IPv6 subnet and IPv4 | |||
address. | address. | |||
skipping to change at line 1977 ¶ | skipping to change at line 2020 ¶ | |||
</ul> | </ul> | |||
<t>Security considerations related to lw4o6, MAP-T, and MAP-E are | <t>Security considerations related to lw4o6, MAP-T, and MAP-E are | |||
discussed in <xref target="RFC7596" format="default"/>, <xref target="RFC7 597" format="default"> | discussed in <xref target="RFC7596" format="default"/>, <xref target="RFC7 597" format="default"> | |||
</xref>, and <xref target="RFC7599" format="default"/> respectively.</t> | </xref>, and <xref target="RFC7599" format="default"/> respectively.</t> | |||
<t>Security considerations given in <xref target="RFC7950" format="default "/> are | <t>Security considerations given in <xref target="RFC7950" format="default "/> are | |||
also applicable here.</t> | also applicable here.</t> | |||
</section> | </section> | |||
<section anchor="iana" numbered="true" toc="default"> | <section anchor="iana" numbered="true" toc="default"> | |||
<name>IANA Considerations</name> | <name>IANA Considerations</name> | |||
<t>IANA has assigned the following new tunnel type under the | <t>IANA has assigned the following new tunnel type under the | |||
"tunnelType" subregistry of the "ifType Definitions" registry | tunnelType subregistry of the "ifType Definitions" registry | |||
maintained at <xref target="TUNNELTYPE-IANA-REGISTRY" format="default"/>:< | maintained in the SMI Numbers registry <xref target="IANA-TUNNELTYPES" for | |||
/t> | mat="default"/>:</t> | |||
<artwork align="left" name="" type="" alt=""><![CDATA[ Decimal: | <ul empty="true"><li> | |||
18 | <dl newline="false" indent="14" spacing="compact"> | |||
Name: aplusp | <dt>Decimal:</dt><dd>18</dd> | |||
Description: A+P encapsulation | <dt>Name:</dt><dd>aplusp</dd> | |||
Reference: [RFC6346] | <dt>Description:</dt><dd>A+P encapsulation</dd> | |||
]]></artwork> | <dt>Reference:</dt><dd>[RFC6346]</dd> | |||
</dl> | ||||
</li></ul> | ||||
<t>IANA has registered the following in the "ns" | <t>IANA has registered the following in the "ns" | |||
subregistry within the "IETF XML Registry" <xref target="RFC3688" format=" default"/>: | subregistry within the "IETF XML Registry" <xref target="RFC3688" format=" default"/>: | |||
<!-- [rfced] We see the following in the "ns" registry | <!-- [rfced] We see the following in the "ns" registry | |||
<https://www.iana.org/assignments/xml-registry/xml-registry.xhtml#ns> as | <https://www.iana.org/assignments/xml-registry/xml-registry.xhtml#ns> as | |||
compared with this document. It appears as thought "yang" is missing from the | compared with this document. It appears as thought "yang" is missing from the | |||
IANA-registered values. Please confirm this is correct, and we will ask IANA | IANA-registered values. Please confirm this is correct, and we will ask IANA | |||
to update their site accordingly. | to update their site accordingly. | |||
IANA: urn:ietf:params:xml:ns:ietf-softwire-ce | IANA: urn:ietf:params:xml:ns:ietf-softwire-ce | |||
Doc: urn:ietf:params:xml:ns:yang:ietf-softwire-ce | Doc: urn:ietf:params:xml:ns:yang:ietf-softwire-ce | |||
IANA: urn:ietf:params:xml:ns:ietf-softwire-br | IANA: urn:ietf:params:xml:ns:ietf-softwire-br | |||
Doc: urn:ietf:params:xml:ns:yang:ietf-softwire-br | Doc: urn:ietf:params:xml:ns:yang:ietf-softwire-br | |||
IANA: urn:ietf:params:xml:ns:ietf-softwire-common | IANA: urn:ietf:params:xml:ns:ietf-softwire-common | |||
Doc: urn:ietf:params:xml:ns:yang:ietf-softwire-common | Doc: urn:ietf:params:xml:ns:yang:ietf-softwire-common | |||
--> | --> | |||
</t> | </t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ URI: urn:ie | <ul empty="true"><li> | |||
tf:params:xml:ns:yang:ietf-softwire-ce | <dl newline="false" spacing="compact"> | |||
Registrant Contact: The IESG. | <dt>URI:</dt><dd>urn:ietf:params:xml:ns:yang:ietf-softwire-ce</dd> | |||
XML: N/A; the requested URI is an XML namespace. | <dt>Registrant Contact:</dt><dd>The IESG.</dd> | |||
<dt>XML:</dt><dd>N/A; the requested URI is an XML namespace.</dd> | ||||
</dl> | ||||
</li></ul> | ||||
URI: urn:ietf:params:xml:ns:yang:ietf-softwire-br | <ul empty="true"><li> | |||
Registrant Contact: The IESG. | <dl newline="false" spacing="compact"> | |||
XML: N/A; the requested URI is an XML namespace. | <dt>URI:</dt><dd>urn:ietf:params:xml:ns:yang:ietf-softwire-br</dd> | |||
<dt>Registrant Contact:</dt><dd>The IESG.</dd> | ||||
<dt>XML:</dt><dd>N/A; the requested URI is an XML namespace.</dd> | ||||
</dl></li></ul> | ||||
URI: urn:ietf:params:xml:ns:yang:ietf-softwire-common | <ul empty="true"><li> | |||
Registrant Contact: The IESG. | <dl newline="false" spacing="compact"> | |||
XML: N/A; the requested URI is an XML namespace. ]]></artwork> | <dt>URI:</dt><dd>urn:ietf:params:xml:ns:yang:ietf-softwire-common</dd> | |||
<dt>Registrant Contact:</dt><dd>The IESG.</dd> | ||||
<dt>XML:</dt><dd>N/A; the requested URI is an XML namespace.</dd> | ||||
</dl></li></ul> | ||||
<t>IANA has registered the following YANG modules | <t>IANA has registered the following YANG modules | |||
in the "YANG Module Names" subregistry <xref target="RFC7950" format="defa ult"/> | in the "YANG Module Names" subregistry <xref target="RFC7950" format="defa ult"/> | |||
within the "YANG Parameters" registry.</t> | within the "YANG Parameters" registry.</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ name: ietf- | <ul empty="true"><li> | |||
softwire-ce | <dl newline="false" spacing="compact"> | |||
namespace: urn:ietf:params:xml:ns:yang:ietf-softwire-ce | <dt>name:</dt><dd>ietf-softwire-ce</dd> | |||
prefix: softwire-ce | <dt>namespace:</dt><dd>urn:ietf:params:xml:ns:yang:ietf-softwire-ce</dd> | |||
reference: RFC 8676 | <dt>prefix:</dt><dd>softwire-ce</dd> | |||
<dt>reference:</dt><dd>RFC 8676</dd> | ||||
name: ietf-softwire-br | </dl></li></ul> | |||
namespace: urn:ietf:params:xml:ns:yang:ietf-softwire-br | ||||
prefix: softwire-br | ||||
reference: RFC 8676 | ||||
name: ietf-softwire-common | <ul empty="true"><li> | |||
namespace: urn:ietf:params:xml:ns:yang:ietf-softwire-common | <dl newline="false" spacing="compact"> | |||
prefix: softwire-common | <dt>name:</dt><dd>ietf-softwire-br</dd> | |||
reference: RFC 8676]]></artwork> | <dt>namespace:</dt><dd>urn:ietf:params:xml:ns:yang:ietf-softwire-br</dd | |||
> | ||||
<dt>prefix:</dt><dd>softwire-br</dd> | ||||
<dt>reference:</dt><dd>RFC 8676</dd> | ||||
</dl></li></ul> | ||||
<ul empty="true"><li> | ||||
<dl newline="false" spacing="compact"> | ||||
<dt>name:</dt><dd>ietf-softwire-common</dd> | ||||
<dt>namespace:</dt><dd>urn:ietf:params:xml:ns:yang:ietf-softwire-common | ||||
</dd> | ||||
<dt>prefix:</dt><dd>softwire-common</dd> | ||||
<dt>reference:</dt><dd>RFC 8676</dd> | ||||
</dl></li></ul> | ||||
</section> | </section> | |||
</middle> | </middle> | |||
<back> | <back> | |||
<references> | <references> | |||
<name>References</name> | <name>References</name> | |||
<references> | <references> | |||
<name>Normative References</name> | <name>Normative References</name> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.3688.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.3688.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8446.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8446.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6241.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6241.xml"/> | |||
skipping to change at line 2060 ¶ | skipping to change at line 2124 ¶ | |||
let us know where it should be cited or if it can be deleted from | let us know where it should be cited or if it can be deleted from | |||
the References section. | the References section. | |||
RFC 6020: YANG - A Data Modeling Language for the Network Configuration | RFC 6020: YANG - A Data Modeling Language for the Network Configuration | |||
Protocol (NETCONF) | Protocol (NETCONF) | |||
--> | --> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6020.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6020.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6991.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6991.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.7224.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.7224.xml"/> | |||
<!-- <?rfc include='reference.I-D.ietf-softwire-iftunnel'?>; compan ion document --> | <!-- <?rfc include='reference.I-D.ietf-softwire-iftunnel'?>; compan ion document --> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer | <reference anchor='RFC8675' target='https://www.rfc-editor.org/info/rfc8675'> | |||
ence.RFC.8675.xml"/> | <front> | |||
<reference anchor="TUNNELTYPE-IANA-REGISTRY" target="https://www.iana.or | <title>A YANG Data Model for Tunnel Interface Types</title> | |||
g/assignments/smi-numbers/smi-numbers.xhtml#smi-numbers-6"> | ||||
<author initials='M' surname='Boucadair' fullname='Mohamed Boucadair'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='I' surname='Farrer' fullname='Ian Farrer'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='R' surname='Asati' fullname='Rajiv Asati'> | ||||
<organization /> | ||||
</author> | ||||
<date month='October' year='2019' /> | ||||
</front> | ||||
<seriesInfo name='RFC' value='8675' /> | ||||
<seriesInfo name="DOI" value="10.17487/RFC8675"/> | ||||
</reference> | ||||
<reference anchor="IANA-TUNNELTYPES" target="https://www.iana.org/assign | ||||
ments/smi-numbers"> | ||||
<front> | <front> | |||
<title>tunnelType Definitions</title> | <title>Structure of Management Information (SMI) Numbers (MIB | |||
Module Registrations)</title> | ||||
<author> | <author> | |||
<organization abbrev="IANA">Internet Assigned Numbers | <organization>IANA</organization> | |||
Authority</organization> | ||||
</author> | </author> | |||
<date/> | ||||
</front> | </front> | |||
</reference> | </reference> | |||
</references> | </references> | |||
<references> | <references> | |||
<name>Informative References</name> | <name>Informative References</name> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8344.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8344.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6346.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.6346.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8342.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8342.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8349.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8349.xml"/> | |||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8340.xml"/> | <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/refer ence.RFC.8340.xml"/> | |||
skipping to change at line 2118 ¶ | skipping to change at line 2203 ¶ | |||
<dd>192.0.2.1</dd> | <dd>192.0.2.1</dd> | |||
<dt>lwB4 PSID:</dt> | <dt>lwB4 PSID:</dt> | |||
<dd>0x34</dd> | <dd>0x34</dd> | |||
<dt>lwB4 PSID Length</dt> | <dt>lwB4 PSID Length</dt> | |||
<dd>8</dd> | <dd>8</dd> | |||
<dt>BR IPv6 Address:</dt> | <dt>BR IPv6 Address:</dt> | |||
<dd>2001:db8:1::2</dd> | <dd>2001:db8:1::2</dd> | |||
</dl> | </dl> | |||
<figure anchor="lw4o6-br-example-xml"> | <figure anchor="lw4o6-br-example-xml"> | |||
<name>lw4o6 Binding-Table Configuration XML</name> | <name>lw4o6 Binding-Table Configuration XML</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ <br-instance | ||||
s> | <sourcecode name="" type="xml"><![CDATA[ <br-instances> | |||
<binding> | <binding> | |||
<bind-instance> | <bind-instance> | |||
<name>mybinding-instance</name> | <name>mybinding-instance</name> | |||
<binding-table> | <binding-table> | |||
<binding-entry> | <binding-entry> | |||
<binding-ipv6info>2001:db8::1</binding-ipv6info> | <binding-ipv6info>2001:db8::1</binding-ipv6info> | |||
<binding-ipv4-addr>192.0.2.1</binding-ipv4-addr> | <binding-ipv4-addr>192.0.2.1</binding-ipv4-addr> | |||
<port-set> | <port-set> | |||
<psid>52</psid> | <psid>52</psid> | |||
<psid-len>8</psid-len> | <psid-len>8</psid-len> | |||
</port-set> | </port-set> | |||
<br-ipv6-addr>2001:db8:1::2</br-ipv6-addr> | <br-ipv6-addr>2001:db8:1::2</br-ipv6-addr> | |||
</binding-entry> | </binding-entry> | |||
</binding-table> | </binding-table> | |||
<softwire-num-max>1024</softwire-num-max> | <softwire-num-max>1024</softwire-num-max> | |||
<softwire-path-mru>1540</softwire-path-mru> | <softwire-path-mru>1540</softwire-path-mru> | |||
<softwire-payload-mtu>1500</softwire-payload-mtu> | <softwire-payload-mtu>1500</softwire-payload-mtu> | |||
</bind-instance> | </bind-instance> | |||
</binding> | </binding> | |||
</br-instances> ]]></artwork> | </br-instances> ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section anchor="map-e-example" numbered="true" toc="default"> | <section anchor="map-e-example" numbered="true" toc="default"> | |||
<name>Configuration Example for a MAP-E BR</name> | <name>Configuration Example for a MAP-E BR</name> | |||
<t>A MAP-E BR is configured with forward mapping rules for the CEs it | <t>A MAP-E BR is configured with forward mapping rules for the CEs it | |||
is serving. In this example (taken from <xref target="RFC7597" format="d efault"/>, Appendix A, Example 2), the following | is serving. In this example (taken from <xref target="RFC7597" format="d efault"/>, Appendix A, Example 2), the following | |||
parameters are required:</t> | parameters are required:</t> | |||
<ul spacing="normal"> | <ul spacing="normal"> | |||
<li>Rule IPv6 Prefix</li> | <li>Rule IPv6 Prefix</li> | |||
<li>Rule IPv4 Prefix</li> | <li>Rule IPv4 Prefix</li> | |||
skipping to change at line 2177 ¶ | skipping to change at line 2263 ¶ | |||
<dd>192.0.2.0/24</dd> | <dd>192.0.2.0/24</dd> | |||
<dt>Rule EA-bit Length:</dt> | <dt>Rule EA-bit Length:</dt> | |||
<dd>16</dd> | <dd>16</dd> | |||
<dt>BR IPv6 Address:</dt> | <dt>BR IPv6 Address:</dt> | |||
<dd>2001:db8:ffff::1</dd> | <dd>2001:db8:ffff::1</dd> | |||
</dl> | </dl> | |||
<t><xref target="map-e-example-xml" format="default"/> provides the exam ple MAP-E | <t><xref target="map-e-example-xml" format="default"/> provides the exam ple MAP-E | |||
BR configuration xml.</t> | BR configuration xml.</t> | |||
<figure anchor="map-e-example-xml"> | <figure anchor="map-e-example-xml"> | |||
<name>MAP-E FMR Configuration XML</name> | <name>MAP-E FMR Configuration XML</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ <br-instance s> | <sourcecode name="" type="xml"><![CDATA[ <br-instances> | |||
<algorithm> | <algorithm> | |||
<algo-instance> | <algo-instance> | |||
<name>myalgo-instance</name> | <name>myalgo-instance</name> | |||
<encapsulation> | <encapsulation> | |||
<br-ipv6-addr>2001:db8:ffff::1</br-ipv6-addr> | <br-ipv6-addr>2001:db8:ffff::1</br-ipv6-addr> | |||
</encapsulation> | </encapsulation> | |||
<ea-len>16</ea-len> | <ea-len>16</ea-len> | |||
<rule-ipv4-prefix>192.0.2.0/24</rule-ipv4-prefix> | <rule-ipv4-prefix>192.0.2.0/24</rule-ipv4-prefix> | |||
<rule-ipv6-prefix>2001:db8::/40</rule-ipv6-prefix> | <rule-ipv6-prefix>2001:db8::/40</rule-ipv6-prefix> | |||
<forwarding>true</forwarding> | <forwarding>true</forwarding> | |||
<port-set> | <port-set> | |||
<psid-offset>6</psid-offset> | <psid-offset>6</psid-offset> | |||
<psid-len>8</psid-len> | <psid-len>8</psid-len> | |||
</port-set> | </port-set> | |||
</algo-instance> | </algo-instance> | |||
</algorithm> | </algorithm> | |||
</br-instances> ]]></artwork> | </br-instances> ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section anchor="lw4o6-ce-example" numbered="true" toc="default"> | <section anchor="lw4o6-ce-example" numbered="true" toc="default"> | |||
<name>lw4o6 CE Configuration Example</name> | <name>lw4o6 CE Configuration Example</name> | |||
<t>This section provides XML examples for configuring a lw4o6 CE. | <t>This section provides XML examples for configuring a lw4o6 CE. | |||
Examples for routing and NAT44 are also provided for convienience.</t> | Examples for routing and NAT44 are also provided for convienience.</t> | |||
<t>Consider an example for the following lw4o6 CE configuration:</t> | <t>Consider an example for the following lw4o6 CE configuration:</t> | |||
<dl newline="false" spacing="normal" indent="28"> | <dl newline="false" spacing="normal" indent="28"> | |||
<dt>lwB4 Binding IPv6 Address:</dt> | <dt>lwB4 Binding IPv6 Address:</dt> | |||
<dd>2001:db8::1</dd> | <dd>2001:db8::1</dd> | |||
skipping to change at line 2216 ¶ | skipping to change at line 2302 ¶ | |||
<dd>192.0.2.1</dd> | <dd>192.0.2.1</dd> | |||
<dt>lwB4 PSID:</dt> | <dt>lwB4 PSID:</dt> | |||
<dd>0x34</dd> | <dd>0x34</dd> | |||
<dt>lwB4 PSID Length</dt> | <dt>lwB4 PSID Length</dt> | |||
<dd>8</dd> | <dd>8</dd> | |||
<dt>BR IPv6 Address:</dt> | <dt>BR IPv6 Address:</dt> | |||
<dd>2001:db8:1::2</dd> | <dd>2001:db8:1::2</dd> | |||
</dl> | </dl> | |||
<figure anchor="lw4o6-ce-example-xml"> | <figure anchor="lw4o6-ce-example-xml"> | |||
<name>lw4o6 CE Configuration XML</name> | <name>lw4o6 CE Configuration XML</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="xml"><![CDATA[ | |||
<config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | <config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | |||
<interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> | <interfaces xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces"> | |||
<interface> | <interface> | |||
<name>lw4o6-wan</name> | <name>lw4o6-wan</name> | |||
<type>iana-tunnel-type:aplusp</type> | <type>iana-tunnel-type:aplusp</type> | |||
<br-ipv6-addr | <br-ipv6-addr | |||
xmlns="urn:ietf:params:xml:ns:yang:ietf-softwire-ce"> | xmlns="urn:ietf:params:xml:ns:yang:ietf-softwire-ce"> | |||
2001:db8:1::2 | 2001:db8:1::2 | |||
</br-ipv6-addr> | </br-ipv6-addr> | |||
<binding-ipv6info | <binding-ipv6info | |||
xmlns="urn:ietf:params:xml:ns:yang:ietf-softwire-ce"> | xmlns="urn:ietf:params:xml:ns:yang:ietf-softwire-ce"> | |||
2001:db8::1 | 2001:db8::1 | |||
</binding-ipv6info> | </binding-ipv6info> | |||
</interface> | </interface> | |||
</interfaces> | </interfaces> | |||
</config> | </config> | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<t>In the example depicted in <xref target="lw4o6-ce-example-xml" format ="default"/>, the interface name is defined | <t>In the example depicted in <xref target="lw4o6-ce-example-xml" format ="default"/>, the interface name is defined | |||
for the softwire tunnel. This name is then referenced by the routing | for the softwire tunnel. This name is then referenced by the routing | |||
configuration for the IPv4 route. <xref target="lw4o6-ce-routing-example -xml" format="default"/> provides an example | configuration for the IPv4 route. <xref target="lw4o6-ce-routing-example -xml" format="default"/> provides an example | |||
configuration for the CE's IPv4 routing using the YANG module | configuration for the CE's IPv4 routing using the YANG module | |||
described in <xref target="RFC8349" format="default"/>.</t> | described in <xref target="RFC8349" format="default"/>.</t> | |||
<figure anchor="lw4o6-ce-routing-example-xml"> | <figure anchor="lw4o6-ce-routing-example-xml"> | |||
<name>lw4o6 CE Routing Configuration XML</name> | <name>lw4o6 CE Routing Configuration XML</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="xml"><![CDATA[ | |||
<config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | <config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | |||
<routing xmlns="urn:ietf:params:xml:ns:yang:ietf-routing"> | <routing xmlns="urn:ietf:params:xml:ns:yang:ietf-routing"> | |||
<control-plane-protocols> | <control-plane-protocols> | |||
<control-plane-protocol> | <control-plane-protocol> | |||
<type>static</type> | <type>static</type> | |||
<name>v4</name> | <name>v4</name> | |||
<static-routes> | <static-routes> | |||
<ipv4 | <ipv4 | |||
xmlns="urn:ietf:params:xml:ns:yang:ietf-ipv4-unicast-routing"> | xmlns="urn:ietf:params:xml:ns:yang:ietf-ipv4-unicast-routing"> | |||
<route> | <route> | |||
skipping to change at line 2265 ¶ | skipping to change at line 2350 ¶ | |||
<next-hop> | <next-hop> | |||
<outgoing-interface>lw4o6-wan</outgoing-interface> | <outgoing-interface>lw4o6-wan</outgoing-interface> | |||
</next-hop> | </next-hop> | |||
</route> | </route> | |||
</ipv4> | </ipv4> | |||
</static-routes> | </static-routes> | |||
</control-plane-protocol> | </control-plane-protocol> | |||
</control-plane-protocols> | </control-plane-protocols> | |||
</routing> | </routing> | |||
</config> | </config> | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<t><xref target="lw4o6-ce-nat-example-xml" format="default"/> provides a n example | <t><xref target="lw4o6-ce-nat-example-xml" format="default"/> provides a n example | |||
configuration for the CE's NAPT44 function using the YANG module | configuration for the CE's NAPT44 function using the YANG module | |||
described in <xref target="RFC8512" format="default"/>.</t> | described in <xref target="RFC8512" format="default"/>.</t> | |||
<figure anchor="lw4o6-ce-nat-example-xml"> | <figure anchor="lw4o6-ce-nat-example-xml"> | |||
<name>lw4o6 NAT Configuration XML</name> | <name>lw4o6 NAT Configuration XML</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="xml"><![CDATA[ | |||
<config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | <config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> | |||
<nat xmlns="urn:ietf:params:xml:ns:yang:ietf-nat"> | <nat xmlns="urn:ietf:params:xml:ns:yang:ietf-nat"> | |||
<instances> | <instances> | |||
<instance> | <instance> | |||
<id>1</id> | <id>1</id> | |||
<policy> | <policy> | |||
<policy-id>1</policy-id> | <policy-id>1</policy-id> | |||
<external-ip-address-pool> | <external-ip-address-pool> | |||
<pool-id>1</pool-id> | <pool-id>1</pool-id> | |||
<external-ip-pool>192.0.2.1</external-ip-pool> | <external-ip-pool>192.0.2.1</external-ip-pool> | |||
skipping to change at line 2334 ¶ | skipping to change at line 2419 ¶ | |||
<index>3</index> | <index>3</index> | |||
<external-src-address>192.0.2.1/32</external-src-address> | <external-src-address>192.0.2.1/32</external-src-address> | |||
<internal-src-address>192.168.1.0/24</internal-src-address> | <internal-src-address>192.168.1.0/24</internal-src-address> | |||
<transport-protocol>1</transport-protocol> | <transport-protocol>1</transport-protocol> | |||
</mapping-entry> | </mapping-entry> | |||
</mapping-table> | </mapping-table> | |||
</instance> | </instance> | |||
</instances> | </instances> | |||
</nat> | </nat> | |||
</config> | </config> | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
</section> | </section> | |||
<!-- [rfced] Is there a difference between "binding table" (unhyphenated) an d | <!-- [rfced] Is there a difference between "binding table" (unhyphenated) an d | |||
"binding-table" (hyphenated)? If not, may we hyphenate "binding table" when | "binding-table" (hyphenated)? If not, may we hyphenate "binding table" when | |||
it acts as an adjective and precedes a noun? | it acts as an adjective and precedes a noun? | |||
"The binding-table entry that has been modified." | "The binding-table entry that has been modified." | |||
Figure 3: lw4o6 Binding-Table Configuration XML | Figure 3: lw4o6 Binding-Table Configuration XML | |||
skipping to change at line 2385 ¶ | skipping to change at line 2470 ¶ | |||
--> | --> | |||
<section numbered="false" toc="default"> | <section numbered="false" toc="default"> | |||
<name>Contributors</name> | <name>Contributors</name> | |||
<t>The following individuals are co-authors:</t> | <t>The following individuals are co-authors:</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ Yong Cui | <artwork name="" type="" align="left" alt=""><![CDATA[ Yong Cui | |||
Tsinghua University | Tsinghua University | |||
Beijing 100084 | Beijing 100084 | |||
P.R. China | P.R. China | |||
Phone: +86-10-6260-3059 | Phone: +86-10-6260-3059 | |||
Email: cuiyong@tsinghua.edu.cn | Email: cuiyong@tsinghua.edu.cn | |||
]]></artwork> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
Qi Sun | Qi Sun | |||
Tsinghua University | Tsinghua University | |||
Beijing 100084 | Beijing 100084 | |||
P.R. China | P.R. China | |||
Phone: +86-10-6278-5822 | Phone: +86-10-6278-5822 | |||
Email: sunqi.ietf@gmail.com | Email: sunqi.ietf@gmail.com | |||
]]></artwork> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
Linhui Sun | Linhui Sun | |||
Tsinghua University | Tsinghua University | |||
Beijing 100084 | Beijing 100084 | |||
P.R. China | P.R. China | |||
Phone: +86-10-6278-5822 | Phone: +86-10-6278-5822 | |||
Email: lh.sunlinh@gmail.com | Email: lh.sunlinh@gmail.com | |||
]]></artwork> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
Sladjana Zechlin | Sladjana Zechlin | |||
Deutsche Telekom AG | Deutsche Telekom AG | |||
Landgrabenweg 151 | Landgrabenweg 151 | |||
Bonn, NRW 53227 | Bonn, NRW 53227 | |||
Germany | Germany | |||
Email: sladjana.zechlin@telekom.de | Email: sladjana.zechlin@telekom.de | |||
]]></artwork> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
Rajiv Asati | Rajiv Asati | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
7025 Kit Creek Rd. | 7025 Kit Creek Rd. | |||
RTP, NC 27709 | RTP, NC 27709 | |||
USA | United States of America | |||
Email: Rajiva@cisco.com]]></artwork> | Email: Rajiva@cisco.com]]></artwork> | |||
<t>The following individual contributed to this document: | ||||
</t> | <t>The following individual contributed to this document:</t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ Hao Wang | <artwork name="" type="" align="left" alt=""><![CDATA[ Hao Wang | |||
Tsinghua University | Tsinghua University | |||
Beijing 100084 | Beijing 100084 | |||
P.R.China | P.R. China | |||
Phone: +86-10-6278-5822 | Phone: +86-10-6278-5822 | |||
Email: wangh13@mails.tsinghua.edu.cn]]></artwork> | Email: wangh13@mails.tsinghua.edu.cn]]></artwork> | |||
</section> | </section> | |||
</back> | </back> | |||
</rfc> | </rfc> | |||
End of changes. 92 change blocks. | ||||
174 lines changed or deleted | 274 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |