<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">

<!-- Compiles with XML2RFC v3 https://xml2rfc.tools.ietf.org/cgi-bin/xml2rfc-dev.cgi -->

<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="no"?>
<?rfc subcompact="no"?>
<?rfc authorship="yes"?>
<?rfc tocappendix="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info" docName="draft-pthubert-raw-architecture-00" ipr="trust200902" obsoletes="" updates="" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 2.32.0 -->
  <front>
    <title abbrev="RAW Architecture">Reliable and Available Wireless Architecture</title>
    <seriesInfo name="Internet-Draft" value="draft-pthubert-raw-problem-statement-05"/>
    <author initials="P" surname="Thubert" fullname="Pascal Thubert" role="editor">
      <organization abbrev="Cisco Systems">Cisco Systems, Inc</organization>
      <address>
        <postal>
          <street>Building D</street>
          <street>45 Allee des Ormes - BP1200 </street>
          <city>MOUGINS - Sophia Antipolis</city>
          <code>06254</code>
          <country>FRANCE</country>
        </postal>
        <phone>+33 497 23 26 34</phone>
        <email>pthubert@cisco.com</email>
      </address>
    </author>
    <author initials="G.Z." surname="Papadopoulos" fullname="Georgios Z. Papadopoulos">
      <organization>IMT Atlantique</organization>
      <address>
        <postal>
          <street>Office B00 - 114A</street>
          <street>2 Rue de la Chataigneraie</street>
          <city>Cesson-Sevigne - Rennes</city>
          <code>35510</code>
          <country>FRANCE</country>
        </postal>
        <phone>+33 299 12 70 04</phone>
        <email>georgios.papadopoulos@imt-atlantique.fr</email>
      </address>
    </author>
    <date/>
    <area>Routing Area</area>
    <workgroup>RAW</workgroup>
    <keyword>Draft</keyword>
    <abstract>
      <t>Due to uncontrolled interferences, including the self-induced multipath fading, deterministic networking can only be approached on wireless links. The radio conditions may change -way- faster than a centralized routing can adapt and reprogram, in particular when the controller is distant and connectivity is slow and limited. RAW separates the routing time scale at which a complex path is recomputed from the forwarding time scale at which the forwarding decision is taken for an individual packet. RAW operates at the forwarding time scale. The RAW problem is to decide, within the redundant solutions that are proposed by the routing, which will be used for each individual packet to provide a DetNet service while minimizing the waste of resources.
      </t>
    </abstract>
  </front>
  <middle>

    <section numbered="true" toc="default">
      <name>Introduction</name>
      <t>
   Bringing determinism in a packet network means eliminating the statistical
   effects of multiplexing that result in probabilistic jitter and loss.
   This can be approached with a tight control of the physical resources to
   maintain the amount of traffic within a budgetted volume of data per unit of
   time that fits the physical capabilities of the underlying technology, and
   the use of time-shared resources (bandwidth and buffers) per circuit, and/or
   by shaping and/or scheduling the packets at every hop.

      </t>
      <t>
   Wireless networks operate on a shared medium where uncontrolled interference,
   including the self-induced multipath fading, adds another dimension to the
   statistical effects that affect the delivery. Scheduling transmissions can
   alleviate those effects by leveraging diversity in the spatial, time, code,
   and frequency domains, and provide a Reliable and Available service while
   preserving energy and optimizing the use of the shared spectrum.

      </t>
      <t>
   Deterministic Networking is an attempt to mostly eliminate packet loss for a
   committed bandwidth with a guaranteed worst-case end-to-end latency, even
   when co-existing with best-effort traffic in a shared network.
   This innovation is enabled by recent developments in technologies including
   IEEE 802.1 TSN (for Ethernet LANs) and IETF DetNet (for wired IP networks).
   It is getting traction in various industries including manufacturing, online
   gaming, professional A/V, cellular radio and others, making possible
   many cost and performance optimizations.
      </t>
      <t>
   The <xref target="RFC8655">"Deterministic Networking Architecture"</xref> is
   composed of three planes: the Application (User) Plane, the Controller Plane,
   and the Network Plane. Reliable and Available Wireless (RAW) extends DetNet
   to focus on issues that are mostly a co"ern on wireless links, and inherits
   the architecture and the planes. A RAW Network Plane is thus a Network Plane
   inherited by RAW from DetNet, composed of one or multiple hops of homogeneous
   or heterogeneous technologies, e.g. a Wi-Fi6 Mesh or one-hop CBRS access links
   federated by a 5G backhaul.
   </t><t>
   RAW networking aims at providing highly available and reliable end-to-end
   performances in a network with scheduled wireless segments. Uncontrolled
   interference and transmission obstacles may impede the transmission, and
   techniques such as beamforming with Multi-User MIMO can only alleviate some
   of those issues, so the term "deterministic" is usually not associated with
   short range radios, in particular in the ISM band. This uncertainty places
   limits to the amount of traffic that can be transmitted on a link while
   conforming to a RAW Service Level Agreement (SLA) that may vary rapidly.
   </t><t>
   The wireless and wired media are fundamentally different at the physical
   level, and while the generic <xref target="RFC8557">"Deterministic Networking
   Problem Statement"</xref> applies to both the wired and the wireless media,
   the methods to achieve RAW must extend those used to support time-sensitive
   networking over wires, as a RAW solution has to address less consistent
   transmissions, energy conservation and shared spectrum efficiency.

      </t>
      <t>
   The development of RAW technologies has been lagging behind deterministic
   efforts for wired systems both at the IEEE and the IETF. But recent efforts
   at the IEEE and 3GPP indicate that wireless is finally catching up at the
   lower layer and that it is now possible for the IETF to extend DetNet for
   wireless segments that are capable of scheduled wireless transmissions.

      </t>
      <t>
   The intent for RAW is to provide DetNet elements that are specialized for
   short range radios. From this inheritance, RAW stays agnostic to the radio
   layer underneath though the capability to schedule transmissions is assumed.
   How the PHY is programmed to do so, and whether the radio is single-hop
   or meshed, are unknown at the IP layer and not part of the RAW abstraction.

      </t>
      <t>
   Still, in order to focus on real-worlds issues and assert the feasibility of
   the proposed capabilities, RAW will focus on selected technologies that can
   be scheduled at the lower layers: IEEE Std. 802.15.4 timeslotted channel
   hopping (TSCH), 3GPP 5G ultra-reliable low latency communications (URLLC),
   IEEE 802.11ax/be where 802.11be is extreme high throughput (EHT), and L-band
   Digital Aeronautical  Communications System (LDACS).
   See <xref target="I-D.thubert-raw-technologies" format="default"/> for more.

      </t>
      <t>
   The establishment of a path is not in-scope for RAW. It may be the product of
   a centralized Controller Plane as described for DetNet. As opposed to wired
   networks, the action of installing a path over a set of wireless links
   may be very slow relative to the speed at which the radio conditions vary,
   and it makes sense in the wireless case to provide redundant forwarding
   solutions along a complex path and to leave it to the Network Plane to
   select which of those forwarding solutions are to be used for a given packet
   based on the current conditions.

      </t>
      <t>
   RAW distinguishes the longer time scale at which routes are computed from the
   the shorter forwarding time scale where per-packet decisions are made.
   RAW operates at the forwarding time scale on one DetNet flow over one path
   that is preestablished and installed by means outside of the scope of RAW.
   The scope of the RAW WG comprises Network plane protocol elements such as OAM
   and in-band control to improve the RAW operation at the Service and at the
   forwarding sub-layers, e.g., controlling whether to use packet replication,
   Hybrid ARQ and coding, with a constraint to limit the use of redundancy when
   it is really needed, e.g., when a spike of loss is observed.
   This is discussed in more details in <xref target="rou" format="default"/>
   and the next sections.
      </t>
    </section>
    <!-- Introduction -->

    <!--  000000000000000000000    -->

    <section numbered="true" toc="default">
      <name>Terminology</name>

    <t>
      RAW defines the following terms:
    </t>
    <dl>
        <dt>PAREO:</dt><dd>Packet (hybrid) ARQ, Replication, Elimination and
        Ordering. PAREO is a superset Of DetNet's PREOF that includes
        radio-specific techniques such as short range broadcast, MUMIMO,
        constructive interference and overhearing, which can be
        leveraged separately or combined to increase the reliability.
        </dd>
        <dt>Flapping:</dt><dd>In the context of RAW, a link flaps when the
        wireless connectivity is interrupted for short transient times,
        typically of a subsecond duration.
        </dd>
    </dl>
    <t>RAW reuses terminology defined for DetNet in the <xref target="RFC8655">
    "Deterministic Networking Architecture"</xref>, e.g., PREOF for Packet
    Replication, Elimination and Ordering Functions.
    </t><t>
    RAW also reuses terminology defined for 6TiSCH in <xref target=
    "I-D.ietf-6tisch-architecture" format="default"/> such as the term Track.
    6TiSCH defined a Track as a complex path with associated PAREO operations.
    </t>

    <t>
    This document reuses terms that are well-defined in the context of
    automation to networking and packet delivery, in particular for reliability
    and availability. In the context of the RAW work, they are defined as
    follows:
    </t>
    <dl>
        <dt>Reliability:</dt><dd>Reliability is a measure of the probability
        that an item will perform its intended function for a specified
        interval under stated conditions. For RAW, the service that is expected
        is delivery within a bounded latency and a failure is when the packet
        is either lost or delivered too late.  RAW expresses reliability in
        terms of Mean Time Between Failure (MTBF) and Maximum Consecutive
        Failures (MCF).</dd>
        <dt>Availability:</dt><dd>Availability is a measure of the relative
        amount of time where a path operates in stated condition, in other words
        (uptime)/(uptime+downtime). Because a serial wireless path may not be
        good enough to provide the required availability, and even 2 parallel
        paths may not be over a longer period of time, the RAW availability
        implies a path that is a lot more complex than what DetNet typically
        envisages (a Track).
        </dd>
    </dl>
    </section>
    <!-- Terminology -->

    <!--  000000000000000000000    -->


    <section numbered="true" toc="default">
      <name>Use Cases and Requirements Served</name>
      <t>
   <xref target="RFC8578" format="default"/> presents a number of wireless use
   cases including Wireless for Industrial Applications, Pro-Audio and SmartGrid.
   <xref target="I-D.bernardos-raw-use-cases" format="default"/> adds a number
   of use cases that demonstrate the need for RAW capabilities in new use cases
   including Pro-Gaming and drones.
      </t>
      <t>
    The use cases can be abstracted in two families, radio access protection and
    Track protection in a wireless mesh.
      </t>




    <section numbered="true" toc="default">
      <name>Radio Access Protection</name>

