17-03-2011, 04:30 PM
[attachment=10437]
Transport Control Protocol
TCP Overview
• TCP is the most widely used Internet protocol
– Web, Peer-to-peer, FTP, telnet, …
• A two way, reliable, byte stream oriented end-to-end protocol
– Includes flow and congestion control
Closely tied to the Internet Protocol (IP)
• A focus of intense study for many years
– Our goal is to understand the RENO version of TCP
• RENO is most widely used TCP today
• RFC 2001 (now expired)
• RENO mainly specifies mechanisms for dealing with congestion
• TCP Features
• Connection-oriented
Byte-stream
– app writes bytes
– TCP sends segments
– app reads bytes
• Reliable data transfer
Segment Format
• Each connection identified with 4-tuple:
– (SrcPort, SrcIPAddr, DsrPort, DstIPAddr)
• Sliding window + flow control
– acknowledgment, SequenceNum, AdvertisedWinow
– Flags
– SYN, FIN, RESET, PUSH, URG, ACK
• Checksum is the same as UDP
– pseudo header + TCP header + data