This article needs additional citations for verification. (December 2009)
In computer networking, a wire protocol refers to a way of getting data from point to point: A wire protocol is needed if more than one application has to interoperate. It generally refers to protocols higher than the physical layer. In contrast to transport protocols at the transport level (like TCP or UDP), the term wire protocol is used to describe a common way to exchange information at the application level. It refers to an application layer protocol and defines all the required attributes for the data exchange, like data types (units of data, message formats, etc.), communication endpoints and capabilities (such as delivery guarantees, direction of communication, etc.). Usually, the data represented at application level as a common infoset (e.g. XML, JSON, YAML) and requires a mechanism of data binding (using e.g. a common encoding scheme like XSD).
The wire protocol may be either text-based or a binary protocol. Although an important architectural decision, this is a separate matter from the distinction between wire protocols and programmatic APIs.
A wire protocol provides the means for the interoperation of one or more applications in a network. They often refer to distributed object protocols, or they use applications that were designed to work together. As the name suggests, these distributed object protocols run in different processes in one or several computers that are connected over a network.
Wire protocols provide the means for a program running under one operating system to communicate with a program running under some other operating system using the Internet - they interconnect multiple platforms. Some are language-independent, allowing the communication of programs written in different languages.
Examples of wire protocols include:
- IIOP for CORBA
- RTPS for DDS
- Java Debug Wire Protocol (JDWP) for Java debugging
- JRMP for RMI
- SOAP for Web services
- AMQP for message-oriented middleware
- "Definition of: wire protocol". PCMAG.COM. Archived from the original on 2012-10-13. Retrieved 2011-04-11.