<?xml version="1.0" encoding="UTF-8"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info" submissionType="IETF" docName="draft-bernardos-detnet-multi-domain-framework-00" ipr="trust200902">
<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>

  <front>
    <title abbrev="Multi-Domain DetNet Framework">A Control Plane Framework for Multi-Domain
      Deterministic Networking (DetNet)</title>
      
    <author fullname="Carlos J. Bernardos" initials="C.J." role="editor" surname="Bernardos">
      <organization>Universidad Carlos III de Madrid</organization>
      <address>
        <postal>
          <street>Av. Universidad 30</street>
          <city>Leganes</city>
          <region>Madrid</region>
          <code>28911</code>
          <country>Spain</country>
        </postal>
        <phone>+34 91624 6235</phone>
        <email>cjbc@it.uc3m.es</email>
        <uri>http://www.it.uc3m.es/cjbc</uri>
      </address>
    </author>
    
    <author fullname="Luis M. Contreras" initials="L." surname="Contreras">
      <organization abbrev="Telefonica" showOnFrontPage="true">Telefonica</organization>
      <address>
        <postal>
          <country>Spain</country>
        </postal>
        <email>luismiguel.contrerasmurillo@telefonica.com</email>
      </address>
    </author>

   <author fullname="Quan Xiong" initials="Q" surname="Xiong">
      <organization>ZTE Corporation</organization>
      <address>
        <postal>
          <street/>
         <city></city>
          <region/>
          <code/>
          <country>China</country>
        </postal>
        <phone></phone>
        <email>xiong.quan@zte.com.cn</email>
     </address>
    </author>	

    <author fullname="Alain Mourad"
            initials="A."
            surname="Mourad">
      <organization abbrev="InterDigital">
        InterDigital Europe
      </organization>
      <address>
        <email>Alain.Mourad@InterDigital.com</email>
        <uri>http://www.InterDigital.com/</uri>
      </address>
    </author>

    <area>Routing</area>

    <workgroup>DETNET WG</workgroup>
    
    <abstract>
      <t>Deterministic Networking (DetNet) provides the capability to carry specified unicast or
        multicast data flows for real-time applications with extremely low data loss rates and
        bounded latency over a path or network. As DetNet deployments expand, they will inevitably
        need to span multiple domains that may be under separate administrative or technological
        control. This creates a need for a control plane solution that can establish and maintain
        end-to-end DetNet services across these domain boundaries.</t>
      <t>This document defines a generic framework for a multi-domain DetNet control plane. It
        first establishes a working definition of a "DetNet Domain" for the purpose of path
        computation and control. It then describes two high-level architectural approaches for
        inter-domain path computation and resource reservation: a Hierarchical model and a
        peer-to-peer "stitching" model. While a Path Computation Element (PCE)-based realization is
        used as an illustrative example, the framework is designed to be applicable to any
        controller-plane technology that satisfies the stated functional requirements. This
        framework provides the foundation for more specific work on multi-domain DetNet
        solutions.</t>
    </abstract>
    
  </front>
  
  <middle>
  
    <section anchor="introduction" title="Introduction">
      <t>The Deterministic Networking (DetNet) architecture, as defined in <xref target="RFC8655"/>,
        provides a service for flows requiring bounded latency, and/or extremely low packet loss,
        and/or reliable service. The initial focus of DetNet has largely been on single-domain
        networks, where a single controller or administrative entity has full visibility and control
        over all network resources.</t>
      <t>However, many use cases, such as industrial automation, professional audio/video, and smart
        grids, require deterministic connectivity that spans multiple networks. These networks may
        be operated by different providers (administrative domains), utilize different underlying
        link-layer technologies (technological domains), or be structured as separate control areas
        for scalability.</t>
      <t>To support such scenarios, a control plane framework is needed to coordinate the
        establishment of end-to-end DetNet paths across domain boundaries. The DetNet Controller
        Plane Framework <xref target="I-D.ietf-detnet-controller-plane-framework"/> provides the
        basis for controller-plane operations; this document extends that work specifically to
        multi-domain scenarios.</t>
      <t>The framework defined here is intentionally technology-agnostic with respect to the
        controller-plane implementation. Centralized path computation elements, distributed
        controllers, Software-Defined Networking (SDN) controllers, and other approaches can all be
        mapped onto the architectural models described herein. The Path Computation Element (PCE)
        and its associated protocols <xref target="RFC4655"/> <xref target="RFC5440"/> are used
        as a concrete example throughout this document to illustrate how the framework can be
        realized, but they do not represent the only valid instantiation.</t>
      <t>This document proposes a foundational framework by:</t>
      <ul>
        <li>Defining what constitutes a "domain" in the context of multi-domain DetNet control.</li>
        <li>Describing high-level architectural models for managing multi-domain paths.</li>
        <li>Identifying key considerations for establishing and maintaining DetNet flows across
          domain boundaries.</li>
      </ul>
      <t>The goal is to establish the necessary foundational concepts before addressing specific
        technology implementations, such as multi-domain RAW (Reliable and Available Wireless) <xref
          target="I-D.bernardos-detnet-raw-multidomain"/>.</t>
    </section>
    
    <section anchor="terminology" title="Conventions and Terminology">
      <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>
      <t>This document uses the terminology defined in <xref target="RFC8655"/>. The following
        additional terms are used:</t>
      <dl>
        <dt>Domain Controller:</dt>
        <dd>A logical entity responsible for path computation and resource management within a
          single DetNet domain. A Domain Controller has full visibility into the topology and
          resources of its own domain. A PCE is one example of a technology that can fulfil the
          Domain Controller role.</dd>
        <dt>Hierarchical Controller:</dt>
        <dd>A logical entity that has an abstracted, partial view of multiple domains and is
          responsible for coordinating inter-domain path computation by interacting with the
          Domain Controllers of each constituent domain. A Parent PCE (P-PCE) in the H-PCE
          architecture <xref target="RFC6805"/> is one example of a Hierarchical Controller.</dd>
      </dl>
    </section>
    
    <section anchor="domain-definition" title="Defining a DetNet Domain">
      <t>For the purpose of multi-domain DetNet control, a clear definition of a "domain" is
        essential. A domain represents a collection of network resources (nodes, links) that are
        managed and controlled as a single entity for the purpose of DetNet path computation and
        resource allocation.</t>
        
      <section anchor="domain-characteristics" title="Domain Characteristics">
        <t>A DetNet domain is characterized by a set of network nodes that are subject to a single,
          consistent set of DetNet control and management policies. From a control plane
          perspective, this typically implies that:</t>
        <ul>
          <li>A single Domain Controller instance (or a coordinated set of redundant controllers)
            has complete topological visibility within the domain.</li>
          <li>This Domain Controller is responsible for computing paths and managing the allocation
            of DetNet-specific resources (e.g., buffer space, link schedules, queue reservations)
            for all nodes within that domain.</li>
          <li>There is a trusted relationship and a secure communication channel between the Domain
            Controller and all the nodes it controls within the domain.</li>
        </ul>
      </section>
      
      <section anchor="domain-scope" title="Scope of a DetNet Domain">
        <t>The boundaries of a DetNet domain can be defined based on several factors, which may
          overlap:</t>
        <dl>
          <dt>Administrative Domain:</dt>
          <dd>A set of network elements under the control of a single network operator or
            administrative entity. This is the most common interpretation. Inter-domain
            communication occurs when a path must cross from one operator's network to
            another's.</dd>
          <dt>Controller Domain:</dt>
          <dd>A domain is defined as the set of nodes controlled by a single Domain Controller
            instance. This is the primary definition used within this framework. A large
            administrative domain might be divided into multiple smaller controller domains for
            scalability.</dd>
          <dt>Technological Domain:</dt>
          <dd>A domain could be defined by the consistent use of a specific data plane technology
            (e.g., a TSN domain, a 3GPP 5G domain) or queuing mechanism (e.g., queuing solutions
            within the categories as per <xref target="I-D.ietf-detnet-dataplane-taxonomy"/>).
            While paths may cross technological boundaries, this document posits that this does not
            inherently define a control plane domain boundary. A single Domain Controller SHOULD be
            capable of managing a domain comprising multiple technologies. Similarly, the specific
            queuing mechanisms (e.g., <xref target="RFC9016"/>) supported by devices do not define
            a domain boundary; a single domain can contain devices supporting multiple queuing
            solutions, which can be used concurrently. The Domain Controller needs to select a
            specific queuing mechanism along the path for a DetNet flow within each
            domain.</dd>
        </dl>
        <!-- Carlos: This section requires further discussion. Is the primary definition of a domain
          being "a single controller's area of control" the right consensus point for the WG? We
          need to clearly state the assumptions for the rest of the document. -->
      </section>
      
    </section>
    
    <section anchor="architectures" title="Multi-Domain DetNet Architectures">
    
      <section anchor="use-case" title="Exemplary Use Case">
        <t>Consider the scenario depicted in the figure below, where a DetNet flow is established
          between a source S and a destination D. The path for the flow traverses three different
          domains. Domain 1 is a wired domain, which could for example be a TSN-based DetNet MPLS
          <xref target="RFC8964"/> or DetNet IP <xref target="RFC8939"/> network. Domain 2 is a
          wireless (RAW) domain. Domain 3 is again a wired domain. The RAW domain provides
          connectivity between the two wired domains. Note that this is just an example, and other
          combinations of wired/wireless domains could exist (e.g., a DetNet flow traversing a
          wired domain providing connectivity between two RAW domains).</t>
          
        <figure anchor="fig_scenario" title="Exemplary multi-domain scenario">
          <artwork align="center" name=""><![CDATA[
               .----------------------------------------.
               |        Hierarchical Controller         |
               '----------------------------------------'
                      ^          |          ^
                      |          |          |
                      v          v          v
      .--------------.   .--------------.   .--------------.
      | DC (domain1) |   | DC (domain2) |   | DC (domain3) |
      '--------------'   '--------------'   '--------------'
            | |                  | |                  | |
 S ---- R1 ======== R2 -------- R3 ======== R4 -------- R5 ---- D
        <-- Domain 1 -->   <---- Domain 2 ---->   <-- Domain 3 -->
           (wired)              (RAW)                (wired)

      S, D: end-systems (source and destination)
      DC:  Domain Controller
      Rx:  DetNet routers/bridges
      ==:  wired link
      --:  wireless link
]]></artwork>
        </figure>
        
        <t>Each domain has its own Domain Controller (DC), which is responsible for path
          computation and resource management within that domain. Routers R2 and R3 are border
          routers of Domain 2 (RAW), and R3 and R4 are border routers of Domains 2 and 3,
          respectively. A Hierarchical Controller is responsible for end-to-end path computation
          and orchestration across the different Domain Controllers.</t>

        <t>In a PCE-based realization of this framework, each Domain Controller maps to a Child PCE
          (C-PCE) and the Hierarchical Controller maps to a Parent PCE (P-PCE) as defined in <xref
            target="RFC6805"/>. Other controller-plane technologies (e.g., YANG/NETCONF-based SDN
          controllers, BGPLS-based systems) can equally fill these roles, provided they satisfy the
          functional requirements described in <xref target="requirements"/>.</t>
      </section>

      <section anchor="requirements" title="Functional Requirements">
        <t>Regardless of the specific technology used to realize the control plane, any multi-domain
          DetNet framework MUST satisfy the following high-level functional requirements:</t>
        <ul>
          <li>Each domain's controller must be able to compute an intra-domain path segment that
            meets a specified portion of the end-to-end DetNet QoS budget (latency, jitter,
            loss).</li>
          <li>A mechanism must exist for domain controllers to advertise an abstracted
            representation of their domain's capabilities (reachability, available latency budget,
            bandwidth) to an inter-domain coordination entity, without exposing confidential
            internal topology details.</li>
          <li>An inter-domain coordination mechanism must be able to compose an end-to-end path
            from individual per-domain path segments, allocating the end-to-end QoS budget across
            domains.</li>
          <li>The framework must support both a centralized (hierarchical) coordination model and a
            distributed (peer-to-peer) coordination model.</li>
          <li>Resource reservation, whether performed transactionally or sequentially, must be
            coordinated across all participating domains.</li>
        </ul>
      </section>
      
      <section anchor="problem-statement" title="Problem Statement">
        <t>In a multi-domain environment, no single controller has end-to-end visibility of the
          full network topology. The challenge is to compute an end-to-end path that meets the
          strict latency, jitter, and loss requirements of a DetNet flow, while respecting the
          administrative and confidentiality boundaries of each participating domain.</t>
        <t>Each domain's controller is responsible for its own internal path computation and
          resource allocation. The multi-domain architecture must define how these individual
          controllers cooperate to create a seamless end-to-end service. Two primary coordination
          models are considered: Hierarchical and Peer-to-Peer.</t>
      </section>
      
      <section anchor="h-model" title="Hierarchical Coordination Model">
        <t>In the Hierarchical model, a Hierarchical Controller has a partial, abstracted view of
          the child domains. It does not see the detailed topology within each domain but knows the
          reachability and characteristics (e.g., available latency budget, cost) of paths to and
          through them. Each Domain Controller has full visibility of its own domain's topology and
          resources, and is responsible for all intra-domain path computations.</t>

        <t>The H-PCE architecture <xref target="RFC6805"/> is one well-defined realization of this
          model, where the Hierarchical Controller is a Parent PCE and each Domain Controller is a
          Child PCE. Other SDN-based hierarchical controller architectures follow the same
          conceptual structure.</t>

        <t>In a multi-domain DetNet context, path establishment under this model proceeds as
          follows:</t>
        <ol>
          <li>A request for an end-to-end DetNet path is sent to the Hierarchical Controller. This
            request includes the source, destination, and required QoS parameters (e.g., maximum
            end-to-end latency).</li>
          <li>The Hierarchical Controller computes a high-level, domain-sequence path: a sequence
            of domains the flow must traverse, together with the entry and exit boundary nodes for
            each domain.</li>
          <li>The Hierarchical Controller then sends requests to the Domain Controller of each
            domain in the path sequence. Each request asks for an intra-domain path segment between
            the specified entry and exit nodes that meets a portion of the end-to-end QoS
            requirements.</li>
          <li>Each Domain Controller computes its path segment, reserves the necessary resources
            locally, and reports success or failure back to the Hierarchical Controller.</li>
          <li>If all Domain Controllers succeed, the Hierarchical Controller confirms the
            end-to-end path. If any Domain Controller fails, the Hierarchical Controller may
            attempt to find an alternate domain-sequence path.</li>
        </ol>
        
        <t>Each Domain Controller is aware of the specific technologies used in its domain (e.g.,
          RAW, DetNet IP, DetNet MPLS), and can compute a path taking into account the specific
          constraints of those technologies. For instance, in a RAW domain, the Domain Controller
          can select the path, the schedule, and the links to be used to guarantee a certain level
          of reliability.</t>
          
        <!-- Carlos: The specific protocol extensions needed to carry DetNet constraints (e.g.,
          detailed latency budgets, packet replication/elimination function locations) between a
          Hierarchical Controller and Domain Controllers need to be detailed in a future document.
          Further study is required on: (i) how topology is abstracted and provided by a Domain
          Controller to the Hierarchical Controller, (ii) how the Hierarchical Controller populates
          its topology database, and (iii) what protocol extensions are needed for a Domain
          Controller to provide abstracted topology and for a Hierarchical Controller to request a
          path with DetNet-specific constraints from a Domain Controller. -->
          
      </section>
      
      <section anchor="p2p-model" title="Peer-to-Peer (Stitching) Model">
        <t>In the peer-to-peer model, also known as "stitching," there is no parent-child hierarchy.
          Domain Controllers from adjacent domains cooperate as peers. Path computation is performed
          sequentially from one domain to the next. The BRPC procedure defined in <xref
            target="RFC5441"/> for inter-area and inter-AS TE path computation is one example of
          how this model can be realized in a PCE context.</t>
        <t>In a multi-domain DetNet context, path establishment under this model proceeds as
          follows:</t>
        <ol>
          <li>The Domain Controller in the source domain (DC-1) receives a path request for a flow
            destined for another domain.</li>
          <li>DC-1 computes a path from the source node to a suitable exit border node in its
            domain.</li>
          <li>DC-1 then sends a request to the Domain Controller of the adjacent domain (DC-2),
            specifying the entry border node and the final destination, along with the remaining QoS
            budget.</li>
          <li>DC-2 computes a path through its domain to either the final destination (if it is
            within domain 2) or to another suitable exit border node. It then "stitches" this
            segment to the previous one.</li>
          <li>This process repeats until the Domain Controller in the destination domain is
            reached. The path may be confirmed backward along the chain of Domain
            Controllers.</li>
        </ol>
        
        <!-- Carlos: This approach requires strong trust relationships and policy agreements between
          peer Domain Controllers. The trade-offs between the Hierarchical and Stitching models
          need to be further detailed, considering factors such as scalability, confidentiality, and
          complexity of coordination. -->
      </section>
    </section>

    <section anchor="flow-considerations" title="Multi-Domain DetNet Flow Considerations">
      <section anchor="e2e-computation" title="End-to-End Path Computation">
        <t>The end-to-end path is a concatenation of intra-domain path segments. The total latency
          and other QoS metrics are cumulative. The control plane must be able to allocate the
          end-to-end budget among the participating domains.</t>

        <t>The end-to-end path computation should select one of the end-to-end bounded latency
          metrics for all domains as defined in <xref
            target="I-D.xiong-pce-detnet-bounded-latency"/>. The calculation of the bounded latency
          will differ depending on the queuing solutions and categories as per <xref
            target="I-D.ietf-detnet-dataplane-taxonomy"/>. The end-to-end bounded delay will be the
          sum of the per-domain delays, and the end-to-end variation will be either the sum of the
          per-domain variations or the maximum variation among all domains, depending on the queuing
          mechanism used.</t>
	
        <t>In the Hierarchical model, the Hierarchical Controller collects domain-specific
          capability information from each Domain Controller and divides the end-to-end QoS budget
          of a DetNet flow into per-domain sub-budgets, based on the capabilities (e.g., latency,
          jitter) available within each domain.</t>
	
        <t>In the peer-to-peer stitching model, the end-to-end budget is divided starting from the
          source domain's controller and passed along to each successive adjacent domain, until
          reaching the destination domain's controller. The controller within each domain computes
          the latency bound as per <xref target="RFC9320"/> considering the bounded latency
          metric.</t>
	
      </section>

      <section anchor="resource-management" title="Resource Management">
        <t>Resources MAY be reserved in each domain for the flow. If any domain in the path cannot
          provide the required resources, the end-to-end path setup fails. A mechanism for
          transactional, all-or-nothing resource commitment across domains is highly desirable.</t>
	  
        <t>The control plane also needs to advertise inter-domain resource information, including
          bandwidth, delay, and jitter with related queuing mechanisms for QoS coordination.</t>

        <!-- Carlos: Is something like a two-phase commit protocol needed for resources, or is a
          sequential reservation with backtracking sufficient? This is a key research and
          standardization question. -->
      </section>
      
      <section anchor="end-system-awareness" title="End-System Awareness">
        <t>A critical aspect is whether the end-systems (source and destination) are
          DetNet-aware.</t>
        <dl>
          <dt>DetNet-aware End-Systems:</dt>
          <dd>The end-systems can signal their QoS requirements and participate in the DetNet
            control plane.</dd>
          <dt>DetNet-unaware End-Systems:</dt>
          <dd>The requirements for these systems must be configured at the edge of the DetNet domain
            by a proxy or network management system. In a multi-domain scenario, the entry node of
            the first DetNet domain acts as this ingress point.</dd>
        </dl>
      </section>
	  
      <section anchor="flow-aggregation" title="Flow Aggregation">  
        <t>Flow aggregation is recommended in the multi-domain scenario to achieve end-to-end QoS
          guarantees for aggregated flows that span across multiple domains. Multiple flows may be
          aggregated in one domain and disaggregated in another. The network parameters of an
          aggregated flow should be exchanged among different domain controllers. Path computation
          should consider the end-to-end budget of the aggregated flow, which must cover the
          requirements of all its member flows.</t>
      </section>
    </section>
    
    <section anchor="security" title="Security Considerations">
      <t>Multi-domain operations introduce significant security challenges. The communication
        between Domain Controllers in different domains MUST be secured, ensuring authentication,
        integrity, and confidentiality. Each domain must be protected from misbehaving or
        compromised peer domains.</t>
      <t>Topology and resource information exposed by a Domain Controller to an external entity (a
        Hierarchical Controller or a peer Domain Controller) is sensitive. The framework must allow
        for policy-based control over the level of abstraction and detail that is shared, so that
        internal topology information is not unnecessarily disclosed across administrative
        boundaries.</t>
      <t>Where a PCE-based realization is used, the security considerations of <xref
          target="RFC8253"/> also apply.</t>
      <!-- Carlos: This section is a placeholder and needs to be expanded significantly. -->
    </section>
    
    <section anchor="iana" title="IANA Considerations">
      <t>This document makes no requests of IANA.</t>
    </section>

    <section anchor="Acknowledgments" title="Acknowledgments">
      <t>
The work of Carlos J. Bernardos in this document has been partially supported by
the Horizon Europe MultiX (Grant Agreement No. 101192521) and DISCO6G-CM.
      </t>
    </section>
    
  </middle>
  <back>
    <references title="Normative References">

      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8655.xml"/>

    </references>

    <references title="Informative References">
    
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4655.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5440.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8253.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5441.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6805.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9016.xml"/>
      <xi:include href="https://datatracker.ietf.org/doc/bibxml3/draft-ietf-detnet-controller-plane-framework.xml"/>
      <xi:include href="https://datatracker.ietf.org/doc/bibxml3/draft-bernardos-detnet-raw-multidomain.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.9320.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8939.xml"/>
      <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8964.xml"/>
      <xi:include href="https://datatracker.ietf.org/doc/bibxml3/draft-ietf-detnet-dataplane-taxonomy.xml"/>
      <xi:include href="https://datatracker.ietf.org/doc/bibxml3/draft-xiong-pce-detnet-bounded-latency.xml"/>

    </references>
  </back>
</rfc>
