Lecture-15 - Lecture #15 Todays Lecture Objectives Review...

Info iconThis preview shows pages 1–11. Sign up to view the full content.

View Full Document Right Arrow Icon
Lecture #15
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Today’s Lecture Objectives • Review • Transport Layer – TCP Congestion Control – TCP over satellite links • UDP
Background image of page 2
TCP Congestion Control • Too much traffic into the network causes overload, gridlock, and collapse • TCP tries to limit traffic sent into the network
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
TCP Congestion Control • min(receiver_advertised_window,congestion_window) – receiver_advertised_window is sent as part of TCP header • recall that there is one window for EACH side of connection – congestion_window is locally computed • also a congestion_window for EACH side of connection • locally computed (and not seen in the header) at’s four windows per TCP connection – that’s four windows per TCP connection • how is congestion detected? – based on loss – a timeout or other detection of loss indicates congestion • not always true (e.g. when there is a CRC error)
Background image of page 4
TCP Segment Structure source port # dest port # 32 bits sequence number acknowledgement number Receive window Urg data pnter checksum F S R P A U head len not used URG: urgent data (generally not used) ACK: ACK # valid PSH: push data now (generally not used) # bytes rcvr willing counting by bytes of data (not segments!) application data (variable length) Options (variable length) RST, SYN, FIN: connection estab (setup, teardown commands) to accept Internet checksum (as in UDP)
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Basic TCP Congestion Control Important variables Window Size (WS) = usually set to “1” at start of connection Threshold = often set to “64kB” at start of connection Segment Size = usually set to 536 or 512 (or negotiated at connection start-up) Slow Start 1. send one segment, wait for ACK 2. for each ACK received, send two segments . peat until “threshold” is reached, then “congestion avoidance” 3. repeat until “threshold” is reached, then “congestion avoidance” Congestion Avoidance 4. for each window-full of data, increase window size by 1 5. repeat until loss, then “congestion backoff” Congestion Backoff 6. New_threshold = current_window_size / 2 7. WS = 1 8. Go back to slow start (step 1)
Background image of page 6
TCP Slow Start Host A RTT Host B time
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
TCP Slow Start • More examples as discussed in class
Background image of page 8
TCP CC Variants • Tahoe – What has been described so far • Reno – “fast retransmissions” – when three duplicate ACKs (four total ACKs for the same “next expected” byte), guess lost segment, re-transmit “requested segment” – new_threshold = current_window_size / 2 – WS = new_threshold • Vegas – better “congestion avoidance” – observe RTTs, if increases, sign of congestion – WS=WS-1 – if loss, do what Reno does
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
More Recent TCP Variants • Selective ACKs (SACK) – Allows TCP to specify range of missing bytes – Provides more information on specifically what is missing • New Reno – For a duplicate ACK, also send a new packet (to keep making progress) hen duplicate ACK is received, immediately send data after – When duplicate ACK is received, immediately send data after
Background image of page 10
Image of page 11
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 02/19/2012 for the course ENGR 361 taught by Professor Drexel during the Spring '12 term at Bloomsburg.

Page1 / 46

Lecture-15 - Lecture #15 Todays Lecture Objectives Review...

This preview shows document pages 1 - 11. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online