electronic computer

profilem911on
chapter_09_1.ppt

Chapter Nine

The Session Layer

*

Objectives

  • We’ll see how a new session is created, maintained, and dismantled.
  • The process of logon authentication will be revisited.
  • Dialogue control will be examined.

*

*

Why we need session layer?

  • Before the network starts to transfer data, it needs to make sure that the user has all the necessary rights and privileges.
  • User credentials are verified.
  • The processes or applications at the source and destination need to figure out how to talk to one another, such as service, protocol, speed, duration, etc.
  • Establish a connection ID number
  • Agree upon which services are required and for what duration
  • Determine which device begins the conversation
  • Coordinate the Acknowledgement numbering and retransmission rules.

*

Session Layer Responsibilities

  • The responsibilities of session layer are:
  • Establish a connection
  • Provide dialogue management and synchronization
  • Release the connection

*

Establishing a Connection

  • In order for two devices to communicate, they must first establish a session.
  • A session can also defined as a virtual connection between two devices for the purpose of transferring data.
  • Many times, data is transferred over a series of session in order to keep network congestion at a minimum.
  • Any time multiple sessions are used by devices, it is considered to be a dialogue.

*

Initiating a Link

  • When a client application or process decides that it requires a service that exists on a remote device, it is up to Session layer to establish a link with that remote device.
  • The Session layer will rely heavily upon the service provided by the lower lays in the OSI model
  • To create a new session, the Session layer entity issues a T-connect request to the Transport Layer.
  • Transport layer will identify the services for the particular session and the protocol that will be used. The Transport layer issue a N-connect request to the Network Layer and wait for confirmation.
  • The confirmation will be handed back to the Session layer and used for all subsequent processes.

*

Initiating a Link

*

Logon Authentication

  • In any connection-oriented protocol, logon authentication is required before any session can be built
  • At a minimum, the logon authentication requires User ID and password.
  • The credentials are sent to the target device and compared against the security database.
  • If the user is authenticated, the session is created.
  • If not, the session is immediately aborted.

*

Logon Authentication

  • Once users log on to the network, their credentials stay in cache.
  • The system makes use of this credential every time they attempt to access any network resource
  • Once the client host has located the resource, if the resource has password restriction, the device housing that resource will forward the logon authentication to the server.
  • The security database will be checked, and if all information is correct, the user will be allowed to access the resource.

*

Logon Authentication Example

*

The Connection ID

  • Everything has to have a name.
  • On any given host, it is high likely that there are multiple session open simultaneously
  • The connection ID keeps multiple sessions from getting confused.
  • For each session, the network will create a source connection ID and destination connection ID. This number will be given to the lower layer in order to make sure this information is added to the appropriate fields.
  • TCP/IP makes very little use of connection IDs. TCP/IP uses sequence number to keep packets from different session.

*

Duration of the Connection

  • An estimated duration is negotiated between entities.
  • In the event that one of the device drops the connection for any reason, the other device will not just leave the virtual link hanging open.
  • When the time to live expires, the still-connected device can either reestablish the connection or close it.

*

Service Required

  • The device also negotiates what services are being requested and those that will be required.
  • The services provided by the Session Layer include:

*

The Final Steps of Initializing a Session

  • The last two steps of initializing a session are:
  • Determine which entity begins the conversation
  • Coordinate the acknowledgement numbering and retransmission procedure.
  • Deciding who talks first is simply a matter of what type of service is being provided.
  • The client may be requesting access to the resource on the server
  • The server may be synchronizing data on the client.

*

The Final Steps of Initializing a Session

  • Connection-oriented protocol require that acknowledgements be sent for each packet received. It is the Session layer to negotiate the method of acknowledgement
  • Sliding window
  • Stop and wait
  • etc

*

Dialogue Management

  • Duplex or half-duplex operation is selected.
  • If the full duplex is selected, either device can send data any time it is required
  • If half-duplex (Simplex) is selected, the process of communication is controlled by a token.
  • Data Token – permit the transmission of data
  • Synchronize minor token – A fine-tuning of the session’s flow is required, or a checkpoint is being issued.
  • Major activity token – The entire is out of synch and needs to be realigned and reset
  • Release token – All finished. Let’s go home
  • Disconnect token – The data transfer is complete and the session can be broken down.
  • Abort token – Some catastrophic failure has occurred and the session is to be ended immediately.

*

Dialogue Management

  • During the transmission, the Session layer periodically places Checkpoints in the data steam.

  • In the event of a session failure, certain protocols can reestablish a connection and pick up where they left off.

  • A synchronization minor token is used so that the receiving device will not confuse the checkpoint with actual data

*

Dialogue Synchronization

  • Broken down into four types
  • Initial synchronization
  • Starts the conversation
  • Major synchronization
  • Starts the conversation over again, if need be
  • Minor synchronization
  • Fine-tunes data exchange as needed
  • Resynchronization
  • Either restarts or completely aborts the session. It can take advantage of checkpoint to resume the transmission. A set command can be used to return to a specific checkpoint.

*

Releasing the Connection

  • The final responsibility of the Session layer is to disconnect a communication link and remove the temporary files that have been created during the session.
  • Disconnection fall under two categories, the expected and the unexpected
  • Expected disconnections occur because either the duration of the session has expired or the transfer of data is complete.
  • Unexpected disconnection occurs because of an unrecoverable error

*

Releasing the Connection

  • An expected disconnect results in a finish Protocol Data Unit being issued.
  • The session is broken down and all TEMP files cleaned up.
  • An unexpected disconnection results in a not-finished PDU.
  • TEMP files remain intact. Once the reconnection has been made, the checkpoint procedure will be used to resume the transfer where it left off.

*

Summary

  • The Session layer (Layer 5) of the OSI model performs the following tasks:
  • Starts and ends sessions on the Presentation layer’s request and passes connection information to the Transport layer
  • Maintain the dialogue.
  • Performs authentication, verifies permissions, and session recovery and checkpoint

*