rfc8703xml2.original.xml | rfc8703.xml | |||
---|---|---|---|---|
<?xml version='1.0' encoding='utf-8'?> | ||||
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent"> | ||||
<rfc number="8703" consensus="true" xmlns:xi="http://www.w3.org/2001/XInclude" | ||||
category="std" ipr="trust200902" | ||||
docName="draft-ietf-manet-dlep-lid-extension-06" obsoletes="" updates="" | ||||
submissionType="IETF" xml:lang="en" tocInclude="true" symRefs="true" | ||||
sortRefs="true" version="3"> | ||||
<!-- xml2rfc v2v3 conversion 2.35.0 --> | ||||
<front> | ||||
<title abbrev="DLEP Link Identifier Extension"> | ||||
Dynamic Link Exchange Protocol (DLEP) Link Identifier Extension</title> | ||||
<seriesInfo name="RFC" value="8703"/> | ||||
<author initials="R." surname="Taylor" fullname="Rick Taylor"> | ||||
<organization>Airbus Defence & Space</organization> | ||||
<address> | ||||
<postal> | ||||
<extaddr>Quadrant House</extaddr> | ||||
<extaddr>Celtic Springs</extaddr> | ||||
<extaddr>Coedkernew</extaddr> | ||||
<city>Newport</city> | ||||
<code>NP10 8FZ</code> | ||||
<country>United Kingdom</country> | ||||
</postal> | ||||
<email>rick.taylor@airbus.com</email> | ||||
</address> | ||||
</author> | ||||
<author fullname="Stan Ratliff" initials="S." surname="Ratliff"> | ||||
</author> | ||||
<date month="February" year="2020"/> | ||||
<area>Routing</area> | ||||
<workgroup>Mobile Ad hoc Networks Working Group</workgroup> | ||||
<keyword>DLEP</keyword> | ||||
<keyword>MANET</keyword> | ||||
<keyword>Link-Aware</keyword> | ||||
<keyword>Radio-Aware</keyword> | ||||
<abstract> | ||||
<t>The Dynamic Link Exchange Protocol (DLEP) is a protocol for modems to | ||||
advertise the status of wireless links between reachable destinations to | ||||
attached routers. The core specification of the protocol (RFC 8175) | ||||
assumes that every modem in the radio network has an attached DLEP | ||||
router and requires that the Media Access Control (MAC) address of the | ||||
DLEP interface on the attached router be used to identify the | ||||
destination in the network, for purposes of reporting the state and | ||||
quality of the link to that destination. </t> | ||||
<t>This document describes a DLEP extension that allows modems that do not | ||||
meet the strict requirement above to use DLEP to describe link | ||||
availability and quality to one or more destinations reachable beyond a | ||||
device on the Layer 2 domain. </t> | ||||
</abstract> | ||||
</front> | ||||
<middle> | ||||
<section anchor="introduction" toc="default" numbered="true"> | ||||
<name>Introduction</name> | ||||
<t>The Dynamic Link Exchange Protocol (DLEP) is a | ||||
protocol for modems to advertise the status of wireless links between | ||||
reachable destinations to attached routers. The core specification of | ||||
the protocol <xref target="RFC8175"/> assumes that every modem in the radi | ||||
o network has an | ||||
attached DLEP router and requires that the MAC address of the DLEP | ||||
interface on the attached router be used to identify the destination in | ||||
the network, for purposes of reporting the state and quality of the link | ||||
to that destination. </t> | ||||
<t>This document describes a DLEP extension that allows modems that do not | ||||
meet the strict requirement above to use DLEP to describe link | ||||
availability and quality to one or more destinations reachable beyond a | ||||
device on the Layer 2 domain. </t> | ||||
<t>As with core DLEP <xref target="RFC8175"/>, a router can use this | ||||
knowledge to influence any routing or flow-control decisions regarding | ||||
traffic to this destination, understanding that such traffic flows via | ||||
Layer 3. </t> | ||||
<section anchor="terminology" toc="default" numbered="true"> | ||||
<name>Terminology</name> | ||||
<dl newline="false" spacing="normal"> | ||||
<dt>Local Layer 2 domain:</dt> | ||||
<dd>The Layer 2 domain that links the router and modem participants | ||||
of the current DLEP session. </dd> | ||||
<dt>Layer 3 DLEP Destination:</dt> | ||||
<dd>A DLEP Destination that is not directly addressable within the | ||||
local Layer 2 domain but is reachable via a node addressable within | ||||
the local Layer 2 domain. </dd> | ||||
<dt>Gateway Node:</dt> | ||||
<dd>The last device with a MAC address reachable in the local Layer | ||||
2 domain on the path from the DLEP router participant towards the | ||||
Layer 3 DLEP Destination. This device is commonly the DLEP peer | ||||
modem but could be another DLEP Destination in the Layer 2 domain. | ||||
</dd> | ||||
</dl> | ||||
</section> | ||||
<section anchor="applicability" toc="default" numbered="true"> | ||||
<name>Applicability</name> | ||||
<t>This extension was designed primarily to address the following use | ||||
cases: </t> | ||||
<ol spacing="normal" type="1"> | ||||
<li>A radio system that does not operate in Layer 2 bridge mode but | ||||
instead provides Layer 3 connectivity between destinations, often | ||||
using its own embedded Layer 3 routing function. </li> | ||||
<li>A point-to-multipoint tunnel system, such as a software-defined | ||||
wide-area network (SD-WAN) | ||||
deployment, where the tunnel provider acts as a modem that has | ||||
knowledge of the characteristics of the underlay network and | ||||
provides that information as availability and metrics between | ||||
tunnel endpoints in the overlay network. </li> | ||||
<li>A modem that provides connectivity to a remote wide-area network | ||||
via a wireless link, but the concept of a Layer 2 reachable remote | ||||
router does not apply. An example of such a modem would be an LTE | ||||
device or 802.11 station that provides variable connectivity to the | ||||
Internet. </li> | ||||
</ol> | ||||
<t>This list of use cases is not exhaustive, and this extension may | ||||
well be applicable to future, currently unforeseen, use cases. </t> | ||||
</section> | ||||
<section anchor="requirements" toc="default" numbered="true"> | ||||
<name>Requirements Language</name> | ||||
<t> | ||||
The key words "<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 "<bcp14>OPTIONAL</bcp14>" in this document are | ||||
to be interpreted as | ||||
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> | ||||
when, and only when, they appear in all capitals, as shown here. | ||||
</t> | ||||
</section> | ||||
</section> | ||||
<section anchor="operation" toc="default" numbered="true"> | ||||
<name>Operation</name> | ||||
<t>To refer to a Layer 3 DLEP Destination, the DLEP session participant | ||||
adds a Link Identifier Data Item (<xref target="lid_di" | ||||
format="default"></xref>) to the relevant | ||||
Destination Message and (as usual) includes | ||||
a MAC Address Data Item. When paired with a Link Identifier Data Item, | ||||
the MAC Address Data Item <bcp14>MUST</bcp14> contain the MAC address of t | ||||
he Gateway | ||||
Node. </t> | ||||
<t>As only modems are initially aware of Layer 3 DLEP Destinations, Link | ||||
Identifier Data Items referring to a new link <bcp14>MUST</bcp14> first ap | ||||
pear in a | ||||
DLEP Destination Up Message from the modem to the router. Once a link | ||||
has been identified in this way, Link Identifier Data Items may be used | ||||
by either DLEP participant during the lifetime of a DLEP | ||||
session. Because of this, a router <bcp14>MUST NOT</bcp14> send a DLEP Des | ||||
tination | ||||
Announce Message containing a Link Identifier Data Item referring to a | ||||
link that has not been mentioned in a prior DLEP Destination Up | ||||
Message. If a modem receives such a message, it <bcp14>MUST</bcp14> termin | ||||
ate the | ||||
session by issuing a Session Termination Message containing a Status | ||||
Data Item with status code set to 131 ('Invalid Destination') and | ||||
transition to the Session Termination state. If a router receives a | ||||
Destination Up Message specifying a Link Identifier that has already | ||||
been used, the router <bcp14>MUST</bcp14> respond with a Destination Up Re | ||||
sponse | ||||
Message containing a Status Data Item with status code set to 130 | ||||
('Invalid Data') and transition to the Session Termination state. </t> | ||||
<t>Because the MAC address associated with any DLEP Destination Message | ||||
containing a Link Identifier Data Item is not the Layer 2 address of the | ||||
final destination, all DLEP Destination Up Messages containing a Link | ||||
Identifier Data Item <bcp14>MUST</bcp14> contain Layer 3 information. | ||||
In the case of | ||||
modems that provide Layer 3 wide area network connectivity between | ||||
devices, this means one or more IPv4 or IPv6 Address Data Items | ||||
providing the Layer 3 address of the final destination. | ||||
When referring to | ||||
some upstream backbone network infrastructures, this means one or more | ||||
IPv4 or IPv6 Attached Subnet Data Items, for example: '0.0.0.0/0' or | ||||
'::/0'. This mechanism allows the DLEP peer router to understand the prope | ||||
rties of | ||||
the link to those routes. The address or addresses in the IPv4 or IPv6 | ||||
Address Data Items <bcp14>MUST</bcp14> be the addresses in use on the publ | ||||
ic side of | ||||
any Network Address Translation. </t> | ||||
<t>When the DLEP peer router wishes to route packets to the Layer 3 DLEP | ||||
Destination, the MAC address associated with the Gateway Node <bcp14>MUST< | ||||
/bcp14> be | ||||
used as the Layer 2 destination of the packet if it wishes to use the | ||||
modem network to forward the packet. </t> | ||||
<t>As routers populate their Routing Information Base with the IP | ||||
address of the next-hop router towards a destination, implementations | ||||
supporting this extension <bcp14>SHOULD</bcp14> announce at least one vali | ||||
d IPv4 or | ||||
IPv6 addresses of the Gateway Node; this removes the need for the router | ||||
to use an additional IP address resolution protocol before adding the | ||||
route to its Routing Information Base. </t> | ||||
<section anchor="identifier-restrictions" toc="default" numbered="true"> | ||||
<name>Identifier Restrictions</name> | ||||
<t>A Link Identifier is, by default, 4 octets in length. If a modem | ||||
wishes to use a Link Identifier of a different length, it <bcp14>MUST</bc | ||||
p14> be | ||||
announced using the Link | ||||
Identifier Length Data Item (<xref target="lid_len_di" | ||||
format="default"></xref>) contained in the DLEP Session | ||||
Initialization Response Message sent by the modem to the router.</t> | ||||
<t>During the lifetime of a DLEP session, the length of Link | ||||
Identifiers <bcp14>MUST</bcp14> remain constant, i.e., the Length field o | ||||
f the Link | ||||
Identifier Data Item <bcp14>MUST NOT</bcp14> differ between destinations. | ||||
</t> | ||||
<t>The method for generating Link Identifiers is a modem | ||||
implementation matter and out of scope of this document. Routers must | ||||
not make any assumptions about the meaning of Link Identifiers or how | ||||
Link Identifiers are generated. </t> | ||||
<t>Within a single DLEP session, all Link Identifiers <bcp14>MUST</bcp14 | ||||
> be unique | ||||
per MAC address. This means that a Layer 3 DLEP Destination is | ||||
uniquely identified by the pair: {MAC Address,Link Identifier}. </t> | ||||
<t>Link Identifiers <bcp14>MUST NOT</bcp14> be reused, i.e., a {MAC Addr | ||||
ess,Link | ||||
Identifier} pair that has been used to refer to one Layer 3 DLEP | ||||
Destination <bcp14>MUST NOT</bcp14> be used again within the lifetime of | ||||
a single | ||||
DLEP peer-to-peer session. </t> | ||||
</section> | ||||
<section anchor="negotiation" toc="default" numbered="true"> | ||||
<name>Negotiation</name> | ||||
<t>To use this extension, as with all DLEP extensions, the extension | ||||
<bcp14>MUST</bcp14> be announced during DLEP session initialization. A ro | ||||
uter | ||||
advertises support by including the value 3 ('Link Identifiers') (<xref | ||||
target="tbd" format="default"></xref>), in the Extension Data Item | ||||
within the Session Initialization Message. A modem advertises support | ||||
by including the value 3 ('Link Identifiers') in the Extension Data Item | ||||
within the Session Initialization Response Message. If both DLEP peers | ||||
advertise support for this extension, then Link Identifier Data Items | ||||
can be included in DLEP Messages. </t> | ||||
<t>If a modem requires support for this extension in order to describe | ||||
destinations and the router does not advertise support, then the | ||||
modem <bcp14>MUST NOT</bcp14> include a Link Identifier Data Item in any | ||||
DLEP | ||||
Message. However, the modem <bcp14>SHOULD NOT</bcp14> immediately termina | ||||
te the DLEP | ||||
session; rather, it <bcp14>SHOULD</bcp14> use a combination of DLEP Sessi | ||||
on Messages | ||||
and DLEP Attached Subnet Data Items to provide general information. | ||||
</t> | ||||
</section> | ||||
</section> | ||||
<section anchor="new-data-items" toc="default" numbered="true"> | ||||
<name>New Data Items</name> | ||||
<t>This extension introduces two new DLEP Data Items: 1) the Link | ||||
Identifier Length Data Item (<xref target="lid_len_di" | ||||
format="default"></xref>) used to announce the length of Link | ||||
Identifiers at session initialization and 2) the Link | ||||
Identifier Data Item (<xref target="lid_di" format="default"></xref>) | ||||
used to identify a Layer 3 link at or beyond a destination. </t> | ||||
<section anchor="lid_len_di" toc="default" numbered="true"> | ||||
<name>Link Identifier Length Data Item</name> | ||||
<t>The Link Identifier Length Data Item is used by a DLEP modem | ||||
implementation to specify the length of Link Identifier Data Items. If | ||||
the router advertised support by including the value 3 ('Link | ||||
Identifiers') in the Extension Data Item inside the Session | ||||
Initialization Message, this Data Item <bcp14>MAY</bcp14> be used in the | ||||
Session | ||||
Initialization Response Message if the specified length is not the | ||||
default value of 4 octets. If the router did not specify support by | ||||
including the value 3 ('Link Identifiers') in the Extension Data Item, | ||||
this Data Item <bcp14>MUST NOT</bcp14> be sent. </t> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
0 1 2 3 | ||||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Data Item Type | Length | | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Link Identifier Length | | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
]]></artwork> | ||||
<dl newline="false" spacing="normal"> | ||||
<dt>Data Item Type:</dt> | ||||
<dd> | ||||
26 (see <xref target="tbd"></xref>) </dd> | ||||
<dt>Length:</dt> | ||||
<dd>2 </dd> | ||||
<dt>Link Identifier Length:</dt> | ||||
<dd>The length, in octets, of Link Identifiers used by the DLEP | ||||
modem for this session. </dd> | ||||
</dl> | ||||
<t>A Link Identifier Length Data Item that specifies a Link Identifier | ||||
Length of 4 octets (the default) is valid, even if it has no effect. | ||||
</t> | ||||
</section> | ||||
<section anchor="lid_di" toc="default" numbered="true"> | ||||
<name>Link Identifier Data Item</name> | ||||
<t>The Link Identifier Data Item <bcp14>MAY</bcp14> be used wherever a M | ||||
AC Address | ||||
Data Item is defined as usable in core DLEP <xref target="RFC8175"/>. </ | ||||
t> | ||||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ||||
0 1 2 3 | ||||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Data Item Type | Length | | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
| Link Identifier... : | ||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ||||
]]></artwork> | ||||
<dl newline="false" spacing="normal"> | ||||
<dt>Data Item Type:</dt> | ||||
<dd> | ||||
27 (see <xref target="tbd"></xref>) </dd> | ||||
<dt>Length:</dt> | ||||
<dd>The length of the Data Item, by default 4, but may be different | ||||
if a Link Identifier Length Data Item (<xref | ||||
target="lid_len_di"></xref>) has been announced during session | ||||
initialization.</dd> | ||||
<dt>Link Identifier:</dt> | ||||
<dd>The unique identifier of the Layer 3 DLEP Destination. This Link | ||||
Identifier has no implicit meaning and is only used to discriminate | ||||
between multiple links. </dd> | ||||
</dl> | ||||
</section> | ||||
</section> | ||||
<section anchor="security-considerations" toc="default" numbered="true"> | ||||
<name>Security Considerations</name> | ||||
<t>As an extension to core DLEP <xref target="RFC8175"/>, the security | ||||
considerations of that protocol apply to this extension. This extension | ||||
adds no additional security mechanisms or features. </t> | ||||
<t>None of the features introduced by this extension require extra | ||||
security considerations by an implementation. </t> | ||||
</section> | ||||
<section anchor="tbd" toc="default" numbered="true"> | ||||
<name>IANA Considerations</name> | ||||
<t>IANA has assigned the following value to the "Extension Type Values" re | ||||
gistry | ||||
within the "Dynamic Link Exchange Protocol (DLEP) Parameters" | ||||
registry. This new value is | ||||
in the range with the "Specification Required" <xref target="RFC8126"/> | ||||
policy. | ||||
</t> | ||||
<table anchor="iana1" align="left"> | ||||
<name>Addition to the Extension Type Values Registry</name> | ||||
<thead> | ||||
<tr> | ||||
<th>Code</th> | ||||
<th>Description</th> | ||||
</tr> | ||||
</thead> | ||||
<tbody> | ||||
<tr> | ||||
<td>3</td> | ||||
<td>Link Identifiers</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
<t>IANA has assigned two new values to the "Data Item Type Values" registry | ||||
within the "Dynamic Link Exchange Protocol (DLEP) Parameters" registry. These | ||||
new values are in the range with the "Specification Required" <xref | ||||
target="RFC8126"/> policy. | ||||
</t> | ||||
<table anchor="iana2" align="left"> | ||||
<name>Additions to the Data Item Type Values Registry</name> | ||||
<thead> | ||||
<tr> | ||||
<th>Type Code</th> | ||||
<th>Description</th> | ||||
</tr> | ||||
</thead> | ||||
<tbody> | ||||
<tr> | ||||
<td>26</td> | ||||
<td>Link Identifier Length</td> | ||||
</tr> | ||||
<tr> | ||||
<td>27</td> | ||||
<td>Link Identifier</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
</section> | ||||
</middle> | ||||
<back> | ||||
<references> | ||||
<name>References</name> | ||||
<references> | ||||
<name>Normative References</name> | ||||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/referen | ||||
ce.RFC.2119.xml"/> | ||||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/referen | ||||
ce.RFC.8174.xml"/> | ||||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/referen | ||||
ce.RFC.8175.xml"/> | ||||
</references> | ||||
<references> | ||||
<name>Informative References</name> | ||||
<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/referen | ||||
ce.RFC.8126.xml"/> | ||||
</references> | ||||
</references> | ||||
</back> | ||||
</rfc> | ||||
End of changes. 1 change blocks. | ||||
lines changed or deleted | 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/ |