Application-Layer Protocols
We have just learned that network processes communicate with each other by sending messages into sockets. But how are these messages structured? What are the meanings of the various fields in the messages? When do the processes send the messages? These questions bring us into the realm of application-layer protocols. An application-layer protocol defines how an application’s processes, running on different end systems, pass messages to each other. In particular, an application-layer protocol defines:
• The types of messages exchanged, for example, request messages and response messages.
• The syntax of the various message types, such as the fields in the message and how the fields are delineated.
• The semantics of the fields, that is, the meaning of the information in the fields.
• Rules for determining when and how a process sends messages and responds to messages.