11Quality of Service (QoS) - DiffServEE 122: Intro to Communication NetworksFall 2007 (WF 4-5:30 in Cory 277)Vern PaxsonTAs: Lisa Fowler, Daniel Killebrew & Jorge Ortizhttp://inst.eecs.berkeley.edu/~ee122/Materials with thanks to Jennifer Rexford, Ion Stoica,and colleagues at Princeton and UC Berkeley2Our Story So Far• QoS = attaining some sort of reliable performance from the network• Max-Min Fairness as concept for allocating capacity across a set of flows• Weighted Fair Queuing as way to attain Max-Min Fairness• Token Bucket as way to describe bounds on burstiness of a flow’s packet’s arriving at a queue• Integrated Services (IntServ) as means by which flows can– Describe burstiness using Token Bucket descriptors– Set up soft-state reservations end-to-end– Entails admission control decisiono Answer could be “no, you don’t get it”23Problems with IntServ• Scalability: per-flow state & classification– Aggregation/encapsulation techniques can help– Can overprovision big links, per-flow ok on small links– Scalability can be fixed - but no second chance• Economic arrangements:– Need sophisticated settlements between ISPs– Contemporary settlements are primitiveo Unidirectional, or barter• User charging mechanisms: need QoS pricing– On a fine-grained basis4Differentiated Services (DiffServ)• Give some traffic better treatment than other– Application requirements: interactive vs. bulk transfer– Economic arrangements: first-class versus coach• What kind of better service could you give?– Fewer drops– Lower delay– Lower delay variation (jitter)• How to know which packets get better service?– Bits in packet header• Deals with traffic in aggregate– Provides weaker services– But much more scalable35Diffserv Architecture• Ingress routers - entrance to a DiffServ domain– Police or shape traffic– Set Differentiated Service Code Point (DSCP) in IP header• Core routers– Implement Per Hop Behavior (PHB) for each DSCP– Process packets based on DSCPIngressEgressIngressEgressDS-1DS-2Edge routerCore router6Differentiated Service (DS) Field• DS field encodes Per-Hop Behavior (PHB)– E.g., Expedited Forwarding (all packets receive minimal delay & loss)– E.g., Assured Forwarding (packets marked with low/high drop probabilities)Version HLenTOS LengthIdentificationFragment offsetFlagsSource addressDestination addressTTL Protocol Header checksum04 8 16 19 31DataIPheaderDS Field0 5 6 7ECN47Comparison to Best-Effort & IntservBest-Effort Diffserv IntservService ConnectivityNo isolationNo guaranteesPer aggregate isolationPer aggregate guaranteePer flow isolationPer flow guaranteeService scopeEnd-to-end Domain End-to-endComplexity No setup Long term setup Per flow steupScalability Highly scalable (nodes maintain only routing state)Scalable(edge routers maintain per aggregate state; core routers per class state) Not scalable (each router maintains per flow state)8Discussion: Limited QoS Deployment• End-to-end QoS across multiple providers/domains is not available today• Issue #1: complexity of payment– Requires payment system among multiple partieso And agreement on what constitutes service– Diffserv tries to structure this as series of bilateralagreements …o … but lessens likelihood of end-to-end serviceo Architecture includes notion of “Bandwidth Broker” for end-to-end provisioning• Solid design has proved elusive– Need infrastructure for metering/billing end user59Limited QoS Deployment, con’t• Issue #2: prevalence of overprovisioning– Within a large ISP, links tend to have plenty of headroom– Inter-ISP links are not over provisioned, however• Is overprovisioning enough?– If so, is this only because access links are slow?– What about Korea, Japan, and other countries with fast access links?– Disconnect: ISPs overprovision, users get bad service• Key difference: intra-ISP vs. general end-to-end10Summary• Basic mechanism for achieving better-than-best-effort performance: scheduling– Multiple queues allow priority service– Fair queuing provides isolation between flows• But: still need end-to-end mechanisms– Reservations & admission control– Descriptions of bursty traffic: token buckets• IntServ provides per-flow performance guarantees– But lacks scalability• DiffServ provides per-aggregate tiers of relative perf.– Scalable, but not as powerful• Neither is generally available end-to-end today• ISPs manipulating what services receive what performance raises issues of: network
View Full Document