. Improving the Performance of Introduction (1) Interactive TCP Applications using Service Differentiation • Everyone has experience with bad delays – Interactive apps (audioconference, telnet, W. Noureddine and F. Tobagi games) need response time about 150ms – Web needs about 5 seconds, with some Web Department of Electrical Engineering applications (ie- stock trading) less Stanford University • Delays can be from overloaded servers Stanford, CA, USA – But content providers can fix Proceedings of IEEE Infocom – Concentrate on delays from network New York, NY June 2002 Introduction (3) Introduction (2) • Internet designed for throughput – TCP probes for maximum data rate even if • Telnet delay from typed character until echo causes loss – Includes transmission, propagation, queue • Periods of sending followed by idle (time-out) – If loss, then TCP retransmit – Large queues because increases utilization • Web delay the same, but also from – But not necessarily best for interactive applications! connection establishment • This paper – HTTP 1.0 has one connection per object – Classes of traffic (in DiffServ) – HTTP 1.1 allows multiple objects per conect. – Telnet > Web > FTP – Window size for Web NS2 * 800 hosts Outline - 400 pairs * Bwidth -1.5 (T1) • Introduction -10 (LAN) (done) -155 (T3) • Simulation Setup -Vary bttlnk (next) RTTs • The Effects of Congestion -20–200ms * Buffers • QoS Framework -64 (T1) • App Based Differentiation -64 (LAN) -250 (T3) • TCP-State Based Differentiation -500 (Bttl) • Conclusions -(Smallish, so congstn) 1
Traffic Models (1) Traffic Models (2) • TCP • HTTP – NewReno (most common on Internet) – 1.0 – Index page plus 4 parallel connections. – Receiver unlimited window Close each between object • Telnet – 1.1 – Index page plus all objects requested and sent over one connection – Limited by Nagle’s algorithm ( what is that ?) – Number and size from [16] – Send 100 byte packet (includes MAC+TCP/IP – “Think time” is 2.5 seconds (gives heavy use) hdr) and wait for echo – 5 out of 400 are for measurement – Random wait, but about 5 chars per second (rate of a fast typist) • 81 KB, 1 KB index with 8 10 KB images – Performance measure is echo delay • Performance is download time – Aggregate traffic is 33 Mbps – Aggregate telnet traffic less than 2 Mbps Traffic Models (3) Outline • FTP • Introduction (done) – Pareto (heavy tail) size, average 200 KB • Simulation Setup (done) – Delay average 2 seconds between • The Effects of Congestion – 10 probe sessions (out of how many?) of 200 (next) • QoS Framework KB • Performance is transfer time • App Based Differentiation – Bandwidth is elastic but cannot fully utilize • TCP-State Based Differentiation more than 100 Mbps by itself • Conclusions – Also, FTP traffic along the reverse path to get competing traffic for acks TCP with Small Windows -Each user has 1 Effects of Congestion FTP, Tenet, and Web client • HTTP 1.0 has high number of connection -High variability -For lower bottlneck, establishments many still above 10 • SYN packet lost is costly to recover – Initial Time Out (ITO) typically 3 or 6 seconds • Small window doesn’t allow 3 duplicate acks – Retransmission Time Out (RTO) min 1 sec • Work has proposed better clock granularity and timer min [3] 2
ITO of 1 Second Effects of Congestion -HTTP 1.1 better -But CDN’s limit and While substantially still not deployed improves -Use HTTP 1.0 for rest -Bad over long links -May lead to instability � Don’t consider further Instead, decrease loss rate Prioritized Dropping Outline • Use DiffServ’s Assured Forwarding (AF) [8] – Four classes defined • Introduction (done) – Each with 3 drop precedence levels • Simulation Setup • Only consider TCP traffic, but (unresponsive) (done) • The Effects of Congestion UDP traffic (marked and policed) would be (done) • QoS Framework another class (next) • RED with 3 priorities [18], each has EWMA • App Based Differentiation queue average • TCP-State Based Differentiation • Conclusions SLAs and Pricing Outline • Users and network providers work on Service • Introduction (done) • Simulation Setup Level Agreements (SLAs) (done) • The Effects of Congestion – Limit aggregate rates of HIGH and MED (done) – Specify per-user limits and allowable burst • QoS Framework (done) sizes • App Based Differentiation (next) • Users pre-mark own traffic • TCP-State Based Differentiation • Network provider polices marks • Conclusions – Can be done at edge of network 3
Benefits of Application Application Based Differentiation Based Differentiation -Telnet HIGH -Web MEDIUM -FTP LOW -Different MED token rates -HIGH is 250 Kbps -60 Mbps improved -Telnet totally fine (not shown) + But can still have queuing delay -Token bucket shapers to get flow rate -End host does it since edge network will, too Telnet Echo Delays FTP Times -Scale link bwidth by 1/10 th -Even priority won’t help -Need Fair Queuing -LOW priority takes a hit -Might be justified given the improvements to interactive traffic -Can limit impact by limiting token rate -But knowing rate ahead of -And what about LOW (FTP)?C Time tough for DiffServ Difficulties in Marking Web Traffic Outline • Web traffic not all the same size • Introduction (done) • Simulation Setup – Often use Web for large file transfers (done) • The Effects of Congestion – Even stream video over HTTP (long) (done) • Large transfers may interfere with interactivity • QoS Framework (done) of small transfers • App Based Differentiation (done) • And don’t always know size ahead of time • TCP-State Based Differentiation (next) (increasingly dynamically generated) • Conclusions � Solution, is to mark individual packets 4
Marking Algorithm HIGH: -Mark SYN packets -Mark small windows - Italics optional to smooth out abrupt changes -HIGH thresh for Telnet large -HIGH tresh for Web can be size of small object -QoS interface -Users could purchase helps apps more HIGH decide marking Output Link Scheduler Web Downloads -HIGH thresh = 4 -MED thresh = 8 -Queue per application to prevent out-of order -Send HIGH, MED, LOW from one class -Go to next class. If upper class blocked, then cannot send (prevents small packets from starving higher priority) Comparison of Policies Comparison of Policies (Web) (Telnet) 5
Conclusions • Focus on congestion-induced delays • Show how to reduce using multiple network Comparison of Policies service levels (FTP) – Preference given to interactive applications • Study affect of TCP state differentiation • Good user-perceived performance can be achieved, without degrading other applications Future Work? Future Work (me) • Other topologies • Worry about complication of marking schemes • Build application that uses QoS • Streaming? 6
Recommend
More recommend