Session Layer Session Administration
A session is a formal dialog between a service requester and a service provider. Sessions have at least three phases:
- Connection establishment. In this phase, a service requester requests initiation of a service. During the setup process, communication is established and rules are agreed upon.
- Data transfer. Because of the rules agreed upon during setup, each party to the dialog knows what to expect. Communication is therefore efficient, and errors are easy to detect.
- Connection release. When the session is completed, the dialog is terminated in an orderly fashion.
The connection establishment phase establishes the parameters for the communication session. Actually, the connection establishment phase is comprised of several tasks, including the following:
- Specification of required services
- User login authentication and other security procedures
- Negotiation of protocols and protocol parameters
- Notification of connection IDs
- Establishment of dialog control, as well as acknowledgment of numbering and retransmission procedures
After the connection is established, the devices involved can initiate a dialog (data transfer phase). Besides exchanging data, these devices exchange acknowledgments and other control data that manage the dialog.
The Session layer also can incorporate protocols to resume dialogs that have been interrupted. After a formal dialog has been established, devices recognize a lost connection whenever the connection has not been formally released. Therefore, a device realizes that a connection has been lost when the device fails to receive an expected acknowledgment or data transmission.
Within a certain time period, two devices can reenter the session that was interrupted but not released. The connection release phase is an orderly process that shuts down communication and releases resources on the service provider.