<?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.43 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-li-individual-inip-01" category="exp" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="INIP">In-Network Inference Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-li-individual-inip-01"/>
    <author initials="Q." surname="Li" fullname="Qing Li">
      <organization>Pengcheng Laboratory</organization>
      <address>
        <email>liq@pcl.ac.cn</email>
      </address>
    </author>
    <author initials="G." surname="Xie" fullname="Guorui Xie">
      <organization>Pengcheng Laboratory</organization>
      <address>
        <email>xgr19@tsinghua.org.cn</email>
      </address>
    </author>
    <author initials="Y." surname="Jiang" fullname="Yong Jiang">
      <organization>Tsinghua Shenzhen International Graduate School</organization>
      <address>
        <email>jiangy@sz.tsinghua.edu.cn</email>
      </address>
    </author>
    <author initials="M." surname="Xu" fullname="Mingwei Xu">
      <organization>Tsinghua University</organization>
      <address>
        <email>xumw@tsinghua.edu.cn</email>
      </address>
    </author>
    <date year="2026" month="September" day="02"/>
    <area>Web and Internet Transport</area>
    <workgroup>Individual Submission</workgroup>
    <keyword>AI</keyword>
    <keyword>In-Network Computing</keyword>
    <keyword>P4</keyword>
    <abstract>
      <?line 75?>

<t>This document specifies the In-Network Inference Protocol (INIP), a lightweight protocol designed specifically for implementing high-speed in-network inference in data center internal networks. INIP utilizes data plane devices (such as switches, DPUs, and SmartNICs) to perform lightweight inference tasks while ensuring that core network forwarding functions are not affected. The protocol operates based on the IPv4 protocol and adopts a fixed, lightweight packet format.</t>
      <t>INIP adopts a two-tier architecture of "centralized control plane adaptation and scheduling, and minimal data plane execution". The control plane stores all inference models, deploys model rules to data plane devices using a CDN-like scheduling method, and assumes the responsibility of degraded fallback inference; the data plane performs packet parsing and match action table-based inference. This document details INIP's core logic, packet format, data plane device constraints, model expression specifications, control plane responsibilities, CDN-like scheduling mechanism, dynamic model popularity replacement, and overall execution process.</t>
    </abstract>
  </front>
  <middle>
    <?line 82?>

