<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="3"?>
<?rfc tocindent="yes"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc category="std" docName="draft-mao-rtgwg-apn-framework-for-ioa-00"
     ipr="trust200902">
  <front>
    <title abbrev="APN for IoA">APN Framework for Internet of Agent
    (IoA)</title>

    <author fullname="Jianwei Mao" initials="J. " surname="Mao">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street/>

          <city>Beijing</city>

          <code>100095</code>

          <country>China</country>
        </postal>

        <email>MaoJianwei@huawei.com</email>
      </address>
    </author>

    <author fullname="Zhenbin Li" initials="Z. " surname="Li">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street/>

          <city/>

          <region/>

          <code/>

          <country/>
        </postal>

        <phone/>

        <facsimile/>

        <email>robinli314@163.com</email>

        <uri/>
      </address>
    </author>

    <author fullname="Nan Geng" initials="N." surname="Geng">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street/>

          <city/>

          <region/>

          <code/>

          <country/>
        </postal>

        <phone/>

        <facsimile/>

        <email>gengnan@huawei.com</email>

        <uri/>
      </address>
    </author>

    <author fullname="Chong Zheng" initials="C." surname="Zheng">
      <organization>Huawei Technologies</organization>

      <address>
        <postal>
          <street/>

          <city/>

          <region/>

          <code/>

          <country/>
        </postal>

        <phone/>

        <facsimile/>

        <email>zhengchong6@huawei.com</email>

        <uri/>
      </address>
    </author>

    <date day="1" month="November" year="2025"/>

    <abstract>
      <t>With the rapid development of large model technologies in the AI
      field, it has become possible to develop more intelligent assistant
      software, which is currently referred to as AI Agents in the industry.
      These agents may come from different manufacturers and be deployed on
      different cloud platforms and regions. They need to communicate and
      collaborate with each other through the Internet, which is called
      Internet of Agents (IoA). Different interactions of AI agents have
      varying task requirements, which also lead to different demands on the
      network. This requires network providing various fine granular services
      for the interactions of AI agents.</t>

      <t>This document proposes the application of the APN framework in the
      IoA scenario and analyzes its necessity.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>With the rapid development of large language model technologies in
      the AI field, it has become possible to develop more intelligent
      assistant software, which is currently referred to as AI agents in the
      industry.</t>

      <t>Various types of AI agents have emerged rapidly within a year,
      serving different industries and people's daily lives. Examples include
      deep research agents, code development agents, text generation agents,
      image generation agents, video generation agents, as well as agents for
      ordering meals, booking flights, booking hotels, and travel
      planning.</t>

      <t>These agents may come from different manufacturers and be deployed on
      different cloud platforms and regions. They need to communicate and
      collaborate with each other through the internet.</t>

      <t>For example, a user might request the marketing agent to help
      generate promotional materials for a new router product. The marketing
      agent might first ask the text generation agent to write promotional
      copy, then request the image generation agent to create promotional
      images, and subsequently ask the video generation agent to produce a
      product introduction video. Finally, it would collect all the
      promotional materials from these agents, save them on the server and
      notify the user to review them.</t>

      <t>Different interactions of AI agents have varying task requirements,
      which also lead to different demands on the network. This requires
      network providing various fine granular services for the interactions of
      AI agents.</t>
    </section>

    <section title="Requirements Language">
      <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">RFC 2119</xref> <xref target="RFC8174">RFC
      8174</xref> when, and only when, they appear in all capitals, as shown
      here.</t>
    </section>

    <section title="Terminology">
      <t>APN: Application-aware Networking</t>

      <t>IoA: Internet of Agents</t>
    </section>

    <section title="The Necessity of APN Framework for IoA">
      <t/>

      <section title="What is APN">
        <t>APN is a technology that enables networks to be aware of
        application requirements. Its framework and extension are defined in
        <xref target="I-D.li-rtgwg-apn-framework"/> and <xref
        target="I-D.li-rtgwg-apn-app-side-framework"/>.</t>

        <t>These documents propose a new framework, named Application-aware
        Networking (APN), where application-aware information (APN attribute)
        including application-aware identification (APN ID) and
        application-aware parameters (APN Parameters), is encapsulated at
        network edge devices and carried along with the encapsulation of the
        tunnel used by the packet when traversing the APN domain.</t>

        <t>By APN domain we intend the operator infrastructure where APN is
        used from edge to edge (ingress to egress) and where the packet is
        encapsulated using an outer header incorporating the APN information.
        The APN attribute will facilitate service provisioning and provide
        fine-granularity services in the APN domain.</t>

        <t>In addition, for the extension of the APN framework for application
        side, the APN resources of the APN domain are allocated to
        applications which compose and encapsulate the APN attribute in
        packets. When network devices in the APN domain receive packets
        carrying APN attribute, they can directly apply policies for these
        traffic flows according to the APN attribute encapsulated by
        applications.</t>

        <t>APN can be applied in IoA scenarios, allowing networks to
        understand the requirements of each agent and its tasks on the
        network. This enables the network to provide services that match these
        requirements, such as SLA assurance, security, measurement, and
        visualization, thereby improving the performance, security, and
        maintainability of agent interactions.</t>
      </section>

      <section title="IoA needs Differentiated SLA Guarantee from network">
        <t>Different tasks of agent interaction have varying requirements for
        network transmission.</t>

        <t>For example:</t>

        <t><list style="symbols">
            <t>Tool invocation tasks emphasize real-time interaction and are
            highly sensitive to latency and jitter, but have low bandwidth
            requirements.</t>

            <t>Text generation tasks are relatively sensitive to latency but
            have low bandwidth requirements.</t>

            <t>Image generation tasks have low latency requirements but
            relatively high bandwidth demands.</t>

            <t>Video generation tasks have low requirements for latency and
            jitter but very high bandwidth demands.</t>
          </list>Each of these tasks can be further divided into real-time
        interaction tasks and background interaction tasks:</t>

        <t><list style="symbols">
            <t>Real-time interaction is used in scenarios where users actively
            operate the system. Since the final response needs to be presented
            to the user (who waits for the result in front of the device), it
            has higher requirements for real-time performance (i.e., latency
            and jitter).</t>

            <t>Background interaction is initiated by the agent software in
            the application's backend system, thus having lower requirements
            for real-time performance.</t>
          </list>These different QoS requirements can be identified in traffic
        packets using APN. Currently, APN defines four APN parameters:</t>

        <t><list style="symbols">
            <t>Bandwidth Requirement Parameter</t>

            <t>Delay Requirement Parameter</t>

            <t>Delay Variation Parameter</t>

            <t>Packet Loss Rate Parameter</t>
          </list>New APN parameters may need to be defined to carry some
        information about AI models, tools, tasks, data, or tokens for some
        specific IoA scenarios.</t>

        <t>By carrying these APN parameters in the messages, the network can
        provide differentiated and targeted services for different intelligent
        agent tasks to ensure a good experience for agent interactions. For
        example, the network can offer fine-grained SLA guarantees,
        fine-grained network slicing, and fine-grained deterministic
        networking.</t>
      </section>

      <section title="IoA needs Secure Transmission from network">
        <t>Agents interact with each other through the Internet, which may
        require the network to provide security services.</t>

        <t>For example, a food ordering agent on a mobile phone communicates
        with a payment agent on the cloud, and the payment agent communicates
        with a bank agent, which may be on-premises. These communications
        involve your personal account information and financial data, so they
        require a higher level of security.</t>

        <t>The APN ID or APN parameter can be used to carry encrypted
        transmission requirements. The network can then create IPsec tunnels
        or quantum transmission channels and direct the traffic of agent
        interactions to these secure channels to prevent eavesdropping,
        tampering, and forgery.</t>

        <t>For enterprises, they may want to enforce access control to agent
        interactions. For instance, some agents that can access sensitive data
        are not allowed to collaborate with external agents to prevent data
        leakage. However, some general-purpose agents are allowed to interact
        with external agents to improve team efficiency.</t>

        <t>The APN ID or APN parameter can be used to carry the identifier of
        the security group to which an agent belongs. The network can then
        perform access control based on these identifiers to avoid unexpected
        agent interactions and information security risks.</t>
      </section>

      <section title="IoA needs Measurement and Visualization from network">
        <t>When intelligent agents interact through the internet, the quality
        of communication may need to be measured for purposes such as fault
        localization, troubleshooting, and visualization.</t>

        <t>APN IDs can be used to identify AI agents, and network devices can
        be configured to enable network measurement functions (e.g., IFIT) for
        specific agents, thereby enabling in-band measurement of the
        interaction traffic among these agents. The network controller can
        visually present the communication quality of these agent interactions
        to the network administrators.</t>
      </section>
    </section>

    <section title="APN framework for IoA">
      <t/>

      <section title="Using APN framework in IoA scenarios">
        <t>The APN architecture can be applied to IoA scenarios, as
        illustrated in the following diagram. The IoA service requirement that
        needs to be carried in the APN ID or APN parameter essentially belongs
        to a type of application-aware information (i.e., APN attribute).</t>

        <t><figure>
            <artwork><![CDATA[                              +------------------+
                              |   APN-Customer   |
                              +------------------+
                                       |
                                       | NBI
                                       |
                              +------------------+
          --------------------|                  |------------------------
         /                    |  APN-Controller  |                        \
        /              -------|                  |--------                 \
       /              /       +------------------+        \                 \
      |              /       /         |          \        \                 |
+----------+        /       /          | SBI       \        \          +----------+
|AI Agent 1|-\     |       |           |            |        |      /->|AI Agent 3|
+----------+ |  +-----+ +-----+   +---------+   +--------+ +-----+  |  +----------+
             \->|APN  | |APN  |-A-|APN      |-A-|APN     | |APN  |->/
 User side      |-    |-|-    |-B-|-        |-B-|-       |-|-    |      Server side
             /->|Edge | |Head |-C-|Midpoint |-C-|Endpoint| |Edge |->\
+----------+ |  +-----+ +-----+   +---------+   +--------+ +-----+  |  +----------+
|AI Agent 2|-/                                                      \->|AI Agent 4|
+----------+    |------------------APN Domain--------------------|     +----------+

                  Figure 1: Using APN framework in IoA scenarios
]]></artwork>
          </figure></t>

        <t><list style="symbols">
            <t>AI Agent: Interacts with other AI Agents on the internet,
            sending task requests, asynchronous notifications, and result
            responses to the others. It can subscribe to network services from
            operators and optionally carry service requirement in the sent
            traffic via APN Attribute. This means that the AI Agent behaves as
            an APN-capable Application Client or Server as defined in <xref
            target="I-D.li-rtgwg-apn-app-side-framework"/>.</t>

            <t>APN-Edge: If AI Agents send traffic without APN attribute,
            APN-Edge device should obtain the APN attribute based on the
            configuration on this device according to the existing information
            in the packet header, create a tunnel encapsulation and add the
            APN attribute into it, and send the packets carrying the APN
            attribute to the APN-Head device finally. When the packets are
            going to leave the APN domain, APN-Edge should remove the
            encapsulation if APN-Edge and APN-Endpoint are deployed
            separately. Those are detailly defined in <xref
            target="I-D.li-rtgwg-apn-framework"/>. If the APN attribute is
            added by the AI Agent, the functionalities of the APN-Edge need to
            be changed. APN-Edge can directly transmit the packets to APN-Head
            without encapsulating tunnels. That is detailly defined in <xref
            target="I-D.li-rtgwg-apn-app-side-framework"/>.</t>

            <t>APN-Head: Identifies the service requirements of IoA based on
            the APN attribute in the packet and provides network services that
            meet these requirements. This may involve encapsulating the packet
            with a new TE tunnel, placing the packet into an appropriate QoS
            queue, directing the packet to a network slice, adding or
            modifying some fields on the packet to perform network
            measurement, making access policy decisions, performing secondary
            encryption on the packet content, or diverting it to a secure
            channel.</t>

            <t>APN-Midpoint: APN-Midpoint provides the path service and
            enforces various policies according to the APN attribute carried
            in the packets. The APN-Midpoint may also adjust the resource
            locally to guarantee the service requirements depending on a
            specific policy and the APN attribute conveyed by the packet.</t>

            <t>APN-Endpoint: the process of the specific network service will
            end at the APN-Endpoint. If the outer tunnel header for the
            service between the APN-Head and the APN-Endpoint exists, it will
            be removed by the APN-Endpoint. If the APN attribute is sent by AI
            Agents, the APN-Endpoint MUST keep the APN attribute in packets
            without any change.</t>
          </list></t>

        <t/>
      </section>

      <section title="Requirements">
        <t/>

        <section title="Requirements for AI Agents">
          <t><list style="symbols">
              <t>[REQ A01] AI Agent should support to subscribe network
              services from ISP, and get service requirement identifier or the
              usage authorization of service requirement metadata from ISP
              (out-band) or its APN-Controller.</t>

              <t>[REQ A02] AI Agent should support to describe the service
              status, the quality of users' experience (QoE), or the key
              quality indicators (KQI) in the APN attribute.</t>

              <t>[REQ A03] AI Agent should support to carry the APN attribute
              in the packets of the agent interaction traffic.</t>

              <t>TBD</t>
            </list></t>

          <t/>
        </section>

        <section title="Requirements for Network Devices">
          <t><list style="symbols">
              <t>[REQ D01] APN-Head should support steering the packets based
              on APN attributes into a TE tunnel that satisfies the SLA
              requirements of the agent interaction.</t>

              <t>[REQ D02] APN-Head, APN-Midpoint and APN-Endpoint should
              support putting the packets based on APN attributes into a QoS
              queue buffer that satisfies the SLA requirement of the agent
              interaction.</t>

              <t>[REQ D03] APN-Head, APN-Midpoint and APN-Endpoint should
              support to steer the packets based on APN attributes into a
              network slice that satisfies the SLA requirement of the agent
              interaction.</t>

              <t>[REQ D04] APN-Head, APN-Midpoint and APN-Endpoint should
              support adding, modifying, or marking some fields of the packets
              based on APN attributes to perform network measurement that
              satisfies the measurement and visualization requirement of the
              agent interaction.</t>

              <t>[REQ D05] APN-Head should support enforcing access control to
              the packets based on APN attributes, in accordance with some
              security rules or policies that satisfy the security requirement
              of the agent interaction.</t>

              <t>TBD</t>
            </list></t>

          <t/>
        </section>

        <section title="Requirements for Network Controller">
          <t><list style="symbols">
              <t>[REQ C01] APN-Controller should support to notify the
              allocated results of the service requirement identifier, and the
              usage authorization of the service requirement metadata to AI
              Agent.</t>

              <t>[REQ C02] APN-Controller should support to analysis the
              measure data or path data of the agent interaction traffic
              reported from network devices to achieve traffic visualization
              and network troubleshooting.</t>

              <t>TBD</t>
            </list></t>
        </section>

        <section title="Requirements for Protocol Extensions">
          <t><list style="symbols">
              <t>[REQ P01] Protocol extensions should be defined for the AI
              Agent to request the APN-Controller in the network to allocated
              the APN resources of the APN domain.</t>

              <t>[REQ P02] Security mechanism should be defined to guarantee
              for that the APN attribute being securely transmitted among the
              AI Agent(user side), AI Agent (server side) and the APN
              domain.</t>

              <t>TBD</t>
            </list></t>
        </section>

        <section title="Requirements for Security">
          <t><list style="symbols">
              <t>[REQ S01] The task contents of AI agent interactions should
              be protected or keep invisible.</t>

              <t>[REQ S02] The traffic of sensitive tasks should be steered
              into a secure channel for transmission, such as IPsec tunnels
              and quantum channels.</t>

              <t>TBD</t>
            </list></t>
        </section>
      </section>
    </section>

    <section title="IANA Considerations">
      <t>This document does not include an IANA request.</t>

      <t/>
    </section>

    <section title="Security Considerations">
      <t>TBD</t>

      <t/>
    </section>
  </middle>

  <back>
    <references title="Normative References">
      <?rfc include="reference.RFC.2119"?>

      <?rfc include="reference.RFC.8126"?>

      <?rfc include='reference.RFC.8174'?>
    </references>

    <references title="Informative References">
      <?rfc include='reference.I-D.li-rtgwg-apn-framework'?>

      <?rfc include='reference.I-D.li-rtgwg-apn-app-side-framework'?>
    </references>
  </back>
</rfc>
