tailieunhanh - Lecture TCP-IP protocol suite - Chapter 12: Transmission Control Protocol (TCP)

Upon completion you will be able to: Be able to name and understand the services offered by TCP, understand TCP’s flow and error control and congestion control, be familiar with the fields in a TCP segment, understand the phases in a connection-oriented connection, understand the TCP transition state diagram, be able to name and understand the timers used in TCP, be familiar with the TCP options. | Chapter 12 Transmission Control Protocol (TCP) CONTENTS PROCESS-TO-PROCESS COMMUNICATION TCP SERVICES NUMBERING BYTES FLOW CONTROL SILLY WINDOW SYNDROME ERROR CONTROL TCP TIMERS CONTENTS (continued) CONGESTION CONTROL SEGMENT OPTIONS CHECKSUM CONNECTION STATE TRANSITION DIAGRAM TCP OERATION TCP PACKAGE Figure 12-1 Position of TCP in TCP/IP protocol suite PROCESS TO PROCESS COMMUNICATION Figure 12-2 TCP versus IP Figure 12-3 Port numbers TCP SERVICES Figure 12-4 Stream delivery Figure 12-5 Sending and receiving buffers Figure 12-6 TCP segments NUMBERING BYTES The bytes of data being transferred in each connection are numbered by TCP. The numbering starts with a randomly generated number. Example 1 Imagine a TCP connection is transferring a file of 6000 bytes. The first byte is numbered 10010. What are the sequence numbers for each segment if data is sent in five segments with the first four segments carrying 1,000 bytes and the last segment carrying 2,000 bytes? . | Chapter 12 Transmission Control Protocol (TCP) CONTENTS PROCESS-TO-PROCESS COMMUNICATION TCP SERVICES NUMBERING BYTES FLOW CONTROL SILLY WINDOW SYNDROME ERROR CONTROL TCP TIMERS CONTENTS (continued) CONGESTION CONTROL SEGMENT OPTIONS CHECKSUM CONNECTION STATE TRANSITION DIAGRAM TCP OERATION TCP PACKAGE Figure 12-1 Position of TCP in TCP/IP protocol suite PROCESS TO PROCESS COMMUNICATION Figure 12-2 TCP versus IP Figure 12-3 Port numbers TCP SERVICES Figure 12-4 Stream delivery Figure 12-5 Sending and receiving buffers Figure 12-6 TCP segments NUMBERING BYTES The bytes of data being transferred in each connection are numbered by TCP. The numbering starts with a randomly generated number. Example 1 Imagine a TCP connection is transferring a file of 6000 bytes. The first byte is numbered 10010. What are the sequence numbers for each segment if data is sent in five segments with the first four segments carrying 1,000 bytes and the last segment carrying 2,000 bytes? Solution The following shows the sequence number for each segment: Segment 1 10,010 (10,010 to 11,009) Segment 2 11,010 (11,010 to 12,009) Segment 3 12,010 (12,010 to 13,009) Segment 4 13,010 (13,010 to 14,009) Segment 5 14,010 (14,010 to 16,009) The value of the sequence number field in a segment defines the number of the first data byte contained in that segment. The value of the acknowledgment field in a segment defines the number of the next byte a party expects to receives. The acknowledgment number is cumulative. FLOW CONTROL A sliding window is used to make transmission more efficient as well as to control the flow of data so that the destination does not become overwhelmed with data. TCP’s sliding windows are byte oriented. Figure 12-7 Sender buffer Figure 12-8 Receiver window Figure 12-9 Sender buffer and sender window Figure 12-10 Sliding the sender window Figure 12-11 Expanding the sender window Figure 12-12 Shrinking the sender window In TCP, the sender

TÀI LIỆU LIÊN QUAN