<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->
<?rfc compact="yes"?>
<?rfc text-list-symbols="o*+-"?>
<?rfc subcompact="no"?>
<?rfc strict="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-li-uboe-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="false" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="UBoE">UnifiedBus over Ethernet (UBoE)</title>
    <seriesInfo name="Internet-Draft" value="draft-li-uboe-00"/>
    <author initials="Y." surname="Li" fullname="Yizhou Li">
      <organization>Huawei Technologies</organization>
      <address>
        <email>liyizhou@huawei.com</email>
      </address>
    </author>
    <author initials="Y." surname="Zhang" fullname="Yali Zhang">
      <organization>Huawei Technologies</organization>
      <address>
        <email>zhangyali369@huawei.com</email>
      </address>
    </author>
    <author initials="P." surname="Zheng" fullname="Peng Zheng">
      <organization>Huawei Technologies</organization>
      <address>
        <email>dave.zheng@huawei.com</email>
      </address>
    </author>
    <date year="2026" month="July" day="06"/>
    <workgroup>Independent Stream</workgroup>
    <abstract>
      <?line 76?>

<t>This document specifies the UnifiedBus over Ethernet (UBoE) protocol, which enables seamless interconnection between native UnifiedBus (UB) domains and standard Ethernet/IP network for AI and HPC high-performance scenarios. It defines the UBoE packet encapsulation based on IPv4/IPv6 and UDP over Ethernet, including the invariant CRC (ICRC) integrity protection for end-to-end packet verification. This document further specifies the cross-domain packet conversion and header adaptation behaviors at UB2E switches, including bidirectional mapping rules for UB-specific network layer and IP network layer.</t>
    </abstract>
  </front>
  <middle>
    <?line 81?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>UnifiedBus (UB) <xref target="UB2.0"/> is a high-performance layered interconnection protocol designed for large-scale AI and HPC clusters, providing ultra-low-latency data transmission and advanced remote memory access capabilities. To enable interworking between the UB domains and legacy standard Ethernet/IP networks, the UBoE protocol is defined to encapsulate native UB upper-layer protocol data within standard IPv4/IPv6 and UDP packets over Ethernet.</t>
      <t>All UBoE deployment scenarios adopt a unified encapsulation format. Cross-protocol translation between UB and UBoE occurs in UB2E switch based deployment scenarios, where network-layer header adaptation is required to bridge UB-specific network layer metadata and standard IP/Ethernet forwarding semantics.</t>
      <t>This document illustrates the UBoE encapsulation format, IP/UDP header field value configurations, and ICRC integrity verification rules. It specifies the UB-to-UBoE header adaptation behaviors at UB2E switches, including bidirectional adaptation logic and mapping rules between UB-specific network layer fields (including routing type, congestion markings and traffic isolation partitions) and Eth/IP network layer. It also analyzes the congestion control algorithm selection impacts introduced by semantic translation of congestion markings during packet conversion.</t>
      <t>This document does not modify the UnifiedBus (UB) <xref target="UB2.0"/> specification. While some information regarding UBoE was implicitly scattered throughout UB <xref target="UB2.0"/>, this document consolidates such content and supplements it with additional details necessary for UBoE but not explicitly defined in the original specification. It provides a comprehensive and explicit reference to assist the Internet community in understanding and implementing the UBoE endpoints or UB2E switches for interconnecting UB domains and Ethernet/IP domain.</t>
    </section>
    <section anchor="terminologies">
      <name>Terminologies</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>
      <t>CNP: Congestion Notification Packet</t>
      <t>ECN: Explicit Congestion Notification</t>
      <t>ICRC: Invariant Cyclic Redundancy Check</t>
      <t>TPH: Transport Header</t>
      <t>TAH: Transaction Header</t>
      <t>UB: UnifiedBus</t>
      <t>UBoE: UnifiedBus over Ethernet</t>
      <t>UBPU: UB Processing Unit</t>
    </section>
    <section anchor="sec-usage">
      <name>UBoE Usage</name>
      <t>UB system offers a rich set of I/O and memory services based on Unified Remote Memory Access(URMA) and/or load/store-like access methods. In a single UB domain, UB processing units (UBPU) always use native and full stack UB protocol to communicate with each other <xref target="UB2.0"/>. However, in some deployments, UBPUs across multiple UB domains want to enjoy such advanced features via an interconnected Ethernet/IP network  to better reuse the existing network equipments.</t>
      <t>Three typical UBoE deployment scenarios are defined in this document, covering endpoint direct encapsulation, single-ended switch conversion, and dual-ended bidirectional switch conversion. All scenarios share the same UBoE encapsulation formats, while switch-based scenarios introduce additional network header conversion and adaptation procedures.</t>
      <t><xref target="fig-UBoE-direct"/> depicts the UBoE direct pass-through encapsulation scenario. UBoE-capable endpoints (e.g. UBoE NIC) directly perform UBoE encapsulation, overlaying the UB transport layer and upper-layer protocols directly on top of the standard Ethernet/IP network layer. No intermediate protocol conversion devices are deployed. Cross-domain UB service communication is fully implemented by endpoint-based UBoE encapsulation and decapsulation. All Ethernet/IP intermediate devices forward UBoE packets transparently.</t>
      <ul spacing="normal">
        <li>
          <t>UBoE endpoint: A UBoE capable endpoint where at least one port is configured for UBoE packet exchange, while the rest are configured for native UB and/or other packet types. It can be some processing units.</t>
        </li>
        <li>
          <t>UBoE NIC: A network interface card (NIC) capable of transmitting and receiving UBoE packets over the network. It is a specific UBoE endpoint.</t>
        </li>
      </ul>
      <figure anchor="fig-UBoE-direct">
        <name>UBoE Direct Pass-Through Encapsulation Deployment</name>
        <artwork><![CDATA[
===== domain boundary, not physical links
----- links

           +---------------------------------------------+
           |               Eth/IP switches               |           
           +---------------------------------------------+    
              |                    |                  |
              |                    |                  |         
Eth/IP        |                    |                  |
domain    +-------+            +------+         +--------+
========= | UBoE  | ========== | UBoE |=========|  UBoE  | ==== 
three UB  | NIC1  |            | NIC2 |         |endpoint|
domains   +-------+            +------+         +--------+

]]></artwork>
      </figure>
      <t><xref target="fig-UB2E-single"/> illustrates the single-ended UB2E switch protocol conversion scenario,  which introduces a single UB2E switch as the protocol conversion node between UB native domain and Ethernet/IP domain, different from the endpoint-only encapsulation mode in <xref target="fig-UBoE-direct"/>. For any single data flow in this scenario, only unidirectional protocol conversion is supported: either native UB packets from the UB domain are encapsulated into UBoE packets for Ethernet/IP transmission, or UBoE packets from the IP domain are decapsulated into native UB packets to access the local UB domain.</t>
      <t>Limited by the single-ended conversion mechanism, some UB-specific network header field information is discarded when converting to IP network header.</t>
      <ul spacing="normal">
        <li>
          <t>UBPU: UB Processing Unit, designed to generate, transmit, and receive native UB packets.</t>
        </li>
        <li>
          <t>UB2E switch: A UB switch with an integrated UB-to-UBoE packet conversion function, enabling seamless interoperability between UB and Ethernet/IP networks.</t>
        </li>
      </ul>
      <figure anchor="fig-UB2E-single">
        <name>Single-Ended UB2E Switch Conversion Deployment</name>
        <artwork><![CDATA[
===== domain boundary, not physical links
----- links

           +---------------------------------------------+
           |               Eth/IP switches               |           
           +---------------------------------------------+    
              |                    |                  |
              |                    |                  |         
Eth/IP        |                    |                  |
domain    +-------+            +------+         +--------+
========= | UB2E  | ========== | UBoE |=========| UBoE   | ==== 
three UB  | switch|            | NIC2 |         |endpoint|
domains   +-------+            +------+         +--------+
            |   |
        ----    ----
       |            |                    
   +-------+      +-------+         
   | UBPU  | ...  | UBPU  |            
   +-------+      +-------+ 
]]></artwork>
      </figure>
      <t><xref target="fig-UB2E-double"/> shows the the dual-ended UB2E switch protocol conversion scenario, deploying UB2E switches at both ingress and egress of the Ethernet/IP domain. Different from the single point conversion in <xref target="fig-UB2E-single"/>, the ingress UB2E switch converts native UB packets to UBoE packets, while the egress UB2E switch parses UBoE packets and potentially restores them to a more complete native UB packets for peer UB domain access.</t>
      <figure anchor="fig-UB2E-double">
        <name>Dual-Ended UB2E Switch Conversion Deployment</name>
        <artwork><![CDATA[
===== domain boundary, not physical links
----- links



          +------------------------------------------+
          |               Eth/IP switches            |           
          +------------------------------------------+    
              |                                  |
Eth/IP        |                                  |
domain    +-------+        Eth/IP domain     +-------+  
========= | UB2E  | ======================== | UB2E  | ===== 
two UB   _| switch|__       UB domains      _| switch|__
domains | +-------+  |                     | +-------+  |
        |            |                     |            |
        |            |                     |            |
    +-------+      +-------+          +-------+     +-------+
    |UBPU x | ...  |UBPU y |          |UBPU m | ... |UBPU n |
    +-------+      +-------+          +-------+     +-------+

]]></artwork>
      </figure>
      <t>All three deployment scenarios use UBoE encapsulation over standard IP network layers. Detailed specifications on IP and UDP header fields for UBoE packets are defined in <xref target="sec-format"/>.</t>
      <t>Only <xref target="fig-UB2E-single"/> (Single-Ended UB2E Switch Conversion) and <xref target="fig-UB2E-double"/> (Double-Ended UB2E Switch Conversion) deploy UB2E switches to perform bidirectional packet translation between native UB network encapsulation and UBoE encapsulation. The protocol adaptation rules, field mapping logic, and header conversion behaviors of UB2E switches are elaborated in <xref target="sec-adapt"/>.</t>
    </section>
    <section anchor="sec-format">
      <name>UBoE Packet Format and IP Header Fields</name>
      <t><xref target="fig-proto-stack"/> shows a protocol stack overview of UB and UBoE. UBoE encapsulation wraps the UB transport, transaction and payload data inside the IPv4/IPv6 and UDP headers, forming IP-routable packets that can traverse general Ethernet/IP fabrics.</t>
      <figure anchor="fig-proto-stack">
        <name>UB and UBoE Protocol Stack</name>
        <artwork><![CDATA[

        +------------------+         +---------------------+
        | UB Transaction   |         |   UB Transaction    |
        +------------------+         +---------------------+
        | UB Transport     |         |   UB Transport      |
        +------------------+         +---------------------+
        | UB Network Layer |         |     UDP + IP        |
        +------------------+         +---------------------+
        | UB Link Layer    |         | Ethernet Link Layer |
        +------------------+         +---------------------+
        | UB Physical      |         |   Ethernet Physical |
        +------------------+         +---------------------+
               UB                           UBoE

]]></artwork>
      </figure>
      <t>The UBoE frame structure is shown in <xref target="fig-UBoE"/>, used by all three deployment scenarios described in <xref target="sec-usage"/>.</t>
      <t>UB transport header(TPH) follows UDP header in UBoE packet. <xref target="UB2.0"/> defines three transport modes, reliable transport (RTP), unreliable transport (UTP) and compact transport (CTP). It also supports transport bypass configuration, meaning no transport header is present. Readers may refer to Section 6 of <xref target="UB2.0"/> for details regarding the rationale and method for selecting each transport enablement.</t>
      <t>UBoE only uses UB RTP or UTP transport mode. TPH is 16 bytes in length in both modes. Compact transport (CTP) mode and transport bypass are not support in UBoE.</t>
      <figure anchor="fig-UBoE">
        <name>UBoE Frame Structure</name>
        <artwork><![CDATA[
                    |<-------   IP payload ------------------>|
+----------+--------+---------+-------+-------+--------+------+---+
|Eth L2 Hdr| IP Hdr | UDP Hdr |UB TPH |UB TAH |payload | ICRC |FCS|
+----------+--------+---------+-------+-------+--------+------+---+
        ^         ^        ^       ^       ^               ^
        |         |        |       |       |               |       
EtherType=IP      |        |       |       |               | 
Protocol=UDP ------        |       |       |               | 
dest port=IP routable UB----       |       |               | 
UB Transport Header (TPH) ----- ----       |               | 
UB Transaction Header (TAH)   --------------               | 
ICRC protection starting from IP Hdr to payload  ----------- 
]]></artwork>
      </figure>
      <section anchor="sec-IPUDP">
        <name>IP and UDP Header fields for UBoE Packets</name>
        <t>UBoE supports both IPv4 and IPv6. The formats of the IPv4 header and IPv6 header are conformant with  <xref target="RFC0791"/>, <xref target="RFC2474"/>, <xref target="RFC3168"/> and <xref target="RFC8200"/>. <xref target="tab-uboe-v4"/> and  <xref target="tab-uboe-v6"/> below show the values for relevant fields in IPv4 header and IPv6 header of UBoE packets respectively.</t>
        <table anchor="tab-uboe-v4">
          <name>UBoE with IPv4 header</name>
          <thead>
            <tr>
              <th align="left">Relevant IPv4 Header Field in UBoE</th>
              <th align="left">Value</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Internet Header Length (IHL)</td>
              <td align="left">5</td>
            </tr>
            <tr>
              <td align="left">Differentiated Services Codepoint (DSCP)</td>
              <td align="left">Set to a proper value for UB traffic.</td>
            </tr>
            <tr>
              <td align="left">Explicit Congestion Notification (ECN)</td>
              <td align="left">Set to '01' or '10' to indicate that the packet can be marked in the network to indicate congestion <xref target="RFC3168"/>; otherwise, set to '00'. Refer to <xref target="sec-adapt"/> for field mapping rules when UB2E switch conversion is used.</td>
            </tr>
            <tr>
              <td align="left">Total Length</td>
              <td align="left">Set to the length of the IPv4 packet in bytes including the IPv4 header and up to and including the ICRC.</td>
            </tr>
            <tr>
              <td align="left">Flags</td>
              <td align="left">'010'. Don't fragment bit is set.</td>
            </tr>
            <tr>
              <td align="left">Fragment Offset</td>
              <td align="left">0</td>
            </tr>
            <tr>
              <td align="left">Time to Live</td>
              <td align="left">Set to  a value greater than the network diameter.</td>
            </tr>
            <tr>
              <td align="left">Protocol</td>
              <td align="left">0x11 for UDP</td>
            </tr>
            <tr>
              <td align="left">Source Address</td>
              <td align="left">IP address of the source UB end point</td>
            </tr>
            <tr>
              <td align="left">Destination Address</td>
              <td align="left">IP address of the destination UB end point</td>
            </tr>
          </tbody>
        </table>
        <table anchor="tab-uboe-v6">
          <name>UBoE with IPv6 header</name>
          <thead>
            <tr>
              <th align="left">Relevant IPv6 Header Field in UBoE</th>
              <th align="left">Value</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Differentiated Services Codepoint (DSCP)</td>
              <td align="left">Set to a proper value for UB traffic.</td>
            </tr>
            <tr>
              <td align="left">Explicit Congestion Notification (ECN)</td>
              <td align="left">Set to '01' or '10' to indicate that the packet can be marked in the network to indicate congestion <xref target="RFC3168"/>; otherwise, set to '00'. Refer to <xref target="sec-adapt"/> for field mapping rules when UB2E switch conversion is used.</td>
            </tr>
            <tr>
              <td align="left">Payload Length</td>
              <td align="left">Set to the length of the IPv6 packet payload starting from the first byte after the IPv6 header up to and including the ICRC.</td>
            </tr>
            <tr>
              <td align="left">Next Header</td>
              <td align="left">0x11 for UDP</td>
            </tr>
            <tr>
              <td align="left">Hop Limit</td>
              <td align="left">Set to  a value greater than the network diameter.</td>
            </tr>
            <tr>
              <td align="left">Source Address</td>
              <td align="left">IP address of the source UB end point</td>
            </tr>
            <tr>
              <td align="left">Destination Address</td>
              <td align="left">IP address of the destination UB end point</td>
            </tr>
          </tbody>
        </table>
        <t><xref target="fig-UDP"/> shows the UDP header fields for UBoE :</t>
        <figure anchor="fig-UDP">
          <name>UDP Header for UBoE Packet</name>
          <artwork><![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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           Source Port         |       Dest Port = 4792        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           UDP Length          |        UDP Checksum           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <ul spacing="normal">
          <li>
            <t>Destination Port: IANA has assigned the value 4792 for IP Routable UB UDP port, and this value SHOULD be used by default as the  destination UDP port for UBoE.  This well-known port is also used to carry UB transport and upper-layer information over UDP over IP-address-compatible UB network layer. This draft only focuses on UBoE.</t>
          </li>
          <li>
            <t>Source Port:  It is recommended that the UDP source port number be used as load balance factor. This is to enable a level of entropy for the traffic load-balancing. The implementation is free to choose a proper granularity for load-balancing, e.g., flow-based or packet-based.</t>
          </li>
          <li>
            <t>UDP Checksum: It SHOULD be transmitted as zero.  When a packet is received with a UDP checksum of zero, it MUST be accepted for decapsulation.  Optionally, if the UBoE encapsulating end point includes a non-zero UDP checksum, it MUST be correctly      calculated across the entire packet as per <xref target="RFC0768"/>.  When a UBoE decapsulating end point receives a packet with a non-zero checksum, it MAY choose to verify the checksum value.  If it chooses to perform such verification, and the verification fails, the packet MUST be dropped.  If the decapsulating destination chooses not to perform the verification, or performs it successfully, the packet MUST be accepted for decapsulation.</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-icrc">
        <name>ICRC for UBoE Packets</name>
        <t>UBoE implements a 32-bit ICRC to offer the end-to-end integrity protection of the entire IP packets.  Calculation starts with the first byte of the IP header up until and including the last UB Payload byte right before the ICRC field itself.</t>
        <t>The following variant fields in the IP header and UDP header are replaced with all ones in ICRC calculation/check to ensure the changes to these fields along the way donot affect the calculated ICRC value.</t>
        <ul spacing="normal">
          <li>
            <t>IPv4 for UBoE
            </t>
            <ul spacing="normal">
              <li>
                <t>Time to Live</t>
              </li>
              <li>
                <t>Header Checksum</t>
              </li>
              <li>
                <t>Type of Service (DSCP and ECN)</t>
              </li>
            </ul>
          </li>
          <li>
            <t>IPv6 for UBoE
            </t>
            <ul spacing="normal">
              <li>
                <t>Traffic Class (DSCP and ECN)</t>
              </li>
              <li>
                <t>Flow Label</t>
              </li>
              <li>
                <t>Hop Limit</t>
              </li>
            </ul>
          </li>
          <li>
            <t>UDP for UBoE
            </t>
            <ul spacing="normal">
              <li>
                <t>Checksum</t>
              </li>
            </ul>
          </li>
        </ul>
        <t>The ICRC detailed calculation rules follow the ICRC section in <xref target="UB2.0"/>.</t>
      </section>
    </section>
    <section anchor="sec-adapt">
      <name>UB and UBoE Conversion and Adaptation</name>
      <t>As introduced in <xref target="sec-usage"/>, <xref target="fig-UB2E-single"/> (Single-Ended UB2E Switch Conversion) and <xref target="fig-UB2E-double"/> (Double-Ended UB2E Switch Conversion)  leverage UB2E switches to perform the cross-protocol translation between native UB packets and UBoE packets. This section specifies such packet conversion and header adaptation logic. The key of UB/UBoE conversion lies in the conversion of network-layer headers.</t>
      <t>The native UB protocol stack supports three distinct types of network layer addresses, each with a specific length corresponding to a slightly different network layer header format. Among them, one type carries a standard IP header; therefore, we refer to this specific format as the IP-compliant UB network header.</t>
      <t><xref target="fig-UBG"/> illustrates the logical view of the IP-compliant UB network header. It essentially consists of two parts: the UB-specific network information fields and a standard IPv4/IPv6 header format. The former part is intended to provide richer or more specific information within the native UB domain as follows.</t>
      <ul spacing="normal">
        <li>
          <t>RT (2b): Routing type.</t>
        </li>
        <li>
          <t>CCI (16b): Congestion control indicator.</t>
        </li>
        <li>
          <t>NPI (25b): Network partition identifier.</t>
        </li>
      </ul>
      <figure anchor="fig-UBG">
        <name>Logical View of  the IP-Compliant UB Network Header</name>
        <artwork><![CDATA[
UB-specific network info fields        exact same as IP header    
(logically, not the exact format)                |
                 |                               |                     
                 |                               |
                 v                               v
+---------------------------------+-------------------------------+
| additional info (RT, CCI, NPI)  | standard IPv4/v6 header format|   
+---------------------------------+-------------------------------+
  
]]></artwork>
      </figure>
      <t>When interconnecting the UB domain with Eth/IP networks via a switch, only the IP-compliant UB network header is permitted for data packet within the UB domain. This constraint ensures that the UB2E switch can seamlessly extract the IP header from the UB network header, and vice versa. The UB domain MUST employ appropriate configuration, management tools, and software to enforce this requirement.</t>
      <figure anchor="fig-UB2E-conversion">
        <name>Conversion and adaption by UB2E switch</name>
        <artwork><![CDATA[
  UB pkt with the IP-Compliant 
  UB Network Header               +--------+     UBoE packet
  ------------------------------> |  UB2E  | ------------------>
  <------------------------------ | switch | <-----------------
         UB domain                +--------+    Eth/IP domain

]]></artwork>
      </figure>
      <t>When forwarding a packet between the UB domain and the Eth/IP domain, as shown in <xref target="fig-UB2E-conversion"/>, as the IP-compliant UB network header inherently contains a standard IP header, the switch directly reuses this standard IP header portion during packet conversion. The fields within this preserved IP header SHOULD remain consistent with the rules defined in the tables of <xref target="sec-IPUDP"/>.</t>
      <t>The fundamental structural difference between the two network-layer headers is that the IP-compliant UB network header carries additional UB-specific metadata RT, CCI and NPI. The switch strips these three fields and embed the required information in other standard UBoE fields with adaptation when converting UB packets to UBoE for egress to IP networks, and reconstructs them when converting inbound UBoE packets back to native UB format using some rules. The following subsections break down the adaptation required for  RT, CCI and NPI information.</t>
      <section anchor="sec-adapt-rt">
        <name>Adaptation of RT (Routing Type)</name>
        <t>The UB IP-compliant network header includes a 2-bit Routing Type (RT) field that controls the load balancing mode and multipath route selection policy within the UB domain. The RT field settings are defined as follows:</t>
        <table anchor="tab-RT">
          <name>Routing Type (RT) field in UB IP-Compliant network Header</name>
          <thead>
            <tr>
              <th align="left">RT Value</th>
              <th align="left">Load Balancing Mode</th>
              <th align="left">Multipath Route Selection Policy</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">00</td>
              <td align="left">Per-flow</td>
              <td align="left">All available paths</td>
            </tr>
            <tr>
              <td align="left">01</td>
              <td align="left">Per-packet</td>
              <td align="left">All available paths</td>
            </tr>
            <tr>
              <td align="left">10</td>
              <td align="left">Per-flow</td>
              <td align="left">The Shortest paths only</td>
            </tr>
            <tr>
              <td align="left">11</td>
              <td align="left">Per-packet</td>
              <td align="left">The Shortest paths only</td>
            </tr>
          </tbody>
        </table>
        <t>Since the standard IP header and Ethernet frame do not have equivalent fields to carry routing type information, the RT field requires special handling during conversion.</t>
        <t>UB to Eth/IP Direction: The RT information in the UB network header is discarded.</t>
        <t>Eth/IP to UB Direction: RT field must be populated. Value set to <tt>10</tt> (Per-flow, Shortest paths) as default. The standard Ethernet routers/switches typically perform per-flow load balancing based on 5-tuple hash and select among the shortest paths, this default value aligns with that behavior, so that the UB domain will not misinterpret how the packet is forwarded in the Eth/IP domain.</t>
        <t>The RT field MAY be configurable by network administrators to accommodate specific deployment requirements for Eth/IP to UB Direction. However, the default value of <tt>10</tt> is RECOMMENDED for most deployments to ensure consistent behavior with standard Ethernet switching.</t>
      </section>
      <section anchor="sec-adapt-ecn">
        <name>Adaptation of CCI (Congestion Control Indicator)</name>
        <t>UB 2.0 <xref target="UB2.0"/> defines multiple CCI modes for congestion indicators in the UB domain. Only the FECN mode supports compatible mapping with standard IP ECN natively, which is mandatory for UB/UBoE interworking via UB2E switches.  <xref target="tab-CCI"/>  summarizes the CCI modes and their suitability for UB to UBoE conversion network layer.</t>
        <table anchor="tab-CCI">
          <name>CCI Mode Suitability for UB-to-UBoE by Switch</name>
          <thead>
            <tr>
              <th align="left">CCI Mode</th>
              <th align="left">Description</th>
              <th align="center">Suitability</th>
              <th align="left">Reason</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">CAQM</td>
              <td align="left">Active queue management with bandwidth control</td>
              <td align="center">No</td>
              <td align="left">Relies on richer UB-specific fields like Hint or Increase for bandwidth control, unmapable to standard IP ECN</td>
            </tr>
            <tr>
              <td align="left">FECN</td>
              <td align="left">Forward ECN with severity levels</td>
              <td align="center">Yes</td>
              <td align="left">The 2-bit FECN field naturally maps to the 2-bit IP ECN field, aligning with standard mechanisms with some adaptations.</td>
            </tr>
            <tr>
              <td align="left">FECN_RTT</td>
              <td align="left">FECN with Timestamp for</td>
              <td align="center">No</td>
              <td align="left">Requires a Timestamp field for RTT measurement, which is not available in standard IP ECN.</td>
            </tr>
          </tbody>
        </table>
        <t>As shown in <xref target="tab-CCI"/> , the UB endpoints SHOULD configure the CCI field to use the FECN mode (CCI.Mode = 3'b100). This ensures that the congestion information can be seamlessly mapped to the standard IP ECN field, allowing intermediate standard Ethernet switches to correctly recognize and process congestion markings. If the other CCI mode is configured, the administrator need ensure that the switch implements the compatible protocol extension in Eth/IP domain.</t>
        <section anchor="fecn-and-ecn-semantic-comparison-and-mapping-rules">
          <name>FECN and ECN Semantic Comparison and Mapping Rules</name>
          <t>The IP ECN field defined in <xref target="RFC3168"/> uses a 2-bit codepoint to indicate congestion. While UB FECN also uses a 2-bit field for congestion marking, their semantic definitions and the amount of information carried differ. <xref target="tab-ECN"/> summarizes the semantic comparison between the two.</t>
          <t>CE: Congestion Experienced</t>
          <table anchor="tab-ECN">
            <name>Semantic Comparison of UB FECN and IP ECN Codepoints</name>
            <thead>
              <tr>
                <th align="left">2-bit (F)ECN value</th>
                <th align="left">UB FECN Meaning</th>
                <th align="left">IP ECN Meaning [RFC3168]</th>
                <th align="left">Semantic Equivalence</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">00</td>
                <td align="left">Unmarkable</td>
                <td align="left">Not-ECT</td>
                <td align="left">Yes</td>
              </tr>
              <tr>
                <td align="left">01</td>
                <td align="left">Light CE</td>
                <td align="left">ECT(1), ECN-Capable</td>
                <td align="left">No. Note: Various usages exist for ECT(1), some are proprietary.</td>
              </tr>
              <tr>
                <td align="left">10</td>
                <td align="left">Markable</td>
                <td align="left">ECT(0), ECN-Capable</td>
                <td align="left">Yes</td>
              </tr>
              <tr>
                <td align="left">11</td>
                <td align="left">Severe CE</td>
                <td align="left">CE</td>
                <td align="left">Yes</td>
              </tr>
            </tbody>
          </table>
          <t>When converting packets between UB and Eth/IP domains, the UB2E switch performs bidirectional mapping between the 2-bit FECN field in UB FECN CCI mode and the 2-bit IP ECN field. The detailed mapping rules are as follows:</t>
          <t>Congestion Experienced (CE) Mapping:</t>
          <ul spacing="normal">
            <li>
              <t>FECN to ECN: The mapping behavior for Light CE (<tt>01</tt>) and Severe CE (<tt>11</tt>) in UB FECN to the CE (<tt>11</tt>) codepoint in IP ECN is configurable. The switch can be configured to map both Light CE and Severe CE to IP ECN-CE, or to map only Severe CE to IP ECN-CE (while mapping Light CE to an ECN-Capable state). The default to map both to IP ECN-CE. When both are mapped to IP ECN-CE, the severity distinction is lost during this conversion, and both are treated as equivalent to the standard CE state.</t>
            </li>
            <li>
              <t>ECN to FECN: The CE (<tt>11</tt>) codepoint in IP ECN can be uniformly configured to map to either Light CE (<tt>01</tt>) or Severe CE (<tt>11</tt>) in UB FECN. The default is mapping to Severe CE (<tt>11</tt>).</t>
            </li>
          </ul>
          <t>ECN-Capable / Markable Mapping:</t>
          <ul spacing="normal">
            <li>
              <t>FECN to ECN: The Markable (<tt>10</tt>) state in UB FECN can be configured to map to either ECT(0) (<tt>10</tt>) or ECT(1) (<tt>01</tt>) in IP ECN. The default mapping is ECT(0) (<tt>10</tt>).</t>
            </li>
            <li>
              <t>ECN to FECN: Compliant with <xref target="RFC3168"/>, both ECT(0) (<tt>10</tt>) and ECT(1) (<tt>01</tt>) in IP ECN are mapped to the Markable state (<tt>10</tt>) in UB FECN by default.</t>
            </li>
          </ul>
          <t>Some proprietary implementations utilize the IP ECN ECT(1) (<tt>01</tt>) codepoint to indicate a lower severity of congestion, which is equivalent to Light CE (<tt>01</tt>)  in UB FECN. Then a strict one-to-one semantic mapping can be established between UB FECN and IP ECN codepoints.</t>
          <t>Handling of Additional UB Congestion Related Information: Beyond the 2-bit congestion marking, the UB FECN CCI mode contains additional congestion information, i.e. the Location of Congestion (LoC) bit. Since the standard IP ECN field has no equivalent mechanism to carry this extra information, the LoC bit in the FECN CCI mode will  be discarded when converting a packet to the Eth/IP domain. Conversely, when converting from the Eth/IP domain to the UB domain, LoC bit is restored to 0 by default, indicating congestion, if any, occurs at an intermediate switch .</t>
        </section>
        <section anchor="impact-on-transport-congestion-control-loop">
          <name>Impact on Transport Congestion Control Loop</name>
          <t>FECN/ECN mapping at network-layer affects the end-to-end UB transport congestion control loop, which relies on receiver-side congestion marking feedback to trigger sender rate adjustment. As specified in <xref target="sec-adapt-ecn"/>, the endpoint is restricted to use congestion control algorithms based on FECN CCI mode for switch based UBoE scenarios, while CAQM and FECN_RTT CCI modes are not mappable without specific extensions in congestion marking.</t>
          <t>The native UB protocol supports multiple customizable congestion control algorithms, including Low Delay Control Protocol (LDCP), Confined Active Queue Management (CAQM), and DCQCN-like mechanisms. CAQM is not viable for UB/UBoE conversion scenario without specific extension of CAQM CCI mode. Therefore LDCP and DCQCN-like mechanisms are applicable in UB/UBoE interconnection scenarios.</t>
          <t>Two types of receivers exist in switch-based UBoE deployments, UBoE endpoints (direct IP termination) and native UB endpoints behind UB2E switches. UBoE endpoints directly use IP ECN-CE as the congestion signal, while native UB endpoints behind UB2E switches use the restored UB FECN markings. Receivers adopt whichever valid congestion marking signal is available according to their deployment type.</t>
          <t>The DCQCN-like Algorithm in UB uses the Congestion Notification Packet (CNP) to echo back the congestion markings and optionally supports two congestion levels, namely light congestion and severe congestion. Therefore, if a receiver can only get single congestion level based IP ECN-CE in UBoE scenarios, it shall either disable the two-level congestion reporting in CNP feedback or treat all ECN-CE markings as equivalent to severe congestion in CNP.</t>
        </section>
      </section>
      <section anchor="adaptation-of-npi-network-partition-identifier">
        <name>Adaptation of NPI (Network Partition Identifier)</name>
        <t>The UB IP-compliant network header includes a 25-bit Network Partition Identifier (NPI) field to enforce logical traffic isolation among network partitions in UB domains. <xref target="fig-NPI"/> shows the NPI field format.</t>
        <figure anchor="fig-NPI">
          <name>NPI field format in UB IP-Compliant network Header</name>
          <artwork><![CDATA[
+--------------------------------------------------------------+
| Permission |                       ID                        |
|   1-bit    |                     24-bit                      |
+--------------------------------------------------------------+
]]></artwork>
        </figure>
        <ul spacing="normal">
          <li>
            <t>Permission bit (1 bit): The most significant bit indicating endpoint privilege level. <tt>0</tt> indicates high privilege, <tt>1</tt> indicates low privilege.</t>
          </li>
          <li>
            <t>Partition ID (24 bits): Identifies the network partition. ID value <tt>0</tt> is invalid, and ID value <tt>1</tt> represents the default partition.</t>
          </li>
        </ul>
        <t>In native UB domains, endpoints belonging to different Partition IDs cannot intercommunicate. For endpoints sharing the same Partition ID, the Permission bit provides secondary fine-grained access control: communication is permitted for high-to-high and high-to-low privileged pairs, while low-to-low communication is prohibited. Notably, UB switches only validate the Partition ID during forwarding and do not check the Permission bit; privilege is enforced at UB endpoints.</t>
        <t>Both UB NPI and Ethernet VLAN mechanisms provide traffic isolation, these two fields are mapped at the UB2E switch in UB/UBoE conversion. Since standard Ethernet VLAN has no equivalent privilege concept, the permission bit is discarded in baseline UB-to-UBoE conversion and set to high-privilege (<tt>0</tt>) by default in the reverse direction.</t>
        <t>The detailed mapping rules at UB2E switch are defined as follows:</t>
        <t>UB to Eth/IP Direction:</t>
        <ul spacing="normal">
          <li>
            <t>The 24-bit Partition ID is mapped to the 12-bit VLAN ID. The mapping takes the lower 12 bits of the Partition ID. If the Partition ID exceeds 12 bits (4095), the upper bits are truncated, and administrators MUST ensure that Partition IDs in the same UB domain do not collide after truncation.</t>
          </li>
          <li>
            <t>The 1-bit Permission bit is removed during UB-to-UBoE translation and is not carried in Ethernet/IP frames.</t>
          </li>
          <li>
            <t>UB2E switches support configurable NPI-to-VLAN translation.</t>
          </li>
        </ul>
        <t>Eth/IP to UB Direction:</t>
        <ul spacing="normal">
          <li>
            <t>The 12-bit VLAN ID from the Ethernet frame is mapped to the lower 12 bits of the 24-bit Partition ID in the UB domain. The upper 12 bits of the Partition ID are set to <tt>0</tt> by default.</t>
          </li>
          <li>
            <t>The Permission bit is set to <tt>0</tt> (high privilege) by default, allowing maximum compatibility and communication capability.</t>
          </li>
          <li>
            <t>UB2E switches support configurable VLAN-to-NPI translation.</t>
          </li>
        </ul>
        <t>UB2E switches in <xref target="fig-UB2E-double"/> (Double-Ended UB2E Switch Conversion) may support an optional enhanced mapping to restore the original Permission bit information instead of to use the default. In this optional mode, the ingress UB2E switch maps one Partition ID with different Permission bit values (0/1) to two distinct VLAN IDs. The egress UB2E switch restores both the original Partition ID and the original Permission bit from the VLAN ID. However it consumes more VLAN IDs and has more complex configurations. Administrators can enable it based on deployment requirements.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>UBoE inherits all security constraints and isolation mechanisms defined in the UB 2.0 base specification <xref target="UB2.0"/>. Encapsulating UB upperlayer data payload in standard UDP/IP packets does not introduce new security vulnerabilities. Standard IP security practices, including access control lists, VLAN isolation, and traffic filtering, can be deployed to protect UBoE cross-domain traffic.</t>
      <t>Misconfiguration of NPI-to-VLAN mapping rules may cause partition isolation or privilege control anomalies. Operators shall strictly manage UB2E switch mapping policies and partition allocation to avoid cross-domain unauthorized traffic leakage. No new security extensions or threats specific to UBoE are introduced in this specification.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>A well-known UDP port (4792) has been assigned by the IANA in the Service Name and Transport Protocol Port Number Registry for IP Routable UB. UBoE uses this UDP port number.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Liudong Xiong and Chuanning Cheng for their review and comments. Thanks to Wei Pan for sharing his knowledge on the registered UDP port (4792).</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="UB2.0" target="https://www.unifiedbus.com/en/docs/UB-Base-Specification-2.0-preview-en">
          <front>
            <title>UnifiedBus(UB) Base Specification 2.0</title>
            <author>
              <organization/>
            </author>
            <date year="2025"/>
          </front>
        </reference>
        <reference anchor="RFC0768" target="https://www.rfc-editor.org/info/rfc768" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.0768.xml">
          <front>
            <title>User Datagram Protocol</title>
            <author fullname="J. Postel" initials="J." surname="Postel"/>
            <date month="August" year="1980"/>
          </front>
          <seriesInfo name="STD" value="6"/>
          <seriesInfo name="RFC" value="768"/>
          <seriesInfo name="DOI" value="10.17487/RFC0768"/>
        </reference>
        <reference anchor="RFC0791" target="https://www.rfc-editor.org/info/rfc791" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.0791.xml">
          <front>
            <title>Internet Protocol</title>
            <author fullname="J. Postel" initials="J." surname="Postel"/>
            <date month="September" year="1981"/>
          </front>
          <seriesInfo name="STD" value="5"/>
          <seriesInfo name="RFC" value="791"/>
          <seriesInfo name="DOI" value="10.17487/RFC0791"/>
        </reference>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC2474" target="https://www.rfc-editor.org/info/rfc2474" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2474.xml">
          <front>
            <title>Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers</title>
            <author fullname="K. Nichols" initials="K." surname="Nichols"/>
            <author fullname="S. Blake" initials="S." surname="Blake"/>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="December" year="1998"/>
            <abstract>
              <t>This document defines the IP header field, called the DS (for differentiated services) field. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2474"/>
          <seriesInfo name="DOI" value="10.17487/RFC2474"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC8200" target="https://www.rfc-editor.org/info/rfc8200" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8200.xml">
          <front>
            <title>Internet Protocol, Version 6 (IPv6) Specification</title>
            <author fullname="S. Deering" initials="S." surname="Deering"/>
            <author fullname="R. Hinden" initials="R." surname="Hinden"/>
            <date month="July" year="2017"/>
            <abstract>
              <t>This document specifies version 6 of the Internet Protocol (IPv6). It obsoletes RFC 2460.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="86"/>
          <seriesInfo name="RFC" value="8200"/>
          <seriesInfo name="DOI" value="10.17487/RFC8200"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3168" target="https://www.rfc-editor.org/info/rfc3168" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3168.xml">
          <front>
            <title>The Addition of Explicit Congestion Notification (ECN) to IP</title>
            <author fullname="K. Ramakrishnan" initials="K." surname="Ramakrishnan"/>
            <author fullname="S. Floyd" initials="S." surname="Floyd"/>
            <author fullname="D. Black" initials="D." surname="Black"/>
            <date month="September" year="2001"/>
            <abstract>
              <t>This memo specifies the incorporation of ECN (Explicit Congestion Notification) to TCP and IP, including ECN's use of two bits in the IP header. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3168"/>
          <seriesInfo name="DOI" value="10.17487/RFC3168"/>
        </reference>
      </references>
    </references>
    <?line 509?>



  </back>
  <!-- ##markdown-source:
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
+H+/mFFAx4sAAA==

-->

</rfc>
