ablishment. TCP software running and waiting connection requests to its port. For example, Web server waits connection requests to port 80 and DNS server to port 53. The combination of IP address and port is called a socket and it defines where the source or destination process is found. A client uses one of its free ports and inserts its port number and the destination port number into the TCP header in Figure 6.48. It sets SYN bit on, ACK bit off, and writes the sequence number (which can be any number), for example, 200, to the TCP header. With the help of the options field it also attaches the maximum segment size it is able to handle. Option- ally some user data could also be attached, for example, a password. Then the TCP segment is attached to the IP packet including source and destination IP addresses and sent to the server or first router on the way to the destina- tion identified by the destination IP address. A retransmission timer is started at the time of transmission and if the response does not arrive before the timer expires, the connection request is retransmitted. The packet is routed to the destination host, server, and to the identi- fied port of which server process is listening. If the server accepts the connec- tion, it replies with a TCP segment including its own sequence number, for example, 400, control bits SYN and ACK on, and acknowledgment number one higher that the received sequence number, in this case, 201. The server starts the retransmission timer when it transmits the connection confirm Data Communications message. When the client receives the segment it knows that the far-end computer accepts the connection and it has also understood the attached sequence numbering. If the server does not accept the connection, the RST bit is set in its TCP header to reject the connection request. The server cannot yet be sure that the client has received its message properly and a third message is required until the two-way connection is established. The third message in Figure 6.49 may contai