<?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-cui-semantic-routing-ai-agent-communication-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.1 -->
  <front>
    <title abbrev="AI Semantic Routing">Semantic Routing for AI Agent Communication</title>
    <seriesInfo name="Internet-Draft" value="draft-cui-semantic-routing-ai-agent-communication-00"/>
    <author initials="Y." surname="Cui" fullname="Yong Cui">
      <organization>Tsinghua University</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <code>100084</code>
          <country>China</country>
        </postal>
        <email>cuiyong@tsinghua.edu.cn</email>
        <uri>http://www.cuiyong.net/</uri>
      </address>
    </author>
    <author initials="Y." surname="Chao" fullname="Yihan Chao">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <code>100094</code>
          <country>China</country>
        </postal>
        <email>chaoyh@zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="C." surname="Du" fullname="Chenguang Du">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <code>100094</code>
          <country>China</country>
        </postal>
        <email>ducg@zgclab.edu.cn</email>
      </address>
    </author>
    <date year="2026" month="October" day="26"/>
    <area>Applications and Real-Time Area</area>
    <workgroup>Network Working Group</workgroup>
    <keyword>AI Agent</keyword>
    <keyword>Semantic Routing</keyword>
    <keyword>Agent Communication</keyword>
    <keyword>Application-Layer Routing</keyword>
    <abstract>
      <?line 66?>

<t>AI agents often know the intended outcome of a task without knowing which agent, model, tool, workflow, or service should process it.  This document describes an application-layer semantic routing framework that selects one Processing Target from task intent, execution context, target capabilities, constraints, and local policy.  It defines a common operation-level information model and externally observable selection behavior that protocol bindings can preserve.  Semantic matching is implementation-specific.  This document does not define task decomposition, multi-agent orchestration, network-layer routing, target discovery, target invocation, or a new agent communication protocol.</t>
    </abstract>
  </front>
  <middle>
    <?line 70?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>AI agents communicate with agents, models, tools, workflows, and services across different platforms and administrative domains.  Static configuration, broadcast queries, and repeated trial invocations can select unsuitable targets, expose task context unnecessarily, or add avoidable communication and processing overhead.</t>
      <t>Semantic routing addresses this problem at the application layer.  A Semantic Routing Function (SRF) evaluates a Task Intent together with Execution Context, Routing Constraints, Target Profiles, and local policy.  It produces a Routing Decision identifying a suitable Processing Target.  The Requester can then hand the task to that target using an invocation protocol supported by the target.</t>
      <t>This document defines common information and behavior at the semantic routing boundary.  A protocol binding can use this framework without adopting a particular semantic-matching implementation.</t>
      <section anchor="goals-and-scope">
        <name>Goals and Scope</name>
        <t>This document enables a Requester to express a task without naming a predetermined target and enables an SRF to select one authorized target that satisfies all mandatory requirements.  It describes logical roles, Routing Input, Target Profiles, Routing Decisions, Routing Errors, operation-level processing, and secure fallback.</t>
        <t>Publication, discovery, and distribution of Target Profiles are outside scope.  Target invocation is also outside scope.  Existing description mechanisms, including Agent Cards, can supply target information, and existing agent communication protocols can invoke the selected target.</t>
        <t>This document defines the information exchanged at the semantic routing boundary, the distinction between mandatory constraints and optional preferences, the order of eligibility and semantic evaluation, one-target decision semantics, and errors.  It does not define the SRF's internal algorithm.  If a Requester already has sufficient target information, policy, and authorization to select a target locally, it does not need to use an SRF.</t>
      </section>
      <section anchor="non-goals">
        <name>Non-Goals</name>
        <t>Semantic routing as specified here does not define IP routing, packet forwarding, reachability advertisement, path computation, name resolution, transport-layer load balancing, registry federation, topology discovery, target invocation, task decomposition, workflow planning, multi-agent orchestration, or any particular matching or semantic-information-management implementation.</t>
        <t>The term "routing" in this document refers only to application-layer selection of a Processing Target for a task.  It does not describe how network packets reach that target.</t>
      </section>
    </section>
    <section anchor="conventions-and-terminology">
      <name>Conventions and Terminology</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?>

