<?xml version='1.0' encoding='utf-8'?>
<?xml-model href="rfc7991bis.rnc"?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<rfc
      xmlns:xi="http://www.w3.org/2001/XInclude"
      category="std"
      docName="draft-ietf-manet-dlep-channel-utilization-05"
      ipr="trust200902"
      obsoletes=""
      updates=""
      submissionType="IETF"
      xml:lang="en"
      tocInclude="true"
      tocDepth="4"
      symRefs="true"
      sortRefs="true"
      version="3"
      consensus="true">
<front>
  <title abbrev="DLEP Channel Utilization">DLEP Radio Channel Utilization Extension</title>
  <seriesInfo name="Internet-Draft" value="draft-ietf-manet-dlep-channel-utilization-05"/>
  <author fullname="Henning Rogge" initials="H.R." surname="Rogge">
      <organization>Fraunhofer FKIE</organization>
      <address>
        <postal>
          <street>Fraunhofer Strasse 20</street>
          <city>Wachtberg</city>
          <region/>
          <code>53343</code>
          <country>DE</country>
        </postal>
        <email>henning.rogge@fkie.fraunhofer.de</email>
    </address>
    </author>
  <date year="2026"/>
  <area>Routing</area>
  <workgroup>Manet</workgroup>
  <keyword>DLEP</keyword>
  <keyword>PHY</keyword>
  <keyword>TLV</keyword>
  <abstract>
    <t>This document defines an extension to the Dynamic Link Exchange Protocol (DLEP) to provide the utilization of a radio channel.</t>
  </abstract>
  </front>
  <middle>
    <section numbered="true" toc="default">
      <name>Introduction</name>
      <t>The Dynamic Link Exchange Protocol (DLEP) is defined in
        <xref target="RFC8175" format="default"/>.
        It provides the exchange of link-related control information
        between DLEP peers. DLEP peers are comprised of a modem and
        a router.  DLEP defines a base set of mechanisms as well as
        support for possible extensions. This document defines one such
        extension.
        
        Radio channel utilization provides a packet/frame independent measurement
        how a radio channel is used and how much resources are still available.
        While incoming and outgoing traffic can be easily measured on the router, the
        amount of airtime used by management traffic of the radio is invisible to the
        router, as is unicast traffic between two adjacent radios (unless the radio
        supports promiscous mode). This could present the a fully utilized radio channel
        to the router as totally empty.
        Getting a direct radio level information how much time on the radio channel has
        been used up by incoming or outgoing data or control frames allows a router to
        calculate a better routing metric or allows management
        agents to detect a channel being unusable for communication because of
        external jamming.</t>
      <section numbered="true" toc="default">
        <name>Requirements Language</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
           NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
           "MAY", and "OPTIONAL" 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 numbered="true" toc="default">
      <name>Extension Usage and Identification</name>
      <t>The use of the Channel Utilization Extension SHOULD be
        configurable. To indicate that the Channel Utilization Extension
        is to be used, an implementation MUST include the Radio Channel Utilization Extension ID in the Extensions Supported Data Item. The Extensions Supported Data Item is sent and processed according to
        <xref target="RFC8175" format="default"/>.</t>
      <t>The Channel Utilization TLVs can be used by the router to improve the tracking of channel usage by different radios and give a more exact estimate how much free capacity the channel has currently.
        This information can be used for adjusting timing intervals between automatically generated data, e.g. HELLO messages of the local routing protocol.</t>
      <t>All four Data Items are 64 bit unsigned integers time measurements in nanoseconds since an arbitrary starting point, e.g. the radio bootup. Each value monotonically increases for the entire duration of the DLEP session; they are never reset.</t>
      <t>Each of the four data items tracks the time the radio is in a certain type of operation.</t>
      <table>
        <name>Channel utilization data types</name>
        <thead>
          <tr>
            <td>Type</td><td>Description</td>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>Active</td><td>Time the radio has been operational and able to interact with the channel</td>
          </tr>
          <tr>
            <td>Busy</td><td>Time the radio channel was blocked for an arbitrary reason</td>
          </tr>
          <tr>
            <td>RX</td><td>Time the radio was receiving data</td>
          </tr>
          <tr>
            <td>TX</td><td>Time the radio was transmitting data</td>
          </tr>
        </tbody>
      </table>
      <t>A radio that doesn't track the time for receiving (RX) and transmitting (TX) data explicitly MUST add all time intervals the radio channel is not free into the Radio Channel Busy Data Item.</t>
      <t>The time the radio channel has been free can be calculated by substracting the values of Busy, Rx and Tx from the value provided by the Radio Active Channel Data Item. By tracking these values over time the router can calculate the channel usage statistics for routing metrics or report the received value to a management layer.</t>
      <t>A radio that is using independent channel resources for each neighbor (e.g. by beam forming) can also track and report channel usage time for each DLEP neighbor.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Data Items</name>
      <t>All four Data Items of this extension can be used both as Session specific and Destination specific metrics. If the radio is only tracking channel usage on the interface level, the Data Items are used in SessionInitResponse and SessionUpdate messages. If the radio also is tracking channel usage for each Destination, they are also used in DestinationUp, DestinationUpdate and DestinationAnnounceResponse messages.</t>
      <t>All four Data Items contain a single 64 bit unsigned integer time interval measured in nanoseconds as the TLV value.</t>
      <section numbered="true" toc="default">
        <name>Radio Channel Active Data Item</name>
        <t>Radio Channel Active Item contains information about how long the radio channel has been active. This provides the router with a reference to interpret the values provided by the other three Data Items. Because of this the value in this item must be larger than the values in the other three Data Items this extensions defines together.</t>
        <t>This Data Item is mandatory for SessionInitResponse messages.</t>
        <t>The format of the Radio Channel Active Data Item is:</t>
        <figure anchor="channel_active">
          <artwork align="left" name="" type="" 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                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+                          Active Time                          +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
          ]]></artwork>
        </figure>
        <dl>
          <dt>Data Item Type:</dt><dd>TBD1</dd>
          <dt>Length:</dt><dd>8</dd>
          <dt>Active Time:</dt><dd>Time in nanoseconds since the channel has been in use.</dd>
        </dl>
      </section>
      <section numbered="true" toc="default">
        <name>Radio Channel Busy Data Item</name>
        <t>Radio Channel Busy Item contains information how about much time the radio channel has been busy, not including the time provided in the Channel Rx and Chanel Tx Data Item.</t>
        <t>The format of the Radio Channel Busy Data Item is:</t>
        <figure anchor="channel_busy">
          <artwork align="left" name="" type="" 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                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+                           Busy Time                           +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
          ]]></artwork>
        </figure>
        <dl>
          <dt>Data Item Type:</dt><dd>TBD2</dd>
          <dt>Length:</dt><dd>8</dd>
          <dt>Busy Time:</dt><dd>Time in nanoseconds the channel was busy during its active time.</dd>
        </dl>
      </section>
      <section numbered="true" toc="default">
        <name>Radio Channel Rx Data Item</name>
        <t>Radio Channel Rx Item contains information about how much time the local radio has been receiving data from other radios.</t>
        <t>The format of the Radio Channel Rx Data Item is:</t>
        <figure anchor="channel_rx">
          <artwork align="left" name="" type="" 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                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+                            Rx Time                            +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
          ]]></artwork>
        </figure>
        <dl>
          <dt>Data Item Type:</dt><dd>TBD3</dd>
          <dt>Length:</dt><dd>8</dd>
          <dt>Rx Time:</dt><dd>Time in nanoseconds the local radio has received data from other radios during its active time.</dd>
        </dl>
      </section>
      <section numbered="true" toc="default">
        <name>Radio Channel Tx Data Item</name>
        <t>Radio Channel Tx Item contains information about how much time the local radio has been transmitting data to other radios.</t>
        <t>The format of the Radio Channel Tx Data Item is:</t>
        <figure anchor="channel_tx">
          <artwork align="left" name="" type="" 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                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+                            Tx Time                            +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
          ]]></artwork>
        </figure>
        <dl>
          <dt>Data Item Type:</dt><dd>TBD4</dd>
          <dt>Length:</dt><dd>8</dd>
          <dt>Tx Time:</dt><dd>Time in nanoseconds the local radio has transmitted data to other radios during its active time.</dd>
        </dl>
      </section>
    </section>
    <section numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>The extension introduces a new Data Item for DLEP.
        The extension does not inherently introduce any additional
        vulnerabilities above those documented in
        <xref target="RFC8175" format="default"/>.
        The approach taken to security in that document applies
        equally when running the extension defined in this document.</t>
    </section>
    <section numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>As described below, IANA has assigned five values per this document.
        All assignments are to registries defined by
        <xref target="RFC8175" format="default"/>.</t>
      <section numbered="true" toc="default">
        <name>Data Item Type Values</name>
        <t>IANA has assigned the following value in the "Data Item Type Values" registry defined by <xref target="RFC8175" format="default"/>, chapter 15.4.
          The new values are in the range with the "Specification Required"
          <xref target="RFC8126" format="default"/>
          policy:</t>
        <table>
          <name>Data Item Type Values</name>
          <thead>
            <tr>
              <td>Type Code</td><td>Description</td>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>TBD1</td><td>Radio Channel Active</td>
            </tr>
            <tr>
              <td>TBD2</td><td>Radio Channel Busy</td>
            </tr>
            <tr>
              <td>TBD3</td><td>Radio Channel Rx</td>
            </tr>
            <tr>
              <td>TBD4</td><td>Radio Channel Tx</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section numbered="true" toc="default">
        <name>Extension Type Values</name>
        <t>IANA has assigned the following value in the "Extension Type Values" registry defined by <xref target="RFC8175" format="default"/>, chapter 15.6.
          The new value is in the range with the  "Specification Required"
          <xref target="RFC8126" format="default"/> policy:</t>
        <table>
          <name>DLEP Extension Types</name>
          <thead>
            <tr>
              <td>Code</td><td>Description</td>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>TBD5</td><td>Radio Channel Utilization</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
      <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
      <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8175.xml"/>
    </references>
    <references>
      <name>Informative References</name>
      <xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml"/>
    </references>
</back>
</rfc>
