A Complete Session

Figure 7.35 shows a complete TCP session between an HTTP 1.0 client and server, taken from the examples given in Section 7.1.4.2, Section 7.1.4.3, and Section 7.1.4.4. Although this example shows an overview of the steps, it does not provide detailed insight into each of the segments being sent between the two endpoints. This information will be shown later in this section.

A complete TCP session
Figure 7.35. A complete TCP session

The order of events are as follows:

  1. Before anything else can happen, applications have to register with their local TCP provider, allocating a port number for use. In this example, the HTTP server has requested that port 80 (the well-known port number for HTTP) be opened in passive mode, allowing incoming requests from HTTP clients to get satisfied. For more information on TCP port numbering mechanism, refer to Section 7.1.4.1.

  2. In this example, a user wishes to retrieve a document from the HTTP server, so he enters the URL of the document into the HTTP client. The HTTP client issues an active open request to the local TCP provider, which then begins the process of establishing a virtual circuit between the local and remote TCP systems. For more information on active and passive opens, refer to Section 7.1.4.2.

  3. During the circuit-setup process, the TCP stack in use at the HTTP client sends a command segment to the TCP stack in use at the destination system. Since ...

Get Internet Core Protocols: The Definitive Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.