<t>This document uses the following terms:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Requester:</strong> An entity that asks an SRF to select a Processing Target.  A Requester can be an AI agent, an application, or an orchestration component.</t>
        </li>
        <li>
          <t><strong>Semantic Routing Function (SRF):</strong> An application-layer function that evaluates Routing Input, Target Profiles, and local policy to produce a Routing Decision or Routing Error.</t>
        </li>
        <li>
          <t><strong>Routing Input:</strong> The Task Intent, Execution Context, Routing Constraints, and Routing Preferences submitted for one Routing Operation.</t>
        </li>
        <li>
          <t><strong>Processing Target:</strong> An agent, model, tool, workflow, or application service capable of processing a task.</t>
        </li>
        <li>
          <t><strong>Task Intent:</strong> A description of the outcome to be achieved.  A Task Intent describes the work rather than naming a specific Processing Target.</t>
        </li>
        <li>
          <t><strong>Execution Context:</strong> Information relevant to a Routing Decision, such as language, domain, content type, data classification, location, or deadline.</t>
        </li>
        <li>
          <t><strong>Routing Constraint:</strong> A condition that a Processing Target is required to satisfy.  Examples include a required capability, authorization, trust level, data residency, or permitted provider.</t>
        </li>
        <li>
          <t><strong>Routing Preference:</strong> A non-mandatory condition used to order otherwise eligible targets.  A Routing Preference cannot override a required capability, Routing Constraint, or Eligibility Policy.</t>
        </li>
        <li>
          <t><strong>Eligibility Policy:</strong> Local authorization, security, privacy, or administrative policy that determines whether a Candidate Target may be considered for a Requester.  Failure to satisfy Eligibility Policy makes a target ineligible.</t>
        </li>
        <li>
          <t><strong>Selection Policy:</strong> Local policy used to order or choose among Eligible Targets.  Selection Policy cannot make an ineligible target eligible.</t>
        </li>
        <li>
          <t><strong>Target Profile:</strong> A machine-readable description of a Processing Target, including its capabilities and policy-relevant attributes.</t>
        </li>
        <li>
          <t><strong>Target Information Source:</strong> A system or local configuration that supplies Target Profiles and operational state to an SRF.  This document does not define its publication or discovery protocol.</t>
        </li>
        <li>
          <t><strong>Candidate Target:</strong> A Processing Target considered by an SRF before all mandatory requirements have been evaluated.</t>
        </li>
        <li>
          <t><strong>Eligible Target:</strong> A Candidate Target that satisfies all required capabilities, Routing Constraints, and applicable Eligibility Policy.</t>
        </li>
        <li>
          <t><strong>Routing Decision:</strong> The result produced by an SRF, identifying a selected Processing Target and associated decision metadata.</t>
        </li>
        <li>
          <t><strong>Routing Error:</strong> The result produced when an SRF cannot complete a Routing Operation or cannot select an Eligible Target.</t>
        </li>
        <li>
          <t><strong>Semantic Match:</strong> An implementation-specific assessment of how well a Processing Target is suited to a Task Intent.  A Semantic Match is not an authorization, identity, trust, or security assertion.</t>
        </li>
        <li>
          <t><strong>Target View:</strong> The set of Processing Targets and policy-permitted target information visible to one SRF for one Requester.  A Target View is local and need not be globally complete.</t>
        </li>
        <li>
          <t><strong>Routing Operation:</strong> One evaluation of Routing Input that returns one selected Processing Target or a Routing Error.  A Routing Operation does not split or execute the task.</t>
        </li>
      </ul>
    </section>
    <section anchor="use-cases-and-requirements">
      <name>Use Cases and Requirements</name>
      <section anchor="processing-target-selection">
        <name>Processing Target Selection</name>
        <t>A Requester needs an agent, model, tool, workflow, or service for a task but does not know which available target satisfies its semantic, authorization, input, and data-handling requirements.  It sends intent and constraints to an SRF, which returns an Eligible Target.</t>
      </section>
      <section anchor="secure-fallback">
        <name>Secure Fallback</name>
        <t>The selected target becomes unavailable.  A Requester can request a new Routing Decision, but the new target must continue to satisfy all original required capabilities and Routing Constraints.  Fallback does not weaken security or privacy requirements.</t>
      </section>
      <section anchor="semantic-routing-behavior">
        <name>Semantic Routing Behavior</name>
        <t>For one Routing Operation, the framework distinguishes mandatory requirements from non-mandatory preferences, applies eligibility checks before semantic selection, and returns either one Processing Target or one Routing Error.  A Routing Operation does not decompose a task, create subtasks, or assign work to multiple targets.  Selection uses the SRF's local Target View and does not require a global routing table or convergence among SRFs.  The normative processing behavior is defined in <xref target="semantic-routing-procedure"/>.</t>
      </section>
    </section>
    <section anchor="architecture">
      <name>Architecture</name>
      <section anchor="functional-architecture">
        <name>Functional Architecture</name>
        <t>The semantic routing architecture contains four logical roles.  <xref target="fig-functional-architecture"/> shows their relationships.</t>
        <figure anchor="fig-functional-architecture">
          <name>Functional Architecture of Semantic Routing</name>
          <artwork><![CDATA[
 +-----------------------+     Target Profile / State
 | Target Information    |----------------------------+
 | Source                |                            |
 +-----------------------+                            v
                                            +-------------------+
 +-----------------------+  (1) Input       | Semantic Routing  |
 | Requester             |----------------->| Function (SRF)    |
 | Agent / Application / |<-----------------|                   |
 | Orchestrator          |  (2) Decision    | Candidate set     |
 +-----------+-----------+                  | Eligibility check |
             |                              | Semantic match    |
             | Invocation                   | Target selection  |
             | using an existing            +---------+---------+
             | protocol                               |
             |                                        |
             v                                        v
 +---------------------------------------------------------------+
 | Processing Targets                                            |
 | Agent A   Agent B   Agent N   Model   Tool   Workflow          |
 +---------------------------------------------------------------+

 (1) Routing Input
     Task Intent + Execution Context
     + Constraints + Preferences

 (2) Routing Decision
     Selected Target + Operation + Endpoint
     + Validity + Decision Metadata

]]></artwork>
        </figure>
        <t>The roles shown in <xref target="fig-functional-architecture"/> are:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Requester:</strong> Creates Routing Input, consumes a Routing Decision, and invokes the selected target using an existing protocol.</t>
          </li>
          <li>
            <t><strong>Semantic Routing Function:</strong> Validates input, enforces constraints and policy, evaluates semantic suitability, and selects one target.</t>
          </li>
          <li>
            <t><strong>Target Information Source:</strong> Supplies Target Profiles and operational state.  Its protocol is not defined here.</t>
          </li>
          <li>
            <t><strong>Processing Target:</strong> Authorizes and performs the selected operation using a separate invocation protocol.</t>
          </li>
        </ul>
        <t>These roles are logical.  Multiple roles can be implemented by one system, and one role can be distributed across multiple systems.</t>
      </section>
      <section anchor="deployment">
        <name>Deployment</name>
        <t>The SRF is the logical component responsible for Routing Decisions; it is not a required algorithm or separate network element.  It can be embedded in a Requester, agent host, gateway, or orchestration platform, or deployed as an independent service.  Deployment does not change the information-model semantics.  The Requester or an application-specific evaluator, rather than the SRF, determines whether a completed task satisfies the original intent.</t>
      </section>
      <section anchor="basic-interaction">
        <name>Basic Interaction</name>
        <t>The Requester sends Routing Input to the SRF after relevant Target Profiles are available and before a new task is invoked.  After authorization, validation, mandatory-requirement evaluation, and semantic selection, the SRF returns a Routing Decision for one invocation.  Invocation uses a separate existing protocol.  In an integrated gateway, the decision can remain internal and the gateway can invoke the selected target on the Requester's behalf.</t>
      </section>
      <section anchor="trust-boundaries">
        <name>Trust Boundaries</name>
        <t>The Requester, SRF, Target Information Source, and Processing Target can be operated by different administrative domains.  An SRF <bcp14>MUST NOT</bcp14> assume that a Target Profile is trustworthy merely because it is syntactically valid.  The SRF <bcp14>MUST</bcp14> apply local procedures for authenticating profile sources and evaluating capability and security claims.</t>
      </section>
      <section anchor="local-target-view">
        <name>Local Target View</name>
        <t>The Target View is the SRF's logical view of Processing Targets; it does not represent IP links or forwarding paths.  Agent discovery and update distribution are outside scope.  The SRF uses only the targets and policy attributes available in its local view for the authenticated Requester.</t>
        <t>The routing boundary can be exposed across administrative domains, but the decision is local.  This document does not define a global target catalogue, routing information exchange, or convergence between SRFs.  Different SRFs can therefore select different targets from the same Task Intent.</t>
      </section>
    </section>
    <section anchor="semantic-routing-information-model">
      <name>Semantic Routing Information Model</name>
      <t>This section defines the abstract information model.  A protocol binding can carry this information, but no standalone binding is defined in this document.</t>
      <section anchor="semantic-routing-input">
        <name>Semantic Routing Input</name>
        <t>Each Routing Input describes one Routing Operation.  It does not contain a task-decomposition plan or a list of agents to be orchestrated.</t>
        <t>Routing Input contains the following fields:</t>
        <ul spacing="normal">
          <li>
            <t><strong><tt>routing_id</tt>:</strong> A <bcp14>REQUIRED</bcp14> string generated by the Requester to correlate input, decisions, and errors.  It <bcp14>MUST</bcp14> be unique within the Requester's active routing operations and <bcp14>MUST NOT</bcp14> contain task content or personal data.  It is not an authorization credential, an idempotency key, or a replay-prevention mechanism.</t>
          </li>
          <li>
            <t><strong><tt>intent</tt>:</strong> A <bcp14>REQUIRED</bcp14> object describing the Task Intent.  It contains a <bcp14>REQUIRED</bcp14> <tt>description</tt> string and <bcp14>MAY</bcp14> contain a <tt>required_capabilities</tt> array.  The description states the desired outcome and <bcp14>SHOULD NOT</bcp14> name a predetermined target.  Every entry in <tt>required_capabilities</tt> is mandatory: an SRF <bcp14>MUST NOT</bcp14> select a target unless that capability is present in, or can be validly derived from, the Target Profile.  Capability identifiers <bcp14>SHOULD</bcp14> be absolute URIs when used across administrative domains.  A capability that the SRF cannot evaluate is handled as an unsupported Routing Constraint.</t>
          </li>
          <li>
            <t><strong><tt>context</tt>:</strong> An <bcp14>OPTIONAL</bcp14> object containing Execution Context.  This specification defines <tt>language</tt>, <tt>domain</tt>, <tt>content_types</tt>, <tt>data_classification</tt>, <tt>data_location</tt>, and <tt>deadline</tt>.  The <tt>deadline</tt> field, when present, <bcp14>MUST</bcp14> use the Internet date and time format defined by <xref target="RFC3339"/>.</t>
          </li>
          <li>
            <t><strong><tt>constraints</tt>:</strong> An <bcp14>OPTIONAL</bcp14> array of mandatory Routing Constraints.  Each constraint contains a <tt>name</tt> and a <tt>value</tt>.  The <tt>name</tt> <bcp14>MUST</bcp14> be an absolute URI as defined by <xref target="RFC3986"/>.  If an SRF does not recognize or cannot evaluate a constraint, it <bcp14>MUST</bcp14> return an <tt>unsupported_constraint</tt> Routing Error.</t>
          </li>
          <li>
            <t><strong><tt>preferences</tt>:</strong> An <bcp14>OPTIONAL</bcp14> ordered array of Routing Preferences.  Earlier elements have higher Requester priority.  Each preference contains a URI-valued <tt>name</tt> and a <tt>value</tt>.  A preference affects ordering only and cannot make an ineligible target eligible.  An SRF <bcp14>MAY</bcp14> ignore an unsupported preference; if it does so, the resulting Routing Decision <bcp14>MUST</bcp14> identify that preference in <tt>ignored_preferences</tt>.</t>
          </li>
        </ul>
        <t>Context describes the task but is not a mandatory rule by itself.  If a language, location, classification, or other context value must be enforced, the Requester <bcp14>MUST</bcp14> also express that requirement as a Routing Constraint.  Security-critical requirements <bcp14>MUST NOT</bcp14> be left for the SRF to infer from free-form intent text.</t>
      </section>
      <section anchor="target-profile">
        <name>Target Profile</name>
        <t>A Target Profile is the normalized target information used by an SRF; it is not a new discovery mechanism.  It can be derived from an existing description such as an Agent Card <xref target="A2A"/>, a catalogue, or local configuration.  The mapping from those sources is outside scope.  A Target Profile used by an SRF contains the following fields:</t>
        <ul spacing="normal">
          <li>
            <t><strong><tt>target_id</tt>:</strong> A <bcp14>REQUIRED</bcp14> stable identifier within the scope of the Target Information Source.</t>
          </li>
          <li>
            <t><strong><tt>profile_version</tt>:</strong> A <bcp14>REQUIRED</bcp14> opaque value that changes whenever information relevant to routing or policy evaluation changes.</t>
          </li>
          <li>
            <t><strong><tt>target_type</tt>:</strong> A <bcp14>REQUIRED</bcp14> value identifying the kind of target.  This document defines <tt>agent</tt>, <tt>model</tt>, <tt>tool</tt>, <tt>workflow</tt>, and <tt>service</tt>.</t>
          </li>
          <li>
            <t><strong><tt>description</tt>:</strong> An <bcp14>OPTIONAL</bcp14> human-readable description of the target.  An SRF <bcp14>MAY</bcp14> use this field for semantic matching but <bcp14>MUST</bcp14> treat it as untrusted input.</t>
          </li>
          <li>
            <t><strong><tt>capabilities</tt>:</strong> A <bcp14>REQUIRED</bcp14> array of identifiers describing functions supported by the target.  Capability identifiers <bcp14>SHOULD</bcp14> be absolute URIs when used across administrative domains.  Capability claims are not proof that the target is authorized, trustworthy, or currently able to perform an operation.</t>
          </li>
          <li>
            <t><strong><tt>operations</tt>:</strong> An <bcp14>OPTIONAL</bcp14> array of callable operations.  Each operation has an <tt>operation_id</tt>, a description, and optional input and output media types.</t>
          </li>
          <li>
            <t><strong><tt>languages</tt>:</strong> An <bcp14>OPTIONAL</bcp14> array of language tags as defined by <xref target="RFC5646"/>.</t>
          </li>
          <li>
            <t><strong><tt>security_attributes</tt>:</strong> An <bcp14>OPTIONAL</bcp14> object containing policy-relevant claims, such as an issuer, assurance level, authentication method, or data-handling property.  These claims are deployment-specific unless another specification defines their semantics and validation.</t>
          </li>
          <li>
            <t><strong><tt>status</tt>:</strong> A <bcp14>REQUIRED</bcp14> value indicating operational status.  This document defines <tt>active</tt>, <tt>unavailable</tt>, and <tt>withdrawn</tt>.  Only an <tt>active</tt> target is eligible for a new Routing Decision.</t>
          </li>
          <li>
            <t><strong><tt>endpoint</tt>:</strong> An <bcp14>OPTIONAL</bcp14> URI as defined by <xref target="RFC3986"/>, or an endpoint reference used by an authorized Requester to contact the target.  An SRF <bcp14>MUST NOT</bcp14> dereference an endpoint solely because it appears in a Target Profile.</t>
          </li>
          <li>
            <t><strong><tt>expires_at</tt>:</strong> An <bcp14>OPTIONAL</bcp14> timestamp after which the Target Profile is not valid for a new Routing Decision.  The timestamp <bcp14>MUST</bcp14> use the format defined by <xref target="RFC3339"/>.  A deployment using this field <bcp14>SHOULD</bcp14> define an acceptable clock-skew tolerance.</t>
          </li>
        </ul>
        <t>The publication, discovery, update, and withdrawal of Target Profiles are not specified by this document.</t>
      </section>
      <section anchor="routing-decision">
        <name>Routing Decision</name>
        <t>The decision identifies exactly one Processing Target for one Routing Operation.</t>
        <t>A successful Routing Decision contains the following fields:</t>
        <ul spacing="normal">
          <li>
            <t><strong><tt>routing_id</tt>:</strong> The <bcp14>REQUIRED</bcp14> identifier from the Routing Input.</t>
          </li>
          <li>
            <t><strong><tt>decision_id</tt>:</strong> A <bcp14>REQUIRED</bcp14> identifier generated by the SRF for audit and correlation.  It <bcp14>MUST</bcp14> be unique within the SRF's decision-retention scope and <bcp14>MUST NOT</bcp14> be treated as an authorization credential.</t>
          </li>
          <li>
            <t><strong><tt>selected_target</tt>:</strong> A <bcp14>REQUIRED</bcp14> object containing the <tt>target_id</tt>, <tt>profile_version</tt>, and <tt>target_type</tt>, and, when applicable, <tt>operation_id</tt> and <tt>endpoint</tt>, of the selected Processing Target.</t>
          </li>
          <li>
            <t><strong><tt>reason_codes</tt>:</strong> An <bcp14>OPTIONAL</bcp14> array of machine-readable identifiers describing factors in the decision.  Reason codes <bcp14>SHOULD</bcp14> be absolute URIs when exchanged across administrative domains.  They provide diagnostic information and <bcp14>MUST NOT</bcp14> be treated as security assertions.</t>
          </li>
          <li>
            <t><strong><tt>ignored_preferences</tt>:</strong> An array identifying Routing Preferences that were not understood or not applied.  This member is <bcp14>REQUIRED</bcp14> when at least one supplied preference was ignored and is otherwise <bcp14>OPTIONAL</bcp14>.</t>
          </li>
          <li>
            <t><strong><tt>expires_at</tt>:</strong> A <bcp14>REQUIRED</bcp14> timestamp after which the decision <bcp14>MUST NOT</bcp14> be used to initiate a new target invocation.  The timestamp <bcp14>MUST</bcp14> use the format defined by <xref target="RFC3339"/>.  A binding or deployment <bcp14>SHOULD</bcp14> define an acceptable clock-skew tolerance.</t>
          </li>
        </ul>
      </section>
      <section anchor="routing-error">
        <name>Routing Error</name>
        <t>A Routing Error contains the following fields:</t>
        <ul spacing="normal">
          <li>
            <t><strong><tt>routing_id</tt>:</strong> The Routing Input identifier, when it was present and could be safely parsed.</t>
          </li>
          <li>
            <t><strong><tt>error_code</tt>:</strong> A <bcp14>REQUIRED</bcp14> machine-readable identifier.  This document defines <tt>invalid_input</tt>, <tt>not_authorized</tt>, <tt>unsupported_constraint</tt>, <tt>no_eligible_target</tt>, and <tt>temporarily_unavailable</tt>.  Extension error codes <bcp14>SHOULD</bcp14> be absolute URIs when exchanged across administrative domains.</t>
          </li>
          <li>
            <t><strong><tt>reason</tt>:</strong> An <bcp14>OPTIONAL</bcp14> human-readable explanation intended for an authorized operator or Requester.  It <bcp14>MUST NOT</bcp14> reveal targets or policy information that the Requester is not authorized to learn.</t>
          </li>
          <li>
            <t><strong><tt>retryable</tt>:</strong> A <bcp14>REQUIRED</bcp14> Boolean indicating whether repeating the Routing Operation without changing its mandatory requirements might succeed later.</t>
          </li>
          <li>
            <t><strong><tt>retry_after</tt>:</strong> An <bcp14>OPTIONAL</bcp14> <xref target="RFC3339"/> timestamp before which the Requester <bcp14>SHOULD NOT</bcp14> retry.  It <bcp14>MUST</bcp14> be omitted unless <tt>retryable</tt> is true.</t>
          </li>
        </ul>
        <t>The error codes have the following meanings:</t>
        <ul spacing="normal">
          <li>
            <t><strong><tt>invalid_input</tt>:</strong> The Routing Input is malformed or violates an implementation limit.</t>
          </li>
          <li>
            <t><strong><tt>not_authorized</tt>:</strong> The Requester is not authorized to perform semantic routing or to obtain an applicable Target View.</t>
          </li>
          <li>
            <t><strong><tt>unsupported_constraint</tt>:</strong> A Routing Constraint or required capability is unknown or cannot be evaluated.</t>
          </li>
          <li>
            <t><strong><tt>no_eligible_target</tt>:</strong> No target satisfies all required capabilities, Routing Constraints, and Eligibility Policy.</t>
          </li>
          <li>
            <t><strong><tt>temporarily_unavailable</tt>:</strong> The SRF cannot complete selection because required information or resources are temporarily unavailable.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="semantic-routing-procedure">
      <name>Semantic Routing Procedure</name>
      <section anchor="required-processing-order">
        <name>Required Processing Order</name>
        <t>An SRF <bcp14>MUST</bcp14> behave as if it performs the following steps in order:</t>
        <ol spacing="normal" type="1"><li>
            <t>Establish the Requester's security context and authorized Target View.</t>
          </li>
          <li>
            <t>Validate the Routing Input and identify unsupported mandatory requirements.</t>
          </li>
          <li>
            <t>Construct a Candidate Target set from valid, active, and visible Target Profiles, and apply Eligibility Policy.</t>
          </li>
          <li>
            <t>Evaluate all <tt>required_capabilities</tt> and Routing Constraints.  A target that fails any one of them is removed from further consideration.</t>
          </li>
          <li>
            <t>Evaluate Semantic Match for the remaining Eligible Targets.</t>
          </li>
          <li>
            <t>Apply Routing Preferences and Selection Policy only among Eligible Targets.</t>
          </li>
          <li>
            <t>Return one Routing Decision, or return one Routing Error if no selection can be made.</t>
          </li>
        </ol>
        <t>An implementation <bcp14>MAY</bcp14> combine, cache, index, or reorder internal computations for efficiency, but its externally observable result <bcp14>MUST</bcp14> be equivalent to the order above.  In particular, a Semantic Match, Routing Preference, or Selection Policy <bcp14>MUST NOT</bcp14> restore a target removed by Eligibility Policy or a mandatory requirement.</t>
      </section>
      <section anchor="authentication-and-input-validation">
        <name>Authentication and Input Validation</name>
        <t>An SRF <bcp14>MUST</bcp14> establish the Requester's security context before applying requester-specific authorization.  A deployment that permits anonymous requests treats an anonymous Requester as a distinct principal with an appropriately restricted Target View.  Authorization applies independently to routing information, Target Profile visibility, and target invocation.</t>
        <t>The SRF <bcp14>MUST</bcp14> reject a known field whose syntax or type is malformed and <bcp14>SHOULD</bcp14> limit message size, nesting, and field counts.  Unknown optional members are handled as described in <xref target="extensibility-and-interoperability"/>.</t>
        <t>If a Routing Constraint or required capability is not recognized or cannot be evaluated, the SRF <bcp14>MUST</bcp14> stop processing and return an <tt>unsupported_constraint</tt> Routing Error.  If a Routing Preference is not recognized, the SRF <bcp14>MAY</bcp14> ignore it; a successful decision then includes it in <tt>ignored_preferences</tt>.</t>
      </section>
      <section anchor="candidate-construction">
        <name>Candidate Construction</name>
        <t>The SRF obtains Target Profiles from one or more Target Information Sources.  It <bcp14>MUST</bcp14> exclude profiles that are expired, <tt>unavailable</tt>, <tt>withdrawn</tt>, outside the Requester's authorized visibility, or disallowed by Eligibility Policy.  It <bcp14>SHOULD</bcp14> verify profile provenance and integrity before using capability or security claims.  Candidate Construction means establishing which locally known targets can be considered; it does not mean decomposing the task or creating subtasks.</t>
      </section>
      <section anchor="constraint-evaluation">
        <name>Constraint Evaluation</name>
        <t>The SRF <bcp14>MUST</bcp14> evaluate all required capabilities and Routing Constraints before semantic matching and final selection.  A target that fails any required capability or Routing Constraint is not an Eligible Target and <bcp14>MUST NOT</bcp14> be selected.  Each mandatory requirement therefore acts as a veto that semantic suitability cannot override.</t>
        <t>Eligibility Policy applies even when it is not present in the Routing Input.  Requester-provided preferences, Selection Policy, and Semantic Match results <bcp14>MUST NOT</bcp14> override Eligibility Policy.</t>
      </section>
      <section anchor="semantic-matching">
        <name>Semantic Matching</name>
        <t>The SRF evaluates Task Intent and Execution Context against Target Profiles.  Matching and ranking are implementation-specific and can consider capability, description, domain, language, operation, and media-type compatibility.  This document does not mandate a metric, threshold, weight, or ranking formula.</t>
        <t>Text contained in an intent or Target Profile is data, not an instruction to change SRF security policy.  An implementation performing automated semantic matching <bcp14>MUST</bcp14> isolate untrusted text from policy control and <bcp14>MUST</bcp14> apply authorization and Routing Constraints independently of that text.</t>
      </section>
      <section anchor="policy-preferences-and-selection">
        <name>Policy, Preferences, and Selection</name>
        <t>After semantic matching, the SRF applies Selection Policy and Routing Preferences to the Eligible Targets.  The order of preferences indicates Requester priority, but Selection Policy determines the final ordering and can break ties.  Selection Policy cannot make an ineligible target eligible.</t>
        <t>The SRF selects exactly one Eligible Target and returns it as <tt>selected_target</tt>.  It does not return a ranked set for multi-agent execution.  The SRF <bcp14>MUST</bcp14> assign a finite expiration time to the Routing Decision.</t>
        <t>If no Eligible Target exists, the SRF <bcp14>MUST</bcp14> return a <tt>no_eligible_target</tt> Routing Error.  It <bcp14>MUST NOT</bcp14> remove, weaken, or reinterpret a required capability or Routing Constraint in order to produce a result.</t>
      </section>
      <section anchor="fallback">
        <name>Fallback</name>
        <t>If the selected target becomes unavailable, the Requester <bcp14>MAY</bcp14> start a new Routing Operation using the original Task Intent, Execution Context, required capabilities, and Routing Constraints.  The SRF <bcp14>MUST</bcp14> evaluate the current Target View and return one new target or an error.</t>
        <t>An implementation performing automatic fallback <bcp14>MUST</bcp14> preserve all original required capabilities and Routing Constraints.  It <bcp14>MUST NOT</bcp14> retry a task with side effects unless the target invocation is known to be idempotent or an idempotency mechanism is used.</t>
        <t>A Routing Decision records a selection, not a reservation of target capacity.  Between decision and invocation, the Target Profile, target status, or applicable policy can change.  The Requester <bcp14>MUST NOT</bcp14> use an expired decision, and the Processing Target or its gateway <bcp14>MUST</bcp14> perform current authorization at invocation time.  A binding can define stronger reservation or freshness mechanisms, but they are outside this framework.</t>
      </section>
    </section>
    <section anchor="integration-with-existing-protocols">
      <name>Integration with Existing Protocols</name>
      <t>This document defines a semantic routing information model and processing behavior, not a new standalone routing protocol.  A binding to an existing protocol can carry Routing Input to an SRF and return a Routing Decision or error.  The binding defines placement, negotiation, serialization, transport, authentication, and error mapping.</t>
      <t>Existing target-description mechanisms can supply Target Profiles.  For example, an Agent Card can provide identity, skills, supported interfaces, security schemes, and interaction modes.  The SRF can combine those fields with Eligibility Policy, Selection Policy, and operational information; this document does not change the Agent Card or duplicate agent discovery.</t>
      <t>After selection, an existing agent communication protocol invokes the selected target.  This document does not redefine that protocol's task messages, lifecycle, streaming, cancellation, notification, authentication, or error handling.</t>
      <t>A binding <bcp14>MUST</bcp14> preserve the Routing Decision and Routing Error semantics defined by this document.  It can map them to protocol-specific response fields or status codes, but that mapping <bcp14>MUST NOT</bcp14> turn an unsupported mandatory requirement into a successful decision or disclose information beyond the Requester's authorization.</t>
    </section>
    <section anchor="relationship-to-other-work">
      <name>Relationship to Other Work</name>
      <t>The AI agent protocol framework in <xref target="I-D.rosenberg-agentproto-usecases"/> describes communication relationships among users, agents, and APIs and identifies routing and connection as part of agent-to-agent communication.  This document is narrower: it describes the boundary at which one task intent is mapped to one Processing Target, independently of the protocol later used to contact that target.</t>
      <t>The DAWN requirements in <xref target="I-D.king-dawn-requirements"/> concern discovering and characterizing agents, workloads, and named entities across administrative boundaries.  DAWN-like mechanisms can act as Target Information Sources.  This document starts after relevant Target Profiles are available and does not define their discovery or distribution.</t>
      <t>The DMSC architecture in <xref target="I-D.li-dmsc-inf-architecture"/> includes semantic routing as part of a broader infrastructure for dynamic, secure multi-agent collaboration.  This document defines a local, application-layer, one-target Routing Operation and does not define network forwarding, collaboration paths, or multi-agent orchestration.</t>
      <t>The A2A protocol <xref target="A2A"/> defines Agent Cards and agent communication operations.  An Agent Card can contribute information to a Target Profile, and A2A can invoke a selected agent.  This document neither modifies A2A nor requires it; other description and invocation protocols can be used.</t>
    </section>
    <section anchor="extensibility-and-interoperability">
      <name>Extensibility and Interoperability</name>
      <t>Future specifications can define new context fields, target types, capability identifiers, constraints, preferences, reason codes, and error codes.  Cross-domain extensions <bcp14>SHOULD</bcp14> use absolute URI identifiers and <bcp14>MUST</bcp14> document their syntax, semantics, comparison rules, and security considerations.  In particular, an extension target type or context-field name <bcp14>SHOULD</bcp14> be represented by an absolute URI rather than by a new unqualified string.</t>
      <t>Unknown optional context fields and information-model members <bcp14>MUST</bcp14> be ignored unless otherwise specified.  A known member with an invalid type or syntax produces an <tt>invalid_input</tt> Routing Error.  Unsupported preferences <bcp14>MAY</bcp14> be ignored and are then reported in <tt>ignored_preferences</tt>; unsupported constraints and required capabilities <bcp14>MUST NOT</bcp14> be ignored.</t>
    </section>
    <section anchor="internationalization-considerations">
      <name>Internationalization Considerations</name>
      <t>Task descriptions, target descriptions, and human-readable error reasons can contain natural language.  A protocol binding <bcp14>MUST</bcp14> define a Unicode-compatible character encoding and <bcp14>MUST</bcp14> preserve language tags carried in the information model.  Language values use the tags defined by <xref target="RFC5646"/>.  Implementations <bcp14>MUST NOT</bcp14> assume that free-form text, identifiers, or language tags can be compared using locale-dependent case conversion unless the specification defining that field explicitly permits it.</t>
    </section>
    <section anchor="operational-considerations">
      <name>Operational Considerations</name>
      <section anchor="information-lifecycle-and-disclosure">
        <name>Information Lifecycle and Disclosure</name>
        <t>Target Profiles are versioned, refreshed, withdrawn, or expired by their source.  The SRF <bcp14>MUST NOT</bcp14> use an expired or withdrawn profile.  Routing input creates one operation-level decision; task content is sent separately to the selected target.  The Requester <bcp14>MUST NOT</bcp14> initiate a new invocation from an expired decision.</t>
        <t>Logs <bcp14>SHOULD</bcp14> use privacy-preserving correlation identifiers and record relevant policy and profile versions without complete task content.</t>
        <t>The <tt>routing_id</tt> and <tt>decision_id</tt> fields support correlation only.  Implementations requiring invocation idempotency, replay protection, or capacity reservation need separate mechanisms provided by a binding or invocation protocol.</t>
      </section>
      <section anchor="non-determinism-and-monitoring">
        <name>Non-Determinism and Monitoring</name>
        <t>Semantic matching can be non-deterministic; interoperability depends on common input and result semantics, not identical rankings.  Deployments <bcp14>SHOULD</bcp14> monitor Target Profile and matching changes and record the information and policy versions used for each decision.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations guidance in <xref target="RFC3552"/> applies.  Semantic routing introduces a decision point that can direct tasks and potentially sensitive context to different entities.  A compromised or manipulated SRF can therefore cause unauthorized disclosure or execution even when the underlying transport is secure.</t>
      <section anchor="authentication-and-authorization">
        <name>Authentication and Authorization</name>
        <t>An SRF <bcp14>MUST</bcp14> authenticate Requesters when routing information, target visibility, or local policy depends on identity.  It <bcp14>MUST</bcp14> enforce authorization before revealing target identifiers, endpoints, capabilities, or policy attributes.  Selection of a target <bcp14>MUST NOT</bcp14> be treated as authorization to invoke that target; the target or its gateway performs its own authorization.</t>
      </section>
      <section anchor="target-enumeration-and-policy-probing">
        <name>Target Enumeration and Policy Probing</name>
        <t>Routing responses and errors can be used to infer which targets exist, which capabilities an organization operates, or which constraints and policies caused exclusion.  An SRF <bcp14>MUST</bcp14> limit Target Views and response detail according to the Requester's authorization.  It <bcp14>SHOULD</bcp14> return indistinguishable errors when distinguishing <tt>not_authorized</tt> from <tt>no_eligible_target</tt> would reveal protected information.  Rate limiting and audit can reduce repeated probing.</t>
      </section>
      <section anchor="target-profile-integrity">
        <name>Target Profile Integrity</name>
        <t>Target descriptions and capability claims are untrusted unless their source, integrity, and authority have been verified.  An attacker can publish a description designed to match many intents or claim a false trust level.  An SRF <bcp14>SHOULD</bcp14> authenticate Target Information Sources and <bcp14>SHOULD</bcp14> validate security-relevant claims using evidence independent of free-form descriptive text.</t>
      </section>
      <section anchor="semantic-manipulation">
        <name>Semantic Manipulation</name>
        <t>Task Intent, Execution Context, and Target Profile text can contain adversarial content.  Automated semantic matching <bcp14>MUST</bcp14> treat them as data and isolate them from policy control.  Untrusted natural-language content <bcp14>MUST NOT</bcp14> control constraint or authorization decisions.</t>
        <t>An attacker can use semantic squatting, capability stuffing, or misleading descriptions to make a target match a broad set of intents.  An SRF <bcp14>SHOULD</bcp14> limit which profile sources may assert a capability, <bcp14>SHOULD</bcp14> prefer verified structured capability identifiers over unverified descriptive similarity, and <bcp14>SHOULD</bcp14> detect unexpectedly broad or rapidly changing claims.</t>
      </section>
      <section anchor="confused-deputy-and-tenant-isolation">
        <name>Confused Deputy and Tenant Isolation</name>
        <t>An SRF or gateway can act with privileges that the Requester does not possess.  It <bcp14>MUST NOT</bcp14> use its own broader authority to reveal or invoke a target on behalf of an unauthorized Requester.  Authorization context and delegated authority <bcp14>MUST</bcp14> remain bound to the Routing Operation and, where applicable, to the subsequent invocation.</t>
        <t>Multi-tenant deployments <bcp14>MUST</bcp14> isolate Target Views, policy, credentials, caches, and audit data between tenants.  A cached Routing Decision or semantic result created for one tenant <bcp14>MUST NOT</bcp14> be reused for another tenant unless authorization and all policy-relevant inputs are equivalent.</t>
      </section>
      <section anchor="endpoint-safety">
        <name>Endpoint Safety</name>
        <t>An attacker can supply a target endpoint that refers to an internal service, loopback interface, link-local address, or another restricted resource.  An SRF or Requester <bcp14>MUST NOT</bcp14> dereference or invoke a URI solely because it appears in a Target Profile or Routing Decision.  Deployments performing automatic dereferencing or invocation <bcp14>MUST</bcp14> validate the URI scheme and destination against an allowlist or equivalent egress policy.</t>
      </section>
      <section anchor="decision-integrity-and-replay">
        <name>Decision Integrity and Replay</name>
        <t>Routing Decisions can be modified or replayed to substitute an attacker-controlled target.  The binding transport <bcp14>MUST</bcp14> provide integrity and peer authentication.  A Requester <bcp14>MUST</bcp14> validate the <tt>routing_id</tt> and <tt>expires_at</tt> values.  Deployments crossing trust boundaries <bcp14>SHOULD</bcp14> use signed or otherwise integrity-protected decisions when transport protection does not extend to the decision consumer.</t>
        <t>Neither <tt>routing_id</tt> nor <tt>decision_id</tt> by itself prevents replay.  A binding that permits a Routing Decision to authorize or trigger an action <bcp14>MUST</bcp14> provide an independent freshness or replay-protection mechanism.</t>
      </section>
      <section anchor="denial-of-service">
        <name>Denial of Service</name>
        <t>Long intent descriptions, deeply nested input, large candidate sets, and expensive model inference can consume significant resources.  An SRF <bcp14>SHOULD</bcp14> enforce message-size, nesting, candidate, execution-time, and rate limits.  Authentication and inexpensive syntactic validation <bcp14>SHOULD</bcp14> occur before expensive semantic processing.</t>
      </section>
      <section anchor="fallback-and-audit">
        <name>Fallback and Audit</name>
        <t>An SRF <bcp14>MUST</bcp14> preserve all required capabilities and Routing Constraints during fallback.  Failure to find an Eligible Target <bcp14>MUST</bcp14> result in an explicit error rather than weakening a mandatory requirement.</t>
        <t>Security-relevant events <bcp14>SHOULD</bcp14> be auditable, including authentication failure, unsupported constraints, policy denial, target selection, and fallback.  Audit records <bcp14>SHOULD</bcp14> identify the applicable policy and Target Profile versions and <bcp14>MUST</bcp14> be protected against unauthorized access and modification.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>The privacy guidance in <xref target="RFC6973"/> applies.  Task Intent and Execution Context can disclose user goals, business activity, content type, location, language, security classification, and other sensitive information.</t>
      <t>The presence of a context label can itself be sensitive.  For example, a <tt>data_classification</tt> value can reveal that a task concerns protected material even when no task content is sent.  Data minimization therefore applies to both context values and their field names or extension identifiers.</t>
      <t>A Requester <bcp14>SHOULD</bcp14> provide only information required for routing.  It <bcp14>SHOULD</bcp14> use references, summaries, or classifications instead of complete task content when the SRF does not need that content.  An SRF <bcp14>MUST NOT</bcp14> disclose Routing Input to Candidate Targets merely to determine suitability unless the Requester has authorized that disclosure.</t>
      <t>An SRF <bcp14>SHOULD</bcp14> minimize retention of Task Intent and Execution Context.  Logs <bcp14>SHOULD</bcp14> use opaque correlation identifiers and <bcp14>SHOULD</bcp14> redact or omit natural-language content and personal data.  Cross-domain deployments <bcp14>SHOULD</bcp14> document data retention, onward disclosure, and the administrative domains involved in selection.</t>
      <t>Returning target identifiers, endpoints, or detailed reason codes can reveal organizational capabilities and security policy.  An SRF <bcp14>SHOULD</bcp14> limit result detail according to Requester authorization and operational need.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document defines an abstract framework and does not allocate protocol parameters, media types, or URI schemes.  Cross-domain extension values use globally unique identifiers as described in <xref target="extensibility-and-interoperability"/>.  This document therefore has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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>
        <reference anchor="RFC3339">
          <front>
            <title>Date and Time on the Internet: Timestamps</title>
            <author fullname="G. Klyne" initials="G." surname="Klyne"/>
            <author fullname="C. Newman" initials="C." surname="Newman"/>
            <date month="July" year="2002"/>
            <abstract>
              <t>This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3339"/>
          <seriesInfo name="DOI" value="10.17487/RFC3339"/>
        </reference>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC5646">
          <front>
            <title>Tags for Identifying Languages</title>
            <author fullname="A. Phillips" initials="A." role="editor" surname="Phillips"/>
            <author fullname="M. Davis" initials="M." role="editor" surname="Davis"/>
            <date month="September" year="2009"/>
            <abstract>
              <t>This document describes the structure, content, construction, and semantics of language tags for use in cases where it is desirable to indicate the language used in an information object. It also describes how to register values for use in language tags and the creation of user-defined extensions for private interchange. 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="47"/>
          <seriesInfo name="RFC" value="5646"/>
          <seriesInfo name="DOI" value="10.17487/RFC5646"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3552">
          <front>
            <title>Guidelines for Writing RFC Text on Security Considerations</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="B. Korver" initials="B." surname="Korver"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>All RFCs are required to have a Security Considerations section. Historically, such sections have been relatively weak. This document provides guidelines to RFC authors on how to write a good Security Considerations section. 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="72"/>
          <seriesInfo name="RFC" value="3552"/>
          <seriesInfo name="DOI" value="10.17487/RFC3552"/>
        </reference>
        <reference anchor="RFC6973">
          <front>
            <title>Privacy Considerations for Internet Protocols</title>
            <author fullname="A. Cooper" initials="A." surname="Cooper"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <author fullname="B. Aboba" initials="B." surname="Aboba"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="J. Morris" initials="J." surname="Morris"/>
            <author fullname="M. Hansen" initials="M." surname="Hansen"/>
            <author fullname="R. Smith" initials="R." surname="Smith"/>
            <date month="July" year="2013"/>
            <abstract>
              <t>This document offers guidance for developing privacy considerations for inclusion in protocol specifications. It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices. It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6973"/>
          <seriesInfo name="DOI" value="10.17487/RFC6973"/>
        </reference>
        <reference anchor="A2A" target="https://a2a-protocol.org/v1.0.0/specification/">
          <front>
            <title>Agent2Agent (A2A) Protocol Specification, Version 1.0.0</title>
            <author>
              <organization>A2A Protocol Project</organization>
            </author>
            <date year="2026"/>
          </front>
        </reference>
        <reference anchor="I-D.rosenberg-agentproto-usecases">
          <front>
            <title>Framework, Use Cases and Requirements for AI Agent Protocols</title>
            <author fullname="Jonathan Rosenberg" initials="J." surname="Rosenberg">
              <organization>Five9</organization>
            </author>
            <author fullname="Cullen Fluffy Jennings" initials="C. F." surname="Jennings">
              <organization>Cisco</organization>
            </author>
            <date day="4" month="July" year="2026"/>
            <abstract>
              <t>   AI Agents are software applications that utilize Large Language
   Models (LLM)s to interact with humans (or other AI Agents) for
   purposes of performing tasks.  AI Agents can make use of resources -
   including APIs and documents - to perform those tasks, and are
   capable of reasoning about which resources to use.  To facilitate AI
   agent operation, AI agents need to communicate with users, and then
   interact with other resources over the Internet, including APIs and
   other AI agents.  This document describes a framework for AI Agent
   communications on the Internet, identifying the various protocols
   that come into play.  It introduces use cases that motivate features
   and functions that need to be present in those protocols.  It also
   provides a brief survey of existing work in standardizing AI agent
   protocols, including the Model Context Protocol (MCP), the Agent to
   Agent Protocol (A2A) and the Agntcy Framework, and describes how
   those works fit into this framework.  The primary objective of this
   document is to set the stage for possible standards activity at the
   IETF in this space.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-rosenberg-agentproto-usecases-00"/>
        </reference>
        <reference anchor="I-D.king-dawn-requirements">
          <front>
            <title>Requirements for the Discovery of Agents With Names (DAWN)</title>
            <author fullname="Daniel King" initials="D." surname="King">
              <organization>Old Dog Consulting</organization>
            </author>
            <author fullname="Adrian Farrel" initials="A." surname="Farrel">
              <organization>Old Dog Consulting</organization>
            </author>
            <date day="19" month="October" year="2026"/>
            <abstract>
              <t>   The proliferation of distributed systems, Artificial Intelligence
   (AI) agents, and network services has created a need for
   interoperable mechanisms to discover entities across administrative
   and network boundaries.  Entities may include AI agents, software
   services, and other named resources that need to be found and
   characterised before interaction can begin.

   This document defines the requirements for Discovery of Agents With
   Names (DAWN) and sets out the objectives that a discovery mechanism
   for such entities must satisfy.  It describes what information must
   be discoverable, what properties a discovery mechanism needs to
   support, and what constraints apply to discovery in decentralised
   environments.

   This document does not specify any particular discovery protocol or
   solution.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-king-dawn-requirements-02"/>
        </reference>
        <reference anchor="I-D.li-dmsc-inf-architecture">
          <front>
            <title>Dynamic Multi-agent Secured Collaboration Infrastructure Architecture</title>
            <author fullname="Xueting Li" initials="X." surname="Li">
              <organization>China Telecom</organization>
            </author>
            <author fullname="Aijun Wang" initials="A." surname="Wang">
              <organization>China Telecom</organization>
            </author>
            <author fullname="Bing Liu" initials="B." surname="Liu">
              <organization>Huawei Technologies</organization>
            </author>
            <author fullname="Changwang Lin" initials="C." surname="Lin">
              <organization>New H3C Technologies</organization>
            </author>
            <date day="22" month="May" year="2026"/>
            <abstract>
              <t>   This document presents an architectural framework for dynamic multi-
   agent collaboration from an infrastructure perspective.  It outlines
   the network requirements introduced by large-scale agents
   collaboration, and proposes a systematic approach to enabling Dynamic
   Multi-agent Secured Collaboration (DMSC) through infrastructure
   capabilities.  The architecture focuses on how network control and
   forwarding functions can actively participate in agent collaboration.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-li-dmsc-inf-architecture-07"/>
        </reference>
      </references>
    </references>
    <?line 497?>

