TCP Transport Layer Standards

72 Communication Networks Copyright © 2005 PragSoft using the three-way handshake method. In this method, to establish a connection between A and B, when A requests a connection and receives a confirmation from B, it must acknowledge and therefore finalize the connection as intended. Should B receive a delayed duplicate connection request and confirm it, A will know that this is due to a duplicate message and reject the connection on that basis.

5.4. Further Reading

Schwartz 1987, Black 1989, and Stallings 1994 provide general descriptions of the transport layer protocols and standards. Black 1992, Feit 1992, Comer 1993, and Piscitello and Chapin 1993 describe TCPIP in detail. 74 Communication Networks Copyright © 2005 PragSoft

6. The Session Layer

This chapter describes the session layer of the OSI model. The session layer provides a structured means for data exchange between user processes or applications on communicating hosts. This layer uses the term session instead of connection to signify the point that communication is studied from an application rather than a host point of view. More specifically, a session imposes a set of rules on the way applications should communicate. Also of interest are: how a session is negotiated between two applications, the synchronization and control of message exchanges between applications e.g., how they should take turns, the context of messages e.g., whether they relate to records from a database or keystrokes on a terminal, dealing with transport failures, and the bracketing of messages as required by some applications. We will first look at the session service primitives and their use by higher layers. Then we will describe the session protocol and related issues, such as the use of tokens in activities and dialog units, synchronization, error handling, and the structure of session messages. Finally, we will list a number of session layer standards.

6.1. Session Services

As with earlier layers, the session services are defined in terms of session primitives, of which there are many. Figure 6.63 summarizes the primitives together with their possible types and parameters. Figure 6.63 Session service primitives. Primitive Types Parameters Purpose S-CONNECT request indicate response confirm addresses, QOS, result, requirements, serial no., token, user data Used for initiating a session connection connections are always initiated by service users. S-RELEASE request indicate response confirm result, user data Used for orderly release of a connection. S-U-ABORT request indicate user data Used for service user-initiated abort. S-P-ABORT indicate reason Used for service provider-initiated abort.