1Quality of ServiceEECS 122: Lecture 15Department of Electrical Engineering and Computer SciencesUniversity of CaliforniaBerkeleyMarch 7, 2006EECS122 Lecture 15 (AKP)2Qos Mechanisms Policing at the edge of the network controls the amount of traffic the network layer has to allocate. Scheduling in conjunction with packet dropping control performance within a router Scheduling mechanisms determine how the bandwidth of an output port is shared Mainly used to manage delay Signaling allows for flows.R(f1)A(t)D(t)Model of router queuesR(f2)R(fM)A1(t)A2(t)AM(t)SchedulingDiscipline2March 7, 2006EECS122 Lecture 15 (AKP)3Flow Set up Flow signals to the network its Statistics (e.g. 24Mb/s constant bit rate) Traffic Spec Service Level requirement Max, average, 95% level etc. If the network cannot fulfill the requirement it rejects the flow May suggest a change If the network can fulfill the requirement it reserves resources to carry the flow traffic and accepts the flowAdmission ControlToken BucketsResource ReservationMarch 7, 2006EECS122 Lecture 15 (AKP)4TodayEnd to End QoS Network Layer: Multiple routers Intserv Diffserv Application Layer Adaptive Playback Buffers Streaming Voice3March 7, 2006EECS122 Lecture 15 (AKP)5IETF Integrated Services architecture for providing QOS guarantees in IP networks for individual application sessions resource reservation: routers maintain state info (a la VC) of allocated resources, QoS req’s admit/deny new call setup requests:Question: can newly arriving flow be admittedwith performance guarantees while not violatedQoS guarantees made to already admitted flows?March 7, 2006EECS122 Lecture 15 (AKP)6Intserv: QoS guarantee scenario Resource reservation call setup, signaling (RSVP) traffic, QoS declaration per-element admission control QoS-sensitive scheduling (e.g., WFQ)request/reply4March 7, 2006EECS122 Lecture 15 (AKP)7Call AdmissionArriving session must : declare its QOS requirement R-spec: defines the QOS being requested characterize traffic it will send into network T-spec: defines traffic characteristics signaling protocol: needed to carry R-spec and T-spec to routers (where reservation is required) RSVP (Resource Reservation Protocol): will cover this when we discuss multicastMarch 7, 2006EECS122 Lecture 15 (AKP)8Intserv QoS: Service models [rfc2211, rfc2212]Guaranteed service: worst case traffic arrival: leaky-bucket-policed source simple (mathematically provable) bound on delay [Parekh 1992, Cruz 1988]Controlled load service: "a quality of service closely approximating the QoS that same flow would receive from an unloaded network element."WFQ token rate, rbucket size, bper-flowrate, RD = b/Rmaxarrivingtraffic5March 7, 2006EECS122 Lecture 15 (AKP)9Intserv ExampleSenderReceiver Goal: achieve per-flow bandwidth and delay guaranteesMarch 7, 2006EECS122 Lecture 15 (AKP)10Step 1: Ask Permission…SenderReceiver Example: achieve per-flow bandwidth and delay guaranteesSender sends Tspec, Rspec6March 7, 2006EECS122 Lecture 15 (AKP)11Step 2: Establish PathSenderReceiver RSVP Signaling ProtocolPath establishedMarch 7, 2006EECS122 Lecture 15 (AKP)12SenderReceiverStep 3: Reserve buffer resources Configure router queues Per-flow state on all routers in pathWhat about DATAGRAM routing?7March 7, 2006EECS122 Lecture 15 (AKP)13Step 4: Traffic FlowsSenderReceiver We will discuss joins later…Per-flow classification on each routerMarch 7, 2006EECS122 Lecture 15 (AKP)14Traffic FlowsSenderReceiverPer-flow classification on each router8March 7, 2006EECS122 Lecture 15 (AKP)15Traffic FlowsSenderReceiverPer-flow scheduling on each routerMarch 7, 2006EECS122 Lecture 15 (AKP)16Token Bucket + WFQ = Delay Bound No packet has a queueing delay of more than b/R secondsWFQ token rate, rbucket size, bper-flowrate, RD = b/Rmaxarrivingtraffic9March 7, 2006EECS122 Lecture 15 (AKP)17IETF Differentiated ServicesConcerns with Intserv: Scalability: signaling, maintaining per-flow router state difficult with large number of flows Flexible Service Models: Intserv has only two classes. Also want “qualitative” service classes “behaves like a wire” relative service distinction: Platinum, Gold, SilverDiffserv approach: simple functions in network core, relatively complex functions at edge routers (or hosts) Don’t define define service classes, provide functional components to build service classesMarch 7, 2006EECS122 Lecture 15 (AKP)18Edge router: per-flow traffic management marks packets as in-profile and out-profileCore router: per class traffic management buffering and scheduling based on marking at edge preference given to in-profile packets Assured ForwardingDiffserv Architecturescheduling...rbmarking10March 7, 2006EECS122 Lecture 15 (AKP)19Edge-router Packet Marking class-based marking: packets of different classes marked differently intra-class marking: conforming portion of flow marked differently than non-conforming one profile: pre-negotiated rate A, bucket size B packet marking at edge based on per-flow profilePossible usage of marking:User packetsRate ABMarch 7, 2006EECS122 Lecture 15 (AKP)20Classification and Shapingmay be desirable to limit traffic injection rate of some class: user declares traffic profile (e.g., rate, burst size) traffic metered, shaped if non-conforming11March 7, 2006EECS122 Lecture 15 (AKP)21Forwarding: Per Hop Behaviors (PHBs) Try to control QoS per router hop rather than end to end. PHB specifies observable (measurable) forwarding performance behavior E.g. Don’t any packets of class 11 by more than 20ms. PHB does not specify what mechanisms to use to ensure required PHB performance behavior Examples: Class A gets x% of outgoing link bandwidth over time intervals of a specified length Class A packets leave first before packets from class BMarch 7, 2006EECS122 Lecture 15 (AKP)22Classification and Conditioning Packet is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6 6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive 2 bits are currently unused12March 7, 2006EECS122 Lecture 15 (AKP)23Forwarding (PHB)PHBs being developed: Expedited Forwarding: pkt departure rate of a class equals or exceeds specified rate logical link with a minimum
View Full Document