<section anchor="end-to-end-semantic-routing-example">
      <name>End-to-End Semantic Routing Example</name>
      <t>This non-normative example shows one operation-level Routing Decision.  A Requester needs to analyze a confidential Chinese cybersecurity report in PDF format.  Target A has a high Semantic Match but does not satisfy the data-residency constraint; Target B satisfies the required capability and all Routing Constraints.</t>
      <figure anchor="fig-routing-example">
        <name>Semantic Routing Example</name>
        <artwork><![CDATA[
 Requester          SRF          Info Source         Targets
    |                |                |                 |
    |--Routing Input>|                |                 |
    |                |--Get Profiles->|                 |
    |                |<--A and B------|                 |
    |                |                |                 |
    |                |--Eligibility and constraints     |
    |                |  Remove Target A                 |
    |                |--Match preferences and select    |
    |<--Decision B---|                |                 |
    |                |                |                 |
    |--------------------Invoke B---------------------->|
    |<-------------------Task Result--------------------|
]]></artwork>
      </figure>
      <t>The SRF authenticates the Requester and builds a Candidate Target set from its local Target View.  It applies authorization and mandatory requirements before semantic selection, so Target A cannot be selected regardless of its semantic suitability.  It returns Target B as the single selected target.  The Requester invokes Target B using an existing protocol outside this framework.</t>
      <section anchor="information-model-example">
        <name>Information Model Example</name>
        <t>The following JSON is a non-normative illustration of Routing Input.  It does not define an HTTP endpoint or protocol binding.</t>
        <sourcecode type="json"><![CDATA[
{
  "routing_id": "route-7f3a",
  "intent": {
    "description": "Analyze a Chinese security report for risks",
    "required_capabilities": [
      "https://cap.example/security-analysis"
    ]
  },
  "context": {
    "language": "zh",
    "domain": "cybersecurity",
    "content_types": ["application/pdf"],
    "data_classification": "confidential",
    "data_location": "CN"
  },
  "constraints": [
    {
      "name": "https://policy.example/data-residency",
      "value": ["CN"]
    },
    {
      "name": "https://policy.example/trust-level",
      "value": "verified"
    }
  ],
  "preferences": [
    {
      "name": "https://pref.example/latency",
      "value": "lower"
    }
  ]
}
]]></sourcecode>
        <t>A successful Routing Decision identifies one target:</t>
        <sourcecode type="json"><![CDATA[
{
  "routing_id": "route-7f3a",
  "decision_id": "decision-81b2",
  "selected_target": {
    "target_id": "agent-security-analysis-01",
    "profile_version": "profile-20260828-17",
    "target_type": "agent",
    "operation_id": "analyze-report",
    "endpoint": "https://agents.example/security-analysis"
  },
  "reason_codes": [
    "https://reason.example/capability-match",
    "https://reason.example/policy-permitted"
  ],
  "expires_at": "2026-08-28T10:05:00Z"
}
]]></sourcecode>
        <t>Identifiers under the <tt>example</tt> domains are illustrative and do not define interoperable capability, constraint, or preference semantics.</t>
        <t>If no currently available target satisfies the mandatory requirements, an abstract Routing Error could be represented as follows.  This JSON remains illustrative; a binding defines its concrete serialization and protocol status mapping.</t>
        <sourcecode type="json"><![CDATA[
{
  "routing_id": "route-7f3a",
  "error_code": "no_eligible_target",
  "reason": "No target satisfies all mandatory requirements",
  "retryable": false
}
]]></sourcecode>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors thank the participants who provided comments on the scope and terminology of application-layer semantic routing for AI agent communication.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
C3/XI5g2qAAA

-->

</rfc>
