<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com)
     by Daniel M Kohn (private) -->
<?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 xmlns:xi="http://www.w3.org/2001/XInclude" category="info" docName="draft-verma-dmsc-nlip-notes-00" ipr="trust200902" obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="3" symRefs="true" sortRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="BGP-LS-Inter-AS-Ext">Use of Natural Language for Agent
    Communication</title>
    <seriesInfo name="Internet-Draft" value="draft-verma-dmsc-nlip-notes-00"/>
    <author fullname="Dinesh Verma" initials="D" surname="Verma">
      <organization>IBM</organization>
      <address>
        <postal>
          <street>P.O. Box 218, Yorktown Heights</street>
          <city>New York</city>
          <region/>
          <code>10598</code>
          <country>USA</country>
        </postal>
        <email>dverma@us.ibm.com</email>
      </address>
    </author>
    <author fullname="Elisa Bertino" initials="E." surname="Bertino">
      <organization>Purdue University</organization>
      <address>
        <postal>
          <street> CS Department</street>
          <city> West Lafayette </city>
          <region>IN </region>
          <code> 47907 </code>
          <country>USA</country>
        </postal>
        <email>bertino@purdue.edu</email>
      </address>
    </author>
    <author fullname="Abhay Ratnaparkhi" initials="A." surname="Ratnaparkhi">
      <organization>eBay Inc.</organization>
      <address>
        <postal>
          <street>7700 West Parmer Lane</street>
          <city>Austin</city>
          <region/>
          <code>78729</code>
          <country>USA</country>
        </postal>
        <email>abratnaparkhi@ebay.com</email>
      </address>
    </author>
    <author fullname="Sean Hughes" initials="S" surname="Hughes">
      <organization> Service Now </organization>
      <address>
        <postal>
          <street> 2225 Lawson Lane </street>
          <city> Santa Clara </city>
          <region>CA </region>
          <code>95054</code>
          <country>USA</country>
        </postal>
        <phone/>
        <email>sean.hughes@servicenow.com</email>
        <uri/>
      </address>
    </author>
    <author fullname="Luyi Xing" initials="L." surname="Xing">
      <organization> University of Illinois at Urbana-Champaign</organization>
      <address>
        <postal>
          <street> 201 N Goodwin Ave</street>
          <city> Urbana </city>
          <region> IL </region>
          <code> 61801 </code>
          <country> USA </country>
        </postal>
        <phone/>
        <email>lxing2@illinois.edu</email>
        <uri/>
      </address>
    </author>
    <author fullname="Zichuan Li" initials="Z." surname="Li">
      <organization> University of Illinois at Urbana-Champaign</organization>
      <address>
        <postal>
          <street> 201 N Goodwin Ave</street>
          <city> Urbana </city>
          <region> IL </region>
          <code> 61801 </code>
          <country> USA </country>
        </postal>
        <phone/>
        <email>zichuan7@illinois.edu</email>
        <uri/>
      </address>
    </author>
    <author fullname="Xiaojing Liao" initials="X." surname="Liao">
      <organization> University of Illinois at Urbana-Champaign</organization>
      <address>
        <postal>
          <street> 201 N Goodwin Ave</street>
          <city> Urbana </city>
          <region> IL </region>
          <code> 61801 </code>
          <country> USA </country>
        </postal>
        <phone/>
        <email>xjliao@illinois.edu</email>
        <uri/>
      </address>
    </author>
    <author fullname="Jian Cui" initials="J." surname="Cui">
      <organization> University of Illinois at Urbana-Champaign</organization>
      <address>
        <postal>
          <street> 201 N Goodwin Ave</street>
          <city> Urbana </city>
          <region> IL </region>
          <code> 61801 </code>
          <country> USA </country>
        </postal>
        <phone/>
        <email>jiancui3@illinois.edu</email>
        <uri/>
      </address>
    </author>
    <author fullname="Rasit Topaloglu" initials="R." surname="Topaloglu">
      <organization>Marist University</organization>
      <address>
        <postal>
          <street> 3399 North Road</street>
          <city> Poughkeepsie </city>
          <region> NY </region>
          <code> 12601 </code>
          <country> USA </country>
        </postal>
        <phone/>
        <email>rasit.topaloglu@marist.edu</email>
        <uri/>
      </address>
    </author>
    <author fullname="Mohamed Rahouti" initials="M." surname="Rahouti">
      <organization> Fordham University</organization>
      <address>
        <postal>
          <street> 113 W 60th Street</street>
          <city> New York </city>
          <region> NY </region>
          <code> 10023 </code>
          <country> USA </country>
        </postal>
        <phone/>
        <email>mohamed@fordham.edu</email>
        <uri/>
      </address>
    </author>
    <date day="10" month="February" year="2026"/>
    <area>ART Area</area>
    <workgroup>DMSC Working Group</workgroup>
    <keyword>RFC</keyword>
    <abstract>
      <t>In current communication protocol designs, the prevalent practice is to define a strict Application Programming Interface (API) for different types of interactions among software entities. There is an explosion of APIs which makes interoperability hard, and the standards for interoperability fragile. Specifically for agent to agent communications, defining strict APIs for interactions such as registration, discovery, telemetry and debugging creates significant operational challenges. In this draft, we argue that a flexible design option -- where generative AI is used to create a flexible communication protocol for APIs, can lead to a common and flexible way for a single uniform API to be used between agents, and enables a better communication paradigm.</t>
    </abstract>
  </front>
  <middle>
    <section numbered="true" toc="default">
      <name>Conventions used in this document</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 <xref target="RFC2119" format="default"/> .</t>
    </section>
    <section numbered="true" toc="default">
      <name>Terminology</name>
      <t>The following terms are defined in this document:</t>
      <ul spacing="normal">
        <li>
          <t>NLIP: Natural Language Interaction Protocol</t>
        </li>
        <li>
          <t>ntohs: Network to Host Short</t>
        </li>
        <li>
          <t>htons: Host to Network Short</t>
        </li>
      </ul>
    </section>
    <section anchor="intro" numbered="true" toc="default">
      <name>Introduction</name>
      <t>Contemporary application-level protocols and Application Programming Interface (API) are designed by specifying a function name (or URI) and a data structure. All communicating endpoints are required to use the same data structure, and this data structure is transferred between them using a structured representation such as JSON. This design approach causes significant interoperability issues when the version upgrade of any software causes a change in the data structure that needs to be exchanged. </t>
      <t>A more flexible communication paradigm can be obtained by leveraging the ability of large language models to translate between unstructured natural language and a structured representation such as JSON or the internal structure of a programming language effectively. The communicating parties can transmit a natural language representation among each other, and each endpoint can maintain its own internal representation for the structure being maintained for its tasks.</t>
      <t>In this draft, we argue that this flexible exchange offers various benefits in agent to agent communications.</t>
      <t>The natural language text exchanged between communicating parties has the same semantics as the structures maintained at various communication endpoints, but the format is natural language. A LLM at each end point can translate the wire format into the local structure format. This allows for the internal representation of structures at endpoints to be independent of each other. This independence allows for improved interoperability and the freedom for each end-point to upgrade its internal structures as needed.</t>
      <t>As an example, let us consider the simple but illustrative case where one of the endpoints is an agent that is sending its communication endpoint information to the other endpoint which is a registrar providing registration services for agents. The registrar maintains information about each endpoint as a URL, while the agent maintains its internal information as a local host and port. The agent can register itself to the registrar using plain text - "I am running on host hostname on port 1430" or an equivalent natural language text representation. The registrar can use a local LLM to translate this text to an internal URL representation.</t>
      <t>Using natural language provides two key advantages. It provides resilience against upgrades of the endpoints. Suppose the registrar is upgraded to a new version in which it supports each agent information as a structure consisting of a port, a protocol and a host address instead of the URL. This upgrade can be made without any impact to any of the agents. On the other hand, if the traditional approach of defining a fixed structure on the wire were to be used, the upgrade of the registrar would require changes in each of the agents interacting with it.</t>
      <t>The second advantage is the simplification in the versioning of protocols. During any definition of a standard protocol, some key features or functions may be missed due to a variety of reasons. If a new protocol version is defined, the protocol needs to be defined to support a version number and a careful handling of mismatches in the structural differences across versions. By breaking the linkage between the internal representation of endpoint structures and the wire structure, natural language simplifies version management significantly.</t>
      <t>The separation of the wire format from the internal structures can be viewed as a modern take on the concept of ntohs and htons - concepts developed during the early stages of computer communications development to promote interoperability between computer systems. When big-endian machines needed to talk to little- endian machines, these two macros translated between network and host structure formats. NLIP is providing the same functionality at the application level, leveraging the ability of LLMs to translate between unstructured natural text and structured representations.</t>
      <t>It is recommended that two communicating parties exchange information about their internal representation with each other. When an agent registers with the registrar in the above example, the registrar can send a natural text representation of the internal information to the agent to validate that it has translated the text correctly to an internal representation and then translated it back. The agent can do its own internal translation and validate that the information is consistent with its internal representation. The same exchange also helps to validate if a field is missing or not incorporated properly.</t>
    </section>
    <section anchor="om" numbered="true" toc="default">
      <name>Other Modalities</name>
      <t>Natural language is not the only modality which is needed for general communication among software entities. Some agents may require other modality such as images, video or audio/speech as part of their operation. Nevertheless, the same principle of separating the wire format from the internal structures and capabilities of the software application can be used.</t>
      <t>For each modality, the wire exchange format can specify the modality of the exchange. However, it can leave the task of interpreting the contents and internal structure of the exchanged information to the local AI model. The agent can use its local AI model to interpret the format and process it.</t>
      <t>This is an analogue of the way humans communicate using the different senses. Our eyes process light/visual modality, our ears process the sound/speech modality etc. Our internal intelligence processes these signals without relying on the strict adherence to internal structures.  We can simply identify the information modality and let the agent process the information.</t>
    </section>
    <section anchor="es" numbered="true" toc="default">
      <name>Existing Standard</name>
      <t>There is an existing standard which is designed based on this principle of using natural language for exchange among agents. This standard - Natural Language Interaction Protocol (NLIP) <xref target="ECMA430" format="default"/>-- defines a way for exchanged information to simply define the modality , and let interacting agents interpret the exchanged content without requiring a strict structure on the wire.</t>
      <t>Experiences implementing NLIP based services and the standard have shown that the approach is viable, has good performance and is secure. For development and debugging, the NLIP protocol allowed for a single interface for trouble-shooting, and our performance evaluation showed that the protocol added little to no overhead, and in many cases out-performed registration functions using a more traditional API.</t>
      <t>As the IETF community works towards defining conventions for agent to agent communications, we want to bring this design approach to their attention, since leveraging a protocol like NLIP will provide tremendous flexibility and operational simplicity to software implementing the functions of agents.</t>
    </section>
    <section anchor="nv" numbered="true" toc="default">
      <name>New Conventions</name>
      <t> With the presence of existing standard of NLIP, the task of defining common functions for any agent to agent communications becomes that of defining the semantics of the information that should be transferred, as opposed to defining a rigid structure for the interaction. When agents need to communicate with each other, they need to perform functions such as discover other agents, register themselves with a registrar, or obtain the governing policies for security or data management from other agents. While NLIP provides the basic envelop for transfer of the information, new conventions or standards would need to be developed for each of these functions. The key difference from traditional approach is that one does not define a rigid structure (e.g. a JSON schema or a XML structure) for interaction but only the semantic content of the information to be exchanged.</t>
      <t> We would consider it a task of the IETF to define the exact semantics. As an example for the task of registration, the semantic specification may define that the port number and server host name of the agent should be identified, along with the identity of the owning organization and the provider of security certificate. This information can be expressed in natural language and converted into the local structured representation. </t>
      <t> Similarly, for the task of discovery, the agent looking for specific type of remote agent can describe their requirements in natural language, instead of defining a rigid schema for discovery of remote agents. Each agent can convert the requirements to their local structure to decide whether or not they match the requirements. IETF needs to define the semantic content for discovery requests -- e.g. specify that agents must define the type of capabilities they are looking for - such as image analysis, speech to text conversion, security requirements, performance constraints, or billing limits etc. There is no need to define a specific structure for the task. </t>
      <t> By following this convention, the standardization process can be made more streamlined and agents implementing the protocol interoperate better with other agents. </t>
    </section>
    <section numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>This document should not affect the security of the Internet.</t>
    </section>
    <section anchor="iana" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>This document includes no request to IANA.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Acknowledgement</name>
      <t>This template uses extracts from templates written by Pekka Savola,
      Elwyn Davies and Henrik Levkowetz.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="ECMA430" target="https://www.ecma-international.org">
          <front>
            <title>Natural Language Interaction Protocol</title>
            <author>
              <organization>Ecma International</organization>
            </author>
            <date month="Dec" year="2025"/>
          </front>
          <seriesInfo name="Standard" value="ECMA-430"/>
          <seriesInfo name="Edition" value="1"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
      </references>
    </references>
  </back>
</rfc>
