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.