l12 Queuing, Caching, and Content Distributio

l12 Queuing, Caching, and Content Distributio - Lecture 12:...

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

View Full Document Right Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon

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

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Lecture 12: Queuing, Caching, and Content Distribution Overview How routers queue affects how TCP and other protocols behave Two router questions: drop policy, scheduling policy Reducing congestion through content distribution- Clients can cache- Services can use a CDN Congestion Control Revisited Congestion is when the input rate >> output rate- In TCP, flow control window ensures sender does not exceed rate at which receiver consumes data- What if senders exceed a routers maximum output rate? What should routers do? Make sender slow down TCP sending rate = window-size / RTT , so 2 options: 1. Increase RTT buffer more packets = more queuing delay 2. Reduce window size happens if router drops packets Recall TCP reacts to packet loss by shrinking congestion window- Triple duplicate ack: halve window, enter CA state- Timeout: set window to 1, enter SS state Congestion at Router Destination 1.5-Mbps T1 link Router Source 2 Source 1 1- M b p s F D D I 1- M b p s E t h e r n e t Router goals- Prioritize who gets limited resources- Somehow interact well with TCP Router design issues Scheduling discipline- Which of multiple packets should you send next?- May want to achieve some notion of fairness- May want some packets to have priority Drop policy- When should you discard a packet?- Which packet to discard?- Some packets more important (perhaps BGP)- Some packets useless w/o others (IP fragments) Need to balance throughput & delay- Could minimize/eliminate drops with enormous buffers- But queuing delay highly frowned upon (interactive apps) Example: FIFO tail drop Arriving packet Next free buffer Free buffers Queued packets Next to transmit (a) Arriving packet Next to transmit (b) Drop Differentiates packets only by when they arrive- Packet dropped if queue full when it arrives Tail drop issues When stable, queue will always be nearly full- Guarantees high latency for all traffic Possibly unfair for flows with small windows- E.g., small flow ( < 4 segments) may be stuck in backoff, while larger flows can use fast retransmit to recover Window synchronization- Consider many flows in a stable configuration- New flow comes in, causes a bunch of packet losses- Existing flows all cut their windows together (underutilizing link)- Flows all grow their windows together until link again overloaded and many packets lost. Repeat... What to optimize for? Fairness (in two slides) High throughput queue should never be empty Low delay so want short queues Crude combination: power = Throughput / Delay- Want to convince hosts to offer optimal load Optimal load Load Throughput/delay Connectionless flows Router Source 2 Source 1 Source 3 Router Router Destination 2 Destination 1 Even in Internet, routers can have a notion of flows- E.g., base on IP addresses & TCP ports (or hash of those)- Soft state doesnt have to be correct- But if often correct, can use to form router policies Fairness...
View Full Document

Page1 / 41

l12 Queuing, Caching, and Content Distributio - Lecture 12:...

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

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