The session layer establishes a communications session between processes running on different computers and can support message-mode data transfer.
Functions of the session layer include the following tasks:
Permits application processes to register unique process addresses, such as NetBIOS names. The session layer uses these stored addresses to help resolve the addresses of network adapters from process addresses.
Establishing, monitoring, and terminating a virtual-circuit session between two processes identified by their unique process addresses. A virtual-circuit session is a direct link that exists between the sender and receiver.
Delimiting messages to add header information that indicates where a message starts and ends. The receiving session layer can then refrain from indicating the presence of any message data to the overlying application until the entire message is received.
Performing message synchronization. Message synchronization is the coordination of the data transfer between the sending session layer and the receiving session layer. Synchronization prevents the receiving session layer from being overrun with data. This transfer is coordinated with acknowledgement messages (ACKs). ACKs are sent back and forth between both ends of the transfer and notify of the state of the receiving buffer to accept additional data.
Performing other support functions that allow processes to communicate over the network, such as user authentication and resource-access security.