Mark Eschbach

Software Developer && System Analyst

Protocol

An IPC protocol is a behavioral contract between communicating components usually across an IPC mechanism. A common example of an this type of protocol is HTTP. HTTP utilities a text based data transfer format (* there are exceptions), defining a request response cycle. An HTTP client (termed a User Agent) sends a request to an HTTP service of the TCP/IP protocol, containing resource request line, a header, an empty line, a request body, and ending the request with another empty line. An HTTP service will then respond with an HTTP response containing a response status, response headers, an empty line, the response body, and an empty line.

Protocol Styles

Many protocols contain an acknowledgement to a requested operation, either postiive or negative. Some protocols are only a one-way notification with no gaurentee of response or behavior.

  • Request-response
  • One-way (IE: notices)

Abstract request-response protocols

  • Estbalish underlying IPC mechanism (IE: network link, TCP/IP, pipe, WebSocket, etc)
  • Negotiate protocol version
  • Rinse and repeat: requests
  • Terminate and clean up IPC mechanisms

Many protocols contain an acknowledgement to a requested operation, either postiive or negative. Some protocols are only a one-way notification with no gaurentee of response or behavior.

  • Request-response
  • One-way (IE: notices)

IPC protocol: Not to be confused with

  • Object-C's Protocol: A predifined object interface, which allows for conformity checks.