<t>
    In order to maintain the committed reliability at all times, a wireless
    station may use more than one Radio Access Network (RAN) in parallel.
</t>
<t>
    The RANs may be heterogeneous, e.g.,
    5G <xref target="I-D.farkas-5g-raw"/> and
    Wi-Fi <xref target="I-D.thubert-raw-technologies"/> for high-speed
    communication, in which case a Layer-3 abstraction becomes useful to select
    which of the RANs are used at a particular point of time, and the amount of
    traffic that is distributed over each RAN.
</t>
<t> The idea is that the rest of the path to the destination(s) is protected
    separately (e.g., uses non-congruent paths) and/or is a lot more reliable,
    e.g., wired. In that case, RAW observes reliability of the path through each
    of the RANs but only acts on the first hop.
</t>

             <figure anchor="Figranp">
              <name>Radio Access Protection</name>
       <artwork align="center" name="" type="" alt="">
                                   ***   *
                RAN 1  -----  ***     **  **
             /              *    **        ****
   +----+  /              *           **      ***
   |    |-                *                      **
   |    |--zzz- RAN 2 -- *      Internet       ***
   |    |-                 *                  ***
   +----+  \                *              ***
             \               ***   **     **
                RAN n  --------  ***   ***

zzz = flapping now
       </artwork>
       </figure>

    </section>
    <!--Radio Access Protection-->



    <section numbered="true" toc="default">
      <name>Track Protection in a Wireless Mesh</name>

