Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.

Similar presentations


Presentation on theme: "CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina."— Presentation transcript:

1 CSCE 515: Computer Network Programming Chin-Tser Huang huangct@cse.sc.edu University of South Carolina

2 3/23/20042 TCP Reno Additive increase and multiplicative decrease (AIMD) Increase cwnd by 1 MSS every RTT in the absence of loss events Cut cwnd in half after a message loss, and apply additive increase again

3 3/23/20043 TCP Persist Timer When window size goes to 0, sender cannot transmit more data If the ACK that opens window is lost, can end up in a deadlock in which receiver waiting for data and sender waiting for window update Sender uses a persist timer to send window probes to receiver every 60 seconds Until window opens up or either of applications using this connection is terminated

4 3/23/20044 TCP Keepalive Timer An idle connection may occupy some resources on server side Server sends a probe packet after connection has been idle for 2 hours Controversial because it may cause a good connection to be terminated due to temporary loss of network connectivity

5 3/23/20045 TCP Keepalive Timer Four scenarios Other end is still up: receive response from other end and reset keepalive timer back to 2 hours Other end has crashed: no response from other end; send 10 more probes every 75 seconds and terminate connection if no response Other end has crashed and rebooted: receive reset from other end and terminate connection Other end is currently unreachable: receive ICMP host unreachable error; send 10 more probes every 75 seconds and terminate connection if unreachable

6 3/23/20046 TCP Window Scale Option Apply a scaling to 16-bit window size field Shift count is between 0 and 14 Can specify a window of up to 65536*2 14 bytes kind=3len=3 shift count 111

7 3/23/20047 TCP Timestamp Option Let more segments be accurately timed Sender places a 32-bit value in timestamp value field Receiver echoes it in reply field Timestamp is monotonically increasing kind=8len=10timestamp value 11 4 timestamp echo reply 4

8 3/23/20048 Wrapped Sequence Numbers TCP Sequence and ACK fields contain 32-bit values If using a 1GB window, could conceivably wrap the sequence number space to a point where old packets containing a valid sequence number could reappear A monotonically increasing timestamp extends sequence number can resolve this condition

9 3/23/20049 T/TCP: Extension for Transaction In transaction service, it is desirable to avoid overhead of connection establishment and termination, and to reduce latency to RTT+SPT TCP is too much and UDP is too little T/TCP is an alternative solution Use connection count (CC) option to identify connections opened to a certain host Client packs SYN, request, FIN, CC in first segment If received CC is larger than cached CC, server passes data to application without three-way handshake Reduce transaction sequence to three segments

10 3/23/200410 Next Class HyperText Transfer Protocol (HTTP) Read JNP Ch. 14, 17


Download ppt "CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina."

Similar presentations


Ads by Google