<section anchor="introduction">
      <name>Introduction</name>
      <section anchor="background">
        <name>Background</name>
        <t>With the rapid development of data center networks and artificial intelligence, the demand for low-latency and high-throughput inference services within data centers continues to grow. Typical scenarios include real-time traffic classification, malicious traffic detection, as well as lightweight computer vision/natural language applications (rapid product defect detection, simple face recognition, short text sentiment polarity judgment, device control command recognition, etc.).</t>
        <t>Traditional inference deployment (deploying inference services on dedicated servers) can not use existing data plane resources for green networking and often introduces additional transmission latency. To address this, this document proposes the In-Network Inference Protocol (INIP). This protocol enables data plane devices to undertake fast inference tasks while ensuring their forwarding function. INIP makes the control plane store all models, implements in-network deployment of model rules using a CDN-like scheduling method, simplifies the adaptation of models to heterogeneous data plane devices through model distillation and cross-matching mode conversion, and optimizes data plane utilization through dynamic replacement based on model popularity. The INIP control plane also assumes the responsibility of fallback inference to ensure the normal execution of inference tasks.</t>
      </section>
      <section anchor="scope">
        <name>Scope</name>
        <t>This document defines INIP's core logic, packet format, data plane constraints, model expression specifications, control plane responsibilities, and overall process. The protocol is applicable to data center internal network environments, focusing on real-time, high-throughput inference scenarios that avoid large models with heavy computing. INIP does not define a new network layer protocol but operates based on the IPv4 protocol <xref target="RFC791"/>, and model query messages initiated by users to the control plane are implemented using the lightweight DNS protocol <xref target="RFC1035"/> to ensure standardized adaptation.</t>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The key terms used in this document are defined as follows:</t>
        <dl newline="true">
          <dt>Data Plane Device:</dt>
          <dd>
            <t>A network device (such as a Tofino switch <xref target="TOFINO"/>, DPU, or SmartNIC) that undertakes packet forwarding. A general inference table may be reserved during P4 <xref target="P4"/> code compilation (depending on resource availability) to execute user inference.</t>
          </dd>
          <dt>Inference Table</dt>
          <dd>
            <t>A general table reserved on a data plane device, populated with inference rules issued by the control plane. It adopts a "key field + action field" structure to perform fast match-based inference.</t>
          </dd>
          <dt>Feature</dt>
          <dd>
            <t>A core component of the key fields in the inference table, i.e., the feature data required for model inference. It corresponds one-to-one with the features in the INIP packet feature area, arranged with a fixed bit width, and serves as the core basis for the data plane to perform inference (table lookup and matching).</t>
          </dd>
          <dt>Matching Mode</dt>
          <dd>
            <t>The matching method for sample features during the operation of the data plane device's inference table, including exact matching, range matching, and ternary matching <xref target="P4"/>. It is determined by the remaining hardware resources after allocation to network functions.</t>
          </dd>
          <dt>Control Plane</dt>
          <dd>
            <t>The core scheduling and adaptation node of INIP, responsible for data plane device capability management, model logic conversion, rule issuance, CDN-like scheduling, model popularity statistics, dynamic model replacement, and degraded fallback inference. It also acts as a DNS server to receive and respond to model query messages sent by users.</t>
          </dd>
          <dt>CDN-like Scheduling</dt>
          <dd>
            <t>A scheduling method that determines the deployment location of models based on topological proximity, load balancing, data plane device capability, and model popularity.</t>
          </dd>
          <dt>Model Popularity</dt>
          <dd>
            <t>An indicator measuring the frequency of model queries (only counting model queries initiated by users to the control plane via the DNS protocol), used to determine whether a model is high-frequency or low-frequency, and to provide a basis for the dynamic replacement of data plane models.</t>
          </dd>
          <dt>General Decision Tree</dt>
          <dd>
            <t>A unified model format obtained by distilling various original models (deep learning models, traditional machine learning models) <xref target="DTDISTILL"/>.</t>
          </dd>
          <dt>Fallback Inference</dt>
          <dd>
            <t>A degradation scheme where the control plane independently executes inference tasks to ensure business continuity when there are no suitable data plane devices.</t>
          </dd>
        </dl>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="core-logic-overview">
      <name>Core Logic Overview</name>
      <t>The core design goal of INIP is to use data plane devices to enable lightweight, fast inference in data center internal networks while ensuring that core network forwarding functions (such as routing, ACL, firewall) are not compromised. The protocol operates based on the IPv4 protocol <xref target="RFC791"/>, with INIP packets encapsulated in IPv4 packets for transmission.</t>
      <t>INIP adopts a two-tier architecture, with the core logic as follows:</t>
      <ol spacing="normal" type="1"><li>
          <t>Control Plane: Centrally manages all inference models (including original models and their distilled general decision trees) <xref target="DTDISTILL"/> <xref target="DLDISTILL"/>, undertaking core responsibilities such as model logic conversion after distillation, inference rule issuance, device capability management, CDN-like scheduling, model popularity statistics and dynamic replacement, and fallback inference. It also receives two types of messages sent by users—model queries (implemented using the DNS protocol <xref target="RFC1035"/> to obtain the model's data plane deployment location) and INIP-format inference requests (to obtain fallback inference results). The control plane acts as a DNS server to parse users' DNS query requests and return the corresponding IP addresses of data plane devices that hold the specific in-network inference tasks.</t>
        </li>
        <li>
          <t>Data Plane: Performs normal network functions and can receive model inference rules issued by the control plane. However, it only executes "packet parsing + matching-based inference" when its own IP is the destination IP of the INIP packet; after a successful inference, it needs to modify the inference result field and swap the source and destination IP pairs to ensure the packet is returned to the user.</t>
        </li>
        <li>
          <t>CDN-like Deployment and Popularity Adaptation: Based on CDN-like scheduling logic and combined with model popularity, the control plane prioritizes deploying general decision tree model rules for high-frequency queries to nearby, suitable data plane devices; the same model can be deployed on multiple data plane devices to achieve multi-node redundant deployment/load balancing, and optimize the utilization of the data plane inference table through dynamic popularity replacement.</t>
        </li>
        <li>
          <t>Fallback Mechanism: When there are no suitable data plane devices, no corresponding model rules are deployed on the data plane, or an interruption occurs during model rule replacement, the control plane automatically executes fallback inference.</t>
        </li>
        <li>
          <t>Request-Result Association: By setting a request identifier in the INIP packet, a one-to-one correspondence between inference requests and return results is achieved, ensuring that the user can clearly distinguish the inference results of different requests.</t>
        </li>
      </ol>
    </section>
    <section anchor="inip-packet-format">
      <name>INIP Packet Format</name>
      <t>An INIP packet consists of a fixed-length header (64 bits) and a variable-length feature area. The following is a visual representation of the INIP packet format (excluding the IPv4 header):</t>
      <artwork><![CDATA[
    0               1               2               3
    0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        Model ID (16bit)       |      Request ID (16bit)     |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    | Inference Res. | Feature Cnt. |                             |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                             +
    |                                                             |
    |              Feature Area (Variable Length)                 |
    |                                                             |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
      <t>Detailed descriptions of each INIP packet field (all 8 bits) are as follows:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Model ID (16 bits)</strong>: Uniquely identifies the inference model requested by the user, assigned by the control plane, and corresponds one-to-one with the model rules issued by the control plane to the data plane. It is the core index for users to initiate inference requests and for the data plane to perform matching-based inference; when users initiate a model query via the DNS, they need to use this model ID as the query key in the format "[Model ID].inip.local" (a local domain, resolvable only within the data center).</t>
        </li>
        <li>
          <t><strong>Request ID (16 bits)</strong>: generated and carried by the user when initiating an inference request, which must be unique within a certain period. When the data plane or control plane returns the inference result, it must carry this field unchanged to ensure that the user can associate the returned inference result with the corresponding request.</t>
        </li>
        <li>
          <t><strong>Inference Result (8 bits)</strong>: This field is valid when the Most Significant Bit (MSB) is set to 1; when valid, it carries the inference result returned to the user by the data plane device or control plane. When the MSB is 0, this field is a reserved bit, and the sender (user) must set it to 0, while the receiver (data plane/control plane) ignores this field. After a successful inference, the MSB of this field must be set to 1, and the corresponding inference result must be filled in.</t>
        </li>
        <li>
          <t><strong>Feature Count (8 bits)</strong>: Indicates the total number of features (N) carried by the inference request, informing the data plane device of the number of features to be parsed.</t>
        </li>
        <li>
          <t><strong>Feature Area (Variable Length)</strong>: Stores N feature data required for inference. Each feature adopts a globally fixed bit width (e.g., 32 bits, uniformly specified by the control plane).</t>
        </li>
      </ul>
    </section>
    <section anchor="data-plane-device-constraints">
      <name>Data Plane Device Constraints</name>
      <section anchor="heterogeneous-device-support">
        <name>Heterogeneous Device Support</name>
        <t>INIP supports heterogeneous data plane devices. Regardless of the physical type (switch, DPU, smartNIC), manufacturer, or hardware specifications of the device, all data plane devices can reserve a general inference table (optional, only considered after meeting normal networking functions). Inference operations are completed through this single inference table, and hardware differences between devices do not affect protocol execution.</t>
      </section>
      <section anchor="data-plane-inference-table-structure">
        <name>Data Plane Inference Table Structure</name>
        <t>Data plane devices only reserve one general inference table, which is populated by the control plane with inference rules converted from general decision trees. The structure is simple and fixed, adapting to the data plane's line-rate table lookup requirements. The inference table adopts a fixed "key field + action field" structure:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Key Fields</strong>: Core matching fields, fixedly including two types of fields: ① Model ID (8 bits): Exactly the same as the Model ID field in the INIP packet, used to locate the model rule corresponding to the current inference; ② Inference Features (n fixed-bit-width features): Corresponding to the number of resolvable features n of the data plane, and features beyond the N features required by the model should be regarded as meaningless; the bit width of each feature is consistent with the INIP packet feature area (uniformly specified by the control plane).</t>
          </li>
          <li>
            <t><strong>Action Fields</strong>: Action instructions executed after a successful table lookup, fixedly including one type of core field, namely the Inference Result (8 bits): the inference conclusion corresponding to the set of key fields (Model ID + Features), used to fill the INIP packet.</t>
          </li>
        </ul>
      </section>
      <section anchor="fixed-inference-parameters">
        <name>Fixed Inference Parameters</name>
        <t>The fixed inference-related parameters of the inference table include:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Resolvable Feature Count (n)</strong>: The number of fixed-bit-width features that the device can resolve. The bit width of all features is globally uniform, which needs to adapt to the value range (0-255) of the feature count (8 bits). The control plane will select suitable devices to deploy model rules based on this parameter, ensuring that n ≥ the number of features N required by the model.</t>
          </li>
          <li>
            <t><strong>Inference Table Matching Mode</strong>: The matching mode (exact matching, range matching, ternary matching) of each key field in the inference table, determined by the allocation of the device's hardware resources. For example, when the TCAM resources of the Tofino chip are prioritized for core network functions and SRAM has redundancy, the inference table will adopt an SRAM-based exact matching mode.</t>
          </li>
          <li>
            <t><strong>Maximum Number of Inference Table Entries</strong>: The maximum number of inference rules that the device can carry, determined by the hardware resources of the inference table (such as SRAM capacity).</t>
          </li>
        </ul>
        <t>The inference-related parameters of data plane devices are globally fixed after P4 code compilation <xref target="P4"/>. If inference-related parameters need to be adjusted, the control plane can modify and recompile the P4 code as needed, and synchronously update the corresponding data plane device information in the capability database to ensure the accuracy of subsequent model replacement and adaptation.</t>
      </section>
      <section anchor="data-plane-execution-logic">
        <name>Data Plane Execution Logic</name>
        <t>Only the destination of the INIP packet (which may be a data plane device, control plane, or user) will execute "packet parsing + table-based inference (if it is a data plane/control plane) + post-hit processing" operations; network devices with non-destination IPs (including non-destination data plane devices) only perform behaviors consistent with network forwarding logic. When the destination is a data plane device, the specific execution logic is as follows:</t>
        <ol spacing="normal" type="1"><li>
            <t>Packet Parsing: Parse the INIP packet encapsulated in the IPv4 packet, extract the Model ID, Request ID, Feature Count N, and N inference features, and record the source IP address and destination IP address;</t>
          </li>
          <li>
            <t>Matching-based Inference: Perform table lookup operations according to the inference table matching rules based on the extracted Model ID and inference features, distinguishing between hit and miss scenarios;</t>
          </li>
          <li>
            <t>Miss Handling: If there is no hit in the inference table, forward the complete packet to the control plane (while modifying the destination IP in the IPv4 header to the control plane IP), and the control plane executes fallback inference;</t>
          </li>
          <li>
            <t>Post-hit Processing (Core Operation): If there is a hit in the inference table, perform two key operations: ① Modify the "Inference Result" field of the INIP packet: Set the Most Significant Bit (MSB) of this field to 1 to identify that the inference result is valid, and fill the matched inference result from the inference table into this field; ② Adjust the IPv4 header: Swap the source IP address and destination IP address, i.e., change the original source IP (user IP) in the IPv4 header to the destination IP, and the original destination IP (data plane device IP) to the source IP, ensuring that the data packet can be returned to the requesting user along the original path;</t>
          </li>
          <li>
            <t>Packet Forwarding: Send the modified IPv4 packet according to the networking forwarding logic.</t>
          </li>
        </ol>
      </section>
    </section>
    <section anchor="model-expression-specifications">
      <name>Model Expression Specifications</name>
      <t>All models in INIP are represented in the form of general decision trees, which are obtained by distilling various original models (including deep learning models and traditional machine learning models) through knowledge distillation technology <xref target="DTDISTILL"/>. This ensures the unity and adaptability of model expression, facilitating the control plane to convert them into inference rules supported by data plane devices.</t>
      <t>A general decision tree only defines the business logic judgments required for inference (such as feature interval judgment, equality judgment) and is not bound to the matching mode of any data plane device. This allows models from different sources and types to be flexibly adapted to devices with different matching modes after distillation. The control plane stores all original models and their corresponding general decision trees, while the data plane only stores the inference table rules converted by the control plane; the control plane uniformly assigns Model IDs to ensure their uniqueness, and this Model ID will serve as the core key for users to initiate queries.</t>
    </section>
    <section anchor="core-responsibilities-of-the-control-plane">
      <name>Core Responsibilities of the Control Plane</name>
      <t>The control plane is the core adaptation and scheduling node of INIP, undertaking the following key responsibilities, including core functions such as CDN-like scheduling, model popularity management, and fallback inference, to ensure the efficient operation of the protocol:</t>
      <section anchor="data-plane-device-capability-management">
        <name>Data Plane Device Capability Management</name>
        <t>The control plane maintains a dynamically updatable device capability database, which records the fixed parameters (n, matching mode, maximum number of entries), topological location, and remaining inference table capacity of each data plane device. After a data plane device deploys or deletes model rules, or updates inference parameters, the control plane updates the corresponding device information to support CDN-like scheduling and model popularity replacement.</t>
      </section>
      <section anchor="model-logic-conversion">
        <name>Model Logic Conversion</name>
        <t>The control plane converts the business logic of the general decision tree into inference rules according to the matching mode of the target data plane device. It also assigns a unique Model ID to each model, associating the model with the inference rules. The conversion process must follow the complete logical equivalence principle and allow cross-matching mode conversion (such as converting the range logic of the decision tree into exact matching or ternary matching rules) to ensure the accuracy of the inference results; the converted rules must adapt to the "key field + action field" structure of the data plane inference table.</t>
      </section>
      <section anchor="rule-issuance-verification">
        <name>Rule Issuance Verification</name>
        <t>Inference rules will be issued to the target data plane device only if both of the following conditions are met:</t>
        <ol spacing="normal" type="1"><li>
            <t>The number of resolvable features n of the device ≥ the number of features N required by the model; the control plane will only issue the corresponding model rules to devices that meet this condition;</t>
          </li>
          <li>
            <t>The number of rules generated after conversion does not exceed the remaining number of entries in the device's inference table.</t>
          </li>
        </ol>
      </section>
      <section anchor="cdn-like-scheduling-and-model-popularity-management">
        <name>CDN-like Scheduling and Model Popularity Management</name>
        <section anchor="cdn-like-scheduling-principles">
          <name>CDN-like Scheduling Principles</name>
          <t>During scheduling, the four-dimensional principles of "topological proximity + load balancing + capability adaptability + popularity priority" are followed. Priority is given to selecting devices that are close to the user, have low load, and meet the adaptation conditions (n≥N, number of rules ≤ remaining capacity) to deploy high-frequency popular model rules to data plane devices; the same model can be deployed on multiple suitable data plane devices to achieve near-user response and load sharing of inference requests, consistent with the core logic of CDN.</t>
        </section>
        <section anchor="model-popularity-considerations">
          <name>Model Popularity Considerations</name>
          <t>The control plane statistics the model query messages initiated by users to it (only counting model query messages sent by users, not INIP-format inference requests sent by users), and determines the model popularity level and replacement rules in combination with data plane device constraints. The specific consideration dimensions are as follows:</t>
          <ul spacing="normal">
            <li>
              <t><strong>Core Consideration Indicators</strong>: ① Model Query Frequency: Count the number of queries for each model within a fixed period (e.g., 1 hour) to distinguish between high-frequency (popular) and low-frequency models (example: ≥1000 queries per hour are high-frequency, &lt;1000 queries per hour are low-frequency); ② Request Latency Requirement: Prioritize high-frequency models that are "latency-sensitive" (such as device control command recognition, real-time traffic classification), which need to be deployed to the data plane first; ③ Model Resource Occupation: Consider the number of data plane inference table entries occupied by model rules, and prioritize models with "high popularity + low resource occupation" to improve resource reuse rate.</t>
            </li>
            <li>
              <t><strong>Popularity Judgment and Dynamic Replacement Rules</strong>: The control plane maintains a "model popularity ranking", which is updated every fixed period. The core scenario triggering dynamic replacement is "low-frequency models occupying resources while high-frequency models have no deployment space". During replacement, the principles of "high-frequency replacing low-frequency, low-resource-occupation replacing high-resource-occupation, and latency-sensitive models being retained first" are followed; if an inference request interruption occurs during replacement, the control plane automatically executes fallback inference to ensure business continuity; after the replacement is completed, inference requests are automatically switched to data plane response.</t>
            </li>
          </ul>
        </section>
        <section anchor="model-resource-reuse">
          <name>Model Resource Reuse</name>
          <t>If a data plane device still has remaining capacity in the inference table after deploying one model, it can continue to deploy other models, prioritizing high-frequency popular models to achieve efficient reuse of device resources; the same model can be deployed on multiple suitable data plane devices to further improve near-user response efficiency, achieve load sharing, and reduce the fallback inference pressure on the control plane.</t>
        </section>
      </section>
      <section anchor="degraded-fallback-inference">
        <name>Degraded Fallback Inference</name>
        <t>If there are no suitable data plane devices (e.g., no devices meet n≥N or the number of rules exceeds the limit), no corresponding model rules are deployed on the data plane (no corresponding Model ID), or an interruption occurs during model rule replacement, the control plane receives the INIP-format inference request message sent by the user and independently executes degraded fallback inference to ensure the inference task is not interrupted. Fallback inference has no data plane hardware acceleration, and is only used as a degradation scheme, not replacing the deployment of high-frequency models on the data plane. When the control plane returns the inference result, it must carry the Request ID and Model ID from the packet unchanged, set the MSB of the Inference Result field to 1, fill in the inference result, and swap the source IP and destination IP to ensure the packet is returned to the user.</t>
      </section>
      <section anchor="responding-to-user-requests">
        <name>Responding to User Requests</name>
        <t>The control plane acts as a DNS server to respond to model query messages sent by users via the DNS protocol <xref target="RFC1035"/>. The message uses "[Model ID].inip.local" (a local domain, resolvable only within the data center) as the query key, carrying the Model ID; if the model has multiple data plane deployment points (i.e., rules have been successfully issued to multiple suitable data plane devices), only the IP address of the data plane device closest to the user's topological location is returned; if the model has no data plane deployment points (no suitable data plane devices or no rules issued), the control plane's own IP address is returned. After obtaining the IP address, the user can cache the mapping relationship between the Model ID and the corresponding IP address locally, with the cache validity period uniformly configured by the control plane (set via the DNS TTL field). During the cache validity period, the user does not need to repeatedly send model query messages and can directly send corresponding messages based on the cached IP address: send INIP-format inference request messages to data plane devices, and send INIP-format inference request messages to the control plane (for fallback inference); after the cache expires, the user resends a DNS model query message to the control plane.</t>
      </section>
    </section>
    <section anchor="overall-process">
      <name>Overall Process</name>
      <t>The overall execution process of the INIP steps is as follows:</t>
      <ol spacing="normal" type="1"><li>
          <t>The control plane compiles P4 code for each data plane device (the code first includes network forwarding behaviors and an inference table when device resources are sufficient); when there is an inference table, it updates the corresponding information in the device capability database. If the inference table parameters (number of features, table capacity) need to be adjusted later, the control plane must recompile the P4 code and update the device capability database.</t>
        </li>
        <li>
          <t>The control plane distills and converts the original learning models into general decision trees, assigns a unique Model ID to the model, and stores all original models, corresponding general decision trees, and Model IDs; it also configures DNS services to support users to initiate queries with "[Model ID].inip.local" as the key.</t>
        </li>
        <li>
          <t>The control plane parses the general decision tree, and screens out multiple suitable target data plane devices (the same model can be deployed on multiple suitable devices) in combination with CDN-like scheduling logic (topological proximity + load balancing + capability adaptability + popularity priority).</t>
        </li>
        <li>
          <t>The control plane converts the decision tree logic into inference rules supported by the target device in an equivalent manner (i.e., adapting to the "key field + action field" structure of the data plane inference table), and checks whether the number of rules exceeds the limit based on the current remaining capacity of the device's inference table; if the remaining capacity is sufficient, completes the rule issuance, and updates the remaining capacity of the device in the device capability database, as well as the deployed model rules and Model ID information.</t>
        </li>
        <li>
          <t>The control plane statistics the frequency of user DNS model query messages corresponding to each Model ID, updates the model popularity ranking every fixed period; for high-frequency popular models, they can be deployed on multiple suitable data plane devices. If dynamic replacement of data plane model rules is needed, the replacement operation is performed. During the replacement, the control plane receives the INIP-format inference request message sent by the user and executes fallback inference.</t>
        </li>
        <li>
          <t>The user sends a model query message to the control plane via the DNS protocol, using "[Model ID].inip.local" as the query key to obtain the corresponding IP address: if the model has multiple data plane deployment points, the control plane returns the IP address of the data plane device closest to the user; if there are no data plane deployment points, the control plane returns its own IP. After obtaining the IP address, the user caches the mapping relationship between the Model ID and the IP address locally (the cache validity period is controlled by the DNS TTL field). During the cache validity period, the user directly sends an INIP inference request message to the corresponding node based on the cached IP address; after the cache expires, the user resends a DNS model query message to the control plane.</t>
        </li>
        <li>
          <t>Only the destination of the INIP packet (data plane device, control plane, or user) parses the packet; network devices with non-destination IPs only forward the packet normally, performing behaviors consistent with network logic.</t>
        </li>
        <li>
          <t>If the destination is a data plane device, extract the Model ID, Request ID, and feature data, and perform table-based inference; if there is a hit in the inference table, modify the Inference Result field (set MSB to 1 + fill in the inference result), swap the source and destination IP pairs in the IPv4 header, and forward the packet back to the user; if there is no hit in the inference table, forward the original INIP packet to the control plane for degraded fallback inference (the packet destination is modified to the control plane at this time).</t>
        </li>
        <li>
          <t>As a possible destination IP of the INIP packet, the control plane receives the INIP-format inference request message sent by the user, executes fallback inference, sets the MSB of the Classification Result field to 1, fills in the inference result, swaps the source and destination IP pairs in the IPv4 header, carries the Request ID and Model ID unchanged, and forwards the packet back to the user.</t>
        </li>
        <li>
          <t>When the user is the destination IP, parse and receive the inference result; network devices with non-destination IPs only forward the INIP packet normally.</t>
        </li>
      </ol>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>This document does not require any resource allocation from the Internet Assigned Numbers Authority (IANA). INIP reuses the private allocation value of the IPv4 Protocol field (range 128-255), which is a private use range reserved by IANA, and no IANA public allocation number is required; when users initiate model queries via the DNS protocol, the local domain "inip.local" (non-public domain) is used, which does not require domain name allocation from IANA and only needs to be configured for resolution within the data center.</t>
    </section>
    <section anchor="Security">
      <name>Security Considerations</name>
      <t>INIP is specifically designed for data center internal network environments. Users should ensure that the environment has security protection measures such as physical isolation and access control. Therefore, INIP packets are transmitted in plain text to prioritize low latency processing performance. For model query messages initiated by users via the DNS protocol, access control can be implemented through the internal DNS server of the data center to restrict only authorized users from initiating queries, preventing the leakage of Model IDs and device IP information.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC791">
          <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/RFC791"/>
        </reference>
        <reference anchor="RFC1035">
          <front>
            <title>Domain names - implementation and specification</title>
            <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
            <date month="November" year="1987"/>
            <abstract>
              <t>This RFC is the revised specification of the protocol and format used in the implementation of the Domain Name System. It obsoletes RFC-883. This memo documents the details of the domain name client - server communication.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="13"/>
          <seriesInfo name="RFC" value="1035"/>
          <seriesInfo name="DOI" value="10.17487/RFC1035"/>
        </reference>
        <reference anchor="DTDISTILL">
          <front>
            <title>Mousika: Enable General In-Network Intelligence in Programmable Switches by Knowledge Distillation</title>
            <author initials="G." surname="Xie">
              <organization/>
            </author>
            <author initials="Q." surname="Li">
              <organization/>
            </author>
            <author initials="Y." surname="Dong">
              <organization/>
            </author>
            <author initials="G." surname="Duan">
              <organization/>
            </author>
            <author initials="Y." surname="Jiang">
              <organization/>
            </author>
            <author initials="J." surname="Duan">
              <organization/>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="INFOCOM" value="IEEE Conference on Computer Communications"/>
          <seriesInfo name="DOI" value="10.1109/INFOCOM48880.2022.9796856"/>
        </reference>
        <reference anchor="P4">
          <front>
            <title>P4_16 Language Specification</title>
            <author>
              <organization>The P4 Language Consortium</organization>
            </author>
            <date year="2024"/>
          </front>
          <seriesInfo name="Version" value="1.2.5"/>
        </reference>
        <reference anchor="RFC2119">
          <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="RFC8174">
          <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="TOFINO">
          <front>
            <title>Tofino™ Programmable Switch Chip Datasheet</title>
            <author>
              <organization>Intel/Barefoot Networks</organization>
            </author>
            <date year="2018"/>
          </front>
        </reference>
        <reference anchor="DLDISTILL">
          <front>
            <title>Distilling the Knowledge in a Neural Network</title>
            <author initials="G." surname="Hinton">
              <organization/>
            </author>
            <author initials="O." surname="Vinyals">
              <organization/>
            </author>
            <author initials="J." surname="Dean">
              <organization/>
            </author>
            <date year="2015"/>
          </front>
          <seriesInfo name="NIPS" value="Deep Learning Workshop"/>
        </reference>
      </references>
    </references>
    <?line 342?>



  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA71d23Ibx5m+Z5XeYRa+MGABMClLtkSlsqZJyWYiHizS8bpS
qdRg0CQmGswg0zOkEMepvdibXKZqHyCb2n2RfRQ/yf6nPkxPA6RkZ52KTQxm
prv/4/cfujGZTB7s6CYt579Pi6pU+0lTt+rBTr6q6U/dPNrdfbb76MFOljb7
iXq7gtvb2TLXOq/KZr2CJ45fXL58sJPWKt1PvlWzBF6WHJeNqkvVJJd1WupV
VTcPdm6v4d5ynt/k8zYtkgv7mgc78yor0yW8a16nV82kyCe5vRH+zFeT3b0H
Ow92mrwpcMRycqqa26p+A39eqVqVmUrO66qpsqqAqcxmtbqB206Pzx/sFGkJ
AysY5c3t/oOdJJkkB8f8X+89h9Vy1TZ5ec3fnD+G17TNoqrlkbzU+8nX0+RV
jp+ThKf7NTxgL1U1jHOuyutsofByOqvqtKnqNX+tlmle7CdF/sfPV1kxTbNp
Vnrv/nKa/Fuu/Jd/2VZ1m7ur93v/2+t679nnjYaZLdp0Cg91x/lumvwqT3md
ZqTvKnifd5VGupRXJBcw3J/g/8LUtAGWAf++rFNgT6OSi2xRIdm9SfwB37X+
XP9paiei5m13Iiew4NafxQnceatye7U7i2/K/EbVOm+C5bbL2897gzzYKat6
CTO9UcS/1y8PP3u2Z/7c2/3kCf19dHl0fHF5/OrVPr9TxGtwUrU6fwPi/KJM
Z4VKvlSlqmHJHblrVFHk1yR6eYnSd12nyyXdf3GbN8AknczWya/L6rZQ82uV
HOW6yYuC6DfgAT0Rw3+EMgOWhUF4mcSvdxUYegT8612Hlxy1aRm7n1jd++JX
nQfmwNr95NHuo0f8Was6V0Dnq8pO9/j05dnh2Qk8evzixQtQIauLVSkKpWr8
Y9mWeUbr1nbUo7NjeHBvd7q3t/vsY3nV46dPn+5OcdDps8+effr0yad0//nj
gEHnj3+/9yloQHndpkDZi5XK8isZYhNpSZwGlwuwFI/dozBpDdYpb5fhuh9v
XPdvUA6rEqc/fTR9MkB5wxt8ibs8e3l8ehZM+7K6ysvqx//4R0xcksNFvkqO
0ibVC6Wa7csg8fv4CzC6V1XVJCKVOljD3lOS8ldxKRd5RBPWAFWcoII4p/DK
FkVe3nynvH6Vl03VF7azafKbvFynhY6Km+qJ296TjWQHa36B01ZqlbxSaV3i
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

-->

</rfc>