<t>
A Track
</t>
       <figure anchor="Figtrk">
              <name>Track Protection</name>
       <artwork align="center" name="" type="" alt="">

         A-------B-------C-----D
        /  \   /       /        \
       I ----M-------N--zzzzz--- E
        \      \   /            /
         P--zzz--Q-------------R

zzz = flapping now
       </artwork>
       </figure>
    </section>
    <!--Track Protection in a Wireless Mesh-->



    </section>
    <!-- Use Cases and Requirements Served -->

    <!--  000000000000000000000    -->

    <section anchor="cons" numbered="true" toc="default">
      <name>RAW Architecture Considerations</name>

    <!--  11111111111111111111    -->

    <section numbered="true" toc="default">
      <name>Related Work at The IETF</name>
      <t>RAW intersects with protocols or practices in development at the IETF
      as follows:
      </t>
      <ul spacing="normal">
        <li>
      The Dynamic Link Exchange Protocol (DLEP)
      <xref target="RFC8175" format="default"/> from
      <xref target="MANET" format="default"/> can be leveraged at each hop
      to derive generic radio metrics (e.g., based on LQI, RSSI, queueing delays
      and ETX) on individual hops.
      </li>
        <li>
      Operations, Administration and Maintenance (OAM) work at
      <xref target="DetNet" format="default"/> such as
      <xref target="I-D.mirsky-detnet-ip-oam" format="default"/>
      for the case of the IP Data Plane observes the state of DetNet paths,
      typically MPLS and IPv6 pseudowires
      <xref target="I-D.ietf-detnet-data-plane-framework" format="default"/>,
      in the direction of the traffic. RAW needs feedback that flows on the
      reverse path and gathers instantaneous values from the radio receivers at
      each hop to inform back the source and replicating relays so they can make
      optimized forwarding decisions.
      The work named ICAN may be related as well.
      </li>
        <li>
      <xref target="BFD" format="default"/> detect faults in the path between an
      ingress and an egress forwarding engines, but is unaware of the complexity
      of a path with replication, and expects bidirectionality. BFD considers
      delivery as success whereas with RAW the bounded latency can be as
      important as the delivery itself.
      </li>
        <li>
      <xref target="SPRING" format="default"/> and
      <xref target="BIER" format="default"/> define in-band
      signaling that influences the routing when decided at the head-end on the
      path. There's already one RAW-related draft at BIER
      <xref target="I-D.thubert-bier-replication-elimination" format="default"/>
      more may follow.
      RAW will need new in-band signaling when the decision is distributed,
      e.g., required chances of reliable delivery to destination within latency.
      This signaling enables relays to tune retries and replication to meet the required SLA.
      </li>
        <li>
      <xref target="CCAMP" format="default"/> defines protocol-independent
      metrics and parameters
      (measurement attributes) for describing links and paths that are required
      for routing and signaling in technology-specific networks. RAW would be a
      source of requirements for CCAMP to define metrics that are significant to
      the focus radios.
      </li>
      </ul>
    </section>
    <!--Related Work at The IETF   -->

    <!--  111111111111111111111    -->

    <section numbered="true" toc="default">
      <name>Prerequisites</name>
      <t>
   A prerequisite to the RAW work is that an end-to-end routing function
   computes a complex sub-topology along which forwarding can happen between a
   source and one or more destinations. For 6TiSCH, this is a Track. The concept
   of Track is specified in the 6TiSCH Architecture
   <xref target="I-D.ietf-6tisch-architecture" format="default"/>.
   Tracks provide a high degree of redundancy and diversity and enable DetNet
   PREOF, end-to-end network coding, and possibly radio-specific abstracted
   techniques such as ARQ, overhearing, frequency diversity, time slotting, and
   possibly others.
      </t>
      <t>
   How the routing operation computes the Track is out of scope for RAW.
   The scope of the RAW operation is one Track, and the goal of the RAW
   operation is to optimize the use of the Track at the forwarding timescale
   to maintain the expected service while optimizing the usage of constrained
   resources such as energy and spectrum.
      </t>
      <t>
   Another prerequisite is that an IP link can be established over the radio
   with some guarantees in terms of service reliability, e.g., it can be relied
   upon to transmit a packet within a bounded latency and provides a guaranteed
   BER/PDR outside rare but existing transient outage windows that can last from
   split  seconds to minutes. The radio layer can be programmed with abstract
   parameters, and can return an abstract view of the state of the Link to help
   forwarding decision (think DLEP from MANET). In the layered approach, how the
   radio manages its PHY layer is out of control and out of scope. Whether it is
   single hop or meshed is also unknown and out of scope.

      </t>
    </section>
    <!-- Prerequisites -->

    <!--  111111111111111111111    -->

    <section anchor="rou" numbered="true" toc="default">
      <name>Routing Time Scale vs. Forwarding Time Scale</name>
      <t>
   With DetNet, the end-to-end routing can be centralized and can reside
   outside the network. In wireless, and in particular in a wireless mesh, the
   path to the controller that performs the route computation and maintenance
   expensive in terms of critical resources such as air time and energy.
      </t><t>
   Reaching to the routing computation can also be slow in regards to the speed
   of events that affect the forwarding operation at the radio layer. Due to the
   cost and latency to perform a route computation, the controller plane is not
   expected to be sensitive/reactive to transient changes. The abstraction of a
   link at the routing level is expected to use statistical operational metrics
   that aggregate the behavior of a link over long periods of time, and
   represent its availability as shades of gray as opposed to either up or down.
      </t>

             <figure anchor="Figcontrol">
              <name>Time Scales</name>
       <artwork align="center" name="" type="" alt="">
               +----------------+
               |  Controller    |
               |    (PCE)       |
               |  [Routing ]    |
               |  [Function]    |
               +----------------+
                       ^
                       |
                     Slow
                       |
   _-._-._-._-._-._-.  |  ._-._-._-._-._-._-._-._-._-._-._-._-
 _-._-._-._-._-._-._-. | _-._-._-._-._-._-._-._-._-._-._-._-
                       |
                   Expensive
                ....   |  .......
            ....    .  | .       .....
         ....          v             ...
       ..   A-------B-------C---D     ..
    ...    /  \   /       /      \     ..
   .      I ----M-------N--zzz-- E  ..
   ..      \      \   /         /     .
     ..     P--zzz--Q----------R   ..
       ..                         ..
         .......               ...
                ...............
  zzz = flapping now
       </artwork>
       </figure>
      <t>
   In the case of wireless, the changes that affect the forwarding decision can
   happen frequently and often for short durations, e.g., a mobile object moves
   between a transmitter and a receiver, and will cancel the line of sight
   transmission for a few seconds, or a radar measures the depth of a pool and
   interferes on a particular channel for a split second.
      </t>
      <t>
   There is thus a desire to separate the long term computation of the route and
   the short term forwarding decision. In such a model, the routing operation
   computes a complex Track that enables multiple Non-Equal Cost Multi-Path
   (N-ECMP) forwarding solutions, and leaves it to the forwarding plane to make
   the per-packet decision of which of these possibilities should be used.
      </t>
      <t>
   In the case of wires, the concept is known in traffic engineering where an
   alternate path can be used upon the detection of a failure in the main path,
   e.g., using OAM in MPLS-TP or BFD over a collection of SD-WAN tunnels. RAW
   formalizes a forwarding time scale that is an order(s) of magnitude shorter
   than the controler plane routing time scale, and separates the protocols
   and metrics that are used at both scales.
   Routing can operate on long term statistics such as delivery
   ratio over minutes to hours, but as a first approximation can ignore flapping.
   On the other hand, the RAW forwarding decision is made at packet speed, and
   uses information that must be pertinent at the present time for the current
   transmission.
      </t>

    </section >
    <!--Routing Time Scale vs. Forwarding Time Scale-->

    <!--  11111111111111111111    -->

    <section numbered="true" toc="default">
      <name>Track Source-Routed vs. Distributed RAW Decision</name>
      <t>
   Within a large routed topology, the route-over mesh operation builds a
   particular complex Track with one source and one or more destinations; within
   the Track,
   packets may follow different paths and may be subject to RAW forwarding
   operations that include replication, elimination, retries, overhearing and
   reordering.
      </t>
      <t>
   The RAW forwarding decisions include the selection of points of replication
   and elimination, how many retries can take place, and a limit of validity for
   the packet beyond which the packet should be destroyed rather than forwarded
   uselessly further down the Track.
      </t>
      <t>
   The decision to apply the RAW techniques must be done quickly, and depends on
   a very recent and precise knowledge of the forwarding conditions within the
   complex Track. There is a need for an observation method to provide the RAW
   forwarding plane with the specific knowledge of the state of the Track for
   the type of flow of interest (e.g., for a QoS level of interest). To observe
   the whole Track in quasi real time, RAW will consider existing tools such as
   L2-triggers, DLEP, BFD and in-band and out-of-band OAM.
      </t>
      <t>
   One possible way of making the RAW forwarding decisions is to make them all
   at the ingress and express them in-band in the packet, which requires new
   loose or strict Hop-by-hop signaling. To control the RAW forwarding operation
   along a Track for the individual packets, RAW may leverage and extend known
   techniques such as DetNet tagging, Segment Routing (SRv6) or BIER-TE such as
   done with
   <xref target="I-D.thubert-bier-replication-elimination" format="default"/>.
      </t>
      <t>
   An alternate way is to enable each forwarding node to make the RAW forwarding
   decisions for a packet on its own, based on its knowledge of the expectation
   (timeliness and reliability) for that packet and a recent observation of the
   rest of the way across the possible paths within the Track. Information about
   the service should be placed in the packet and matched with the forwarding
   node's capabilities and policies.
      </t>
      <t>
   In either case, a per-flow state is installed in all intermediate nodes to
   recognize the flow and determine the forwarding policy to be applied.
      </t>
    </section>
    <!-- Track Source-Routed vs. Distributed RAW Decision -->

    <!--  11111111111111111111    -->

   </section>

   <!--RAW Architecture Considerations-->

    <!--  000000000000000000000    -->

    <section numbered="true" toc="default">
      <name>RAW Architecture Components</name>

    <!--  111111111111111111111    -->

    <section numbered="true" toc="default">
      <name>Reliability and Availability</name>
    </section>
    <!--Reliability and Availability-->

    <!--  111111111111111111111    -->

    <section numbered="true" toc="default">
      <name>Wireless Tracks</name>
   <t>
    The  <xref target="I-D.ietf-6tisch-architecture">"6TiSCH Architecture"</xref>
    introduces the concept of Track a a possibly complex path with the PAREO
    functions operated within.</t>

    <t>
    A simple track is composed of a direct sequence of reserved hops to ensure
    the transmission of a single packet from a source node to a destination node
    across a multihop path.
    </t>
    <t>
        A Complex Track is designed as a directed acyclic graph from a source node
        towards a destination node to support multi-path forwarding, as introduced in
        <xref target="I-D.ietf-6tisch-architecture">"6TiSCH Architecture"</xref>.
        By employing Packet Replication and Elimination (PRE) functions
        <xref target="RFC8655"/>, several paths may be computed, and these paths
        may be more or less independent. For example, a complex Track may
        branch off and rejoin over non-congruent paths (branches).
    </t>

    <t>
        Some more details for Deterministic Network
        PRE techniques are presented in the following Section.
    </t>

