5/1/09 Internet Checksum Example CS 78 Computer Networks TCP • Example: add two 16-bit integers Andrew T. Campbell [email protected] Stop-and-wait sender • Note – When adding numbers, a carryout from the most significant bit needs to be added to the result 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 wraparound 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 sum 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 checksum 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 Go-Back-N receiver sender receiver RTT RTT Sender: Go-Back-N Selective repeat: sender, receiver windows • seq # in pkt header • “window” of up to N, consecutive unack’ed packets allowed • ACK(n): ACKs all packets up to, including seq # n “cumulative ACK” – may receive duplicate ACKs • Timer for each in-flight packets • Timeout(n): retransmit packets n and all higher seq # packets in window 1 5/1/09 Selective repeat TCP seq. #’s and ACKs Seq. #’s: – byte stream “number” of first byte in segment’s data ACKs: – seq # of next byte expected from other side – cumulative ACK Q: how receiver handles out-of-order segments A: TCP spec doesn’t say, up to implementor Retransmissions 2, 8 by tes da ta =100 ACK X loss 2, 8 by ta 100 100, 20 byt SendBase = 120 2, 8 by ta tes da ta 20 K=1 Host B Seq=9 0 10 K= 120 AC ACK= SendBase = 120 tes da Seq=1 00, 20 X ta =100 ACK bytes data loss =120 ACK AC premature timeout time lost ACK scenario Host A ta es da 2, 8 by = ACK SendBase = 100 time Seq= tes da Seq=9 Sendbase = 100 SendBase = 120 tes da 2, 8 by Seq=92 timeout Seq=9 Host B Seq=9 Seq=92 timeout timeout Host A Host B Seq=9 timeout Host A Retransmissions time Cumulative ACK scenario RTT estimation: RTT: gaia.cs.umass.edu to fantasia.eurecom.fr 350 RTT (milliseconds) 300 250 200 150 100 1 8 15 22 29 36 43 50 time SampleRTT 57 64 71 78 85 92 99 106 (seconnds) Estimated RTT 2
© Copyright 2026 Paperzz