</section>
      <!--Wireless Tracks-->

    <!--  111111111111111111111    -->

    <section numbered="true" toc="default">
      <name>PAREO Functions</name>

    <t>
        In a nutshell, Packet Replication and Elimination (PRE) establishes several paths in a
        network to provide redundancy and parallel transmissions to
        bound the end-to-end delay to traverse the network.
        Optionally, promiscuous listening between paths is possible, such that the nodes
        on one path may overhear transmissions along the other path.
        Considering the scenario shown in <xref
        target="fig_ladder"/>,
        many different paths are possible for S to reach R. A simple
        way to benefit from this topology could be to use the
        two independent paths via nodes A, C, E and via B, D, F.  But
        more complex paths are possible by interleaving transmissions
        from the lower level of the path to the upper level.
    </t>


    <t>
         PRE may also take advantage of
         the shared properties of the wireless medium to compensate for the
         potential loss that is incurred with radio transmissions.
         For instance, when the source sends to A, B may listen also and
         get a second chance to receive the frame without an
         additional transmission. Note that B would not have to listen if it
         already received that particular frame at an earlier timeslot in a dedicated transmission towards B.
<!-- [->] This is assuming some sort of implicit knowledge in B. Not sure if this is  -->
<!-- possible without specific signaling.   -->
<!-- [GP] Yes, we may need additional 6P transactions from the source to B, or  -->
<!-- multicast 6P transaction from the source to both A and B. However, this  -->
<!-- need to be discussed and defined. We have referred to these requirements in the "Requirements Related to Cell Reservation" section in the upcoming version.  (DONE) -->
    </t>


      <figure anchor="fig_ladder" align="center" title="A Typical Ladder Shape with Two Parallel Paths Toward the Destination">
         <artwork align="center"><![CDATA[

                 (A)   (C)   (E)

   source (S)                       (R) (root)

                 (B)   (D)   (F)

        ]]></artwork>
     </figure>

    <t>
        The PRE model can be implemented in both centralized and distributed scheduling
        approaches.
        In the centralized approach, a Path Computation Element (PCE) scheduler calculates
        the routes and schedules the communication among the nodes along a circuit such
        as a Label switched path.
        In the distributed approach, each node selects its route to the destination,
        typically using a source routing header.
        <!-- This specification focuses on the distributed path diversity. -->
        In both cases, at each node in the paths, a default parent and alternative parent(s) should
        be selected to set up complex tracks.
    </t>



    <t>
        In the following Subsections, all the required operations
        defined by PRE, namely, Alternative Path Selection, Packet Replication, Packet
        Elimination and Promiscuous Overhearing, are described.
    </t>



<section title="Packet Replication">

    <t>
        The objective of PRE is to provide deterministic networking properties:
        high reliability and bounded latency.
        To achieve this goal, determinism in every hop of the forwarding paths MUST be
        guaranteed.
<!-- NM - Not clear what is a level. Not clear to me if it is a "should be"-->
<!-- GP: is it clear now? -->
        By employing a Packet Replication procedure, each node forwards
        a copy of each data packet to multiple parents: its Default Parent (DP) and multiple Alternative Parents (APs).
        To do so, each node (i.e., source and intermediate node) transmits the
        data packet multiple times in unicast to each parent.
        For instance, in <xref target="fig_replication"/>, the source node S is
        transmitting the packet to both parents, nodes A and B, in two different
        timeslots within the same TSCH slotframe. An example TSCH schedule is shown in <xref target="fig_replication_schedule"/>.
        Thus, the packet eventually obtains parallel paths to the destination.
    </t>


        <figure anchor="fig_replication" align="center"
            title="Packet Replication: S transmits twice the same data packet, to its DP
            (A) and to its AP (B).">
            <artwork align="center"><![CDATA[

               ===> (A) => (C) => (E) ===
             //        \\//   \\//       \\
   source (S)          //\\   //\\         (R) (root)
             \\       //  \\ //  \\      //
               ===> (B) => (D) => (F) ===

            ]]></artwork>
        </figure>

        <figure anchor="fig_replication_schedule" align="center"
            title="Packet Replication: Sample TSCH schedule">
            <artwork align="center"><![CDATA[
                                Timeslot
+---------++------+------+------+------+------+------+------+
| Channel || 0    | 1    | 2    | 3    | 4    | 5    | 6    |
+---------++======+======+======+======+======+======+======+
| 0       || S->A | S->B | B->C | B->D | C->F | E->R | F->R |
+---------++------+------+------+------+------+------+------+
| 1       ||      | A->C | A->D | C->E | D->E | D->F |      |
+---------++------+------+------+------+------+------+------+

            ]]></artwork>
        </figure>

<!-- [XV] here you are only considering duplication at the source. While would be better IMHO to duplicate before those links that show lower performance. Would you also consider duplication at inner hops?  -->
<!-- [GP] Yes, definitely, there is replication (duplication) at inner hops.  -->
<!-- For instance, A will transmit both to its default parent C and alternative B. -->
<!-- The Figure 2 and the text in 4.1 is updated. (Modified, DONE) -->
<!-- As far as only duplicating at lower performance links, this is a very good point and a nice optimisation target. This needs to be discussed further -->

<!-- [GP] Do you think a Figure with the TSCH schedule representation would be helpful?         -->
<!-- [RK] Yes, I do. Added  fig_replication_schedule -->

</section>



<section title="Packet Elimination">

    <t>
        The replication operation increases the traffic load in the
        network, due to packet duplications.  Thus, a Packet Elimination
        operation SHOULD be applied at each RPL DODAG level to reduce
        the unnecessary traffic. To this aim, once a node receives the
        first copy of a data packet, it discards the subsequent copies. <!-- see Figure X
        (TODO) --> Because the first copy that reaches a node is the
        one that matters, it is the only copy that will be
        forwarded upward. Then, once a node performs the Packet Elimination operation,
        it will proceed with the Packet Replication operation to forward the packet
        toward the RPL DODAG Root.
<!-- [xv] Will this node duplicate it again? -->
<!-- [GP] Yes, it will replicate when it will forward it. Text is updated.(Modified, DONE) -->

<!-- [GP] Do you think a Figure is necessary, or it is clear enough?         -->
<!-- [RK] I think this is clear enough and no Figure is really needed here (DONE) -->
    </t>

</section>



<section title="Promiscuous Overhearing">

    <t>
        Considering that the wireless medium is broadcast by nature, any neighbor of
        a transmitter may overhear a transmission.
        By employing the Promiscuous Overhearing operation, a DP and some AP(s) eventually have more
        chances to receive the data packets.
        In <xref target="fig_overhearing"/>, when node A is transmitting to its DP
        (node C), the AP (node D) and its sibling (node B) may decode this data packet as
        well.
        As a result, by employing corellated paths, a node may have multiple
        opportunities to receive a given data packet.
        This feature not only enhances the end-to-end reliability but also it reduces the
        end-to-end delay and increases energy efficiency.
    </t>


        <figure anchor="fig_overhearing" align="center"
            title="Unicast to DP with Overhearing: by employing Promiscuous Overhearing,
            DP, AP and the sibling nodes have more opportunities to receive the same data
            packet.">
            <artwork align="center"><![CDATA[

               ===> (A) ====> (C) ====> (E) ====
             //     ^ | \\                      \\
   source (S)       | |   \\                      (R) (root)
             \\     | v     \\                  //
               ===> (B) ====> (D) ====> (F) ====

            ]]></artwork>
        </figure>

</section>



</section>
      <!--PAREO Functions-->

    <!--  111111111111111111111    -->

    </section>
    <!--RAW Architecture Components< -->

    <!--  000000000000000000000    -->

    <section anchor="SecurityConsiderations" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>
      </t>
    </section>
      <!--Security Considerations-->

    <!--  000000000000000000000    -->

    <section numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.
      </t>
    </section>
      <!--IANA Considerations-->

    <!--  000000000000000000000    -->

    <section numbered="true" toc="default">
      <name>ConTributors</name>
      <dl>
    <dt>Xavi Vilajosana:</dt><dd>Wireless Networks Research Lab, Universitat Oberta de Catalunya</dd>
    <dt>Remous-Aris Koutsiamanis:</dt><dd>IMT Atlantique</dd>
    <dt>Nicolas Montavont:</dt><dd>IMT Atlantique</dd>
      </dl>
    </section>
      <!--ConTributors-->


   <section><name>Acknowledgments</name>
   <t>The authors wish to thank
   </t>
   </section>
   <!-- Acknowledgments -->

    <!--  000000000000000000000    -->


  </middle>
  <back>
<displayreference   target="I-D.ietf-6tisch-architecture"             to="6TiSCH-ARCH"/>
<displayreference   target="I-D.thubert-raw-technologies"             to="RAW-TECHNOS"/>
<displayreference   target="I-D.bernardos-raw-use-cases"              to="RAW-USE-CASES"/>
<displayreference   target="I-D.thubert-bier-replication-elimination" to="BIER-PREF"/>
<displayreference   target="I-D.mirsky-detnet-ip-oam"                 to="DetNet-IP-OAM"/>
<displayreference   target="I-D.ietf-detnet-data-plane-framework"     to="DetNet-DP-FW"/>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>


<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-6tisch-architecture.xml"/>
<!-- 6TiSCH Architecture -->

<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.thubert-raw-technologies.xml"/>
<!-- Reliable and Available Wireless Technologies -->

<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.bernardos-raw-use-cases.xml"/>
<!-- RAW use cases -->

<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8578.xml"/>
<!-- Deterministic Networking Use Cases -->

<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8175.xml"/>
<!-- Dynamic Link Exchange Protocol (DLEP) -->

<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8557.xml"/>
<!-- DetNet problem statement -->

<xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8655.xml"/>
<!-- Deterministic Networking Architecture -->

      </references>
        <!--Normative References-->


      <references>
        <name>Informative References</name>


<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.thubert-bier-replication-elimination.xml"/>
<!-- BIER-TE extensions for Packet Replication and Elimination Function (PREF) and OAM -->

<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.mirsky-detnet-ip-oam.xml"/>
<!-- Operations, Administration and Maintenance (OAM) for Deterministic Networks (DetNet) with IP Data Plane -->

<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-detnet-data-plane-framework.xml"/>
<!-- DetNet Data Plane Framework -->

<xi:include href="http://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.farkas-5g-raw.xml"/>
<!-- RAW 5G-->


        <reference anchor="MANET" target="https://dataTracker.ietf.org/doc/charter-ietf-manet/">
          <front>
            <title> Mobile Ad hoc Networking</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="DetNet" target="https://dataTracker.ietf.org/doc/charter-ietf-detnet/">
          <front>
            <title>Deterministic Networking</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="SPRING" target="https://dataTracker.ietf.org/doc/charter-ietf-spring/">
          <front>
            <title>Source Packet Routing in Networking</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="BIER" target="https://dataTracker.ietf.org/doc/charter-ietf-bier/">
          <front>
            <title>Bit Indexed Explicit Replication</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        <!--
        <reference anchor="TEAS" target="https://dataTracker.ietf.org/doc/charter-ietf-teas/">
          <front>
            <title>Traffic Engineering Architecture and Signaling</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        -->
        <!--
        <reference anchor="PCE" target="https://dataTracker.ietf.org/doc/charter-ietf-pce/">
          <front>
            <title>Path Computation Element</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        -->
        <reference anchor="BFD" target="https://dataTracker.ietf.org/doc/charter-ietf-bfd/">
          <front>
            <title>Bidirectional Forwarding Detection</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
        <reference anchor="CCAMP" target="https://dataTracker.ietf.org/doc/charter-ietf-ccamp/">
          <front>
            <title>Common Control and Measurement Plane</title>
            <author>
              <organization>IETF</organization>
            </author>
            <date/>
          </front>
        </reference>
      </references>
        <!--Informative References-->
    </references>
  </back>
</rfc>
