Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Differentiated Services Yogesh Bhumralkar WebTP Meeting - 03/06/2000 What is Diffserv? An approach to delivering QoS in a scalable, incrementally deployable way that: keeps control of QoS “local” pushes work to the edges or network boundaries: keeps forwarding path simple requires minimal standardization, encourages maximal innovation: doesn’t specify the means so much as it specifies the ends. Diffserv model leverages the fact that the Internet is composed of independently administered domains. Aggregation: “Behavior Aggregates (BA)”: packets are grouped according to the forwarding behavior they are to receive within the cloud. “Per-Hop Behavior (PHB)”: description of the forwarding treatment for a particular BA - this is the observable behavior. Basic idea: Nodes in the center of a network only have to deal with the small number of traffic aggregates rather than keeping track of every separate traffic flow that passes through. Aggregation: Per-flow state is maintained at the edges Flows are classified into aggregates and are “conditioned” to meet the rules of that traffic aggregate. Traffic Conditioning occurs at the edges. Can occur either upon ingress or egress. Within the network the aggregate is treated as one: no distinction made between different flows. treatment of behavior aggregate should not result in different performance for different traffic compositions within the behavior aggregate. How are flows conditioned? Classifier identifies the flows that packets belong to. Classification based on the DS Field in IP header and perhaps other info such as source/dest. IP addresses etc. DS Field value represents a BA and maps to a particular PHB Meter measures the resource consumption of the flow: flow rate and size of bursts. Marker modifies the DS Field. Shaper: paces out the traffic usually done for incoming bursty traffic Dropper: packets are dropped when a burst exceeds a maximum rate or maximum burst threshold Conditioning Process: Packet Marking: DS Field DS Field is a replacement for the original IPv4 TOS octet or IPv6 Traffic Class octet in the IP Header. Leftmost 6 bits represent the DSCP (Diffserv codepoint) Rightmost 2 bits currently unused (CU) Codepoints are an index into a table of packet forwarding treatments at each router. Table maps a DSCP to a particular PHB although this mapping may only be local to that domain. DSCP indicates a packet’s behavior aggregate within a cloud from this point on the packet is treated only as part of this aggregate not as part of a particular flow. Marking: Marking can be done by a DS-node anywhere in the network but is usually done at network boundaries Re-marking: the codepoints for a given PHB might be different in different domains. Hence, the need to re-specify the codepoint. There are recommended codepoint values for certain PHBs but these need not be strictly followed. Re-Marking: Domain A Domain B Egress Node 110101 Phb1 = 110101 Ingress Node 111001 Phb1 = 111001 PHB: Class Selector Compliant Motivation was to preserve backward compatibility with the IP Precedence Field (bits 0-2) in TOS octet. used for network control traffic, routing traffic etc. routers can implement filters based on this IP Precedence field. Specified by DSCP = “xxx000” Preserve Default PHB requirement on code ‘000000’ Best Effort traffic CSC codepoints describe minimum requirements on a set of PHBs that are compatible with forwarding treatments on selected by IP Precedence fields . CS PHB Requirements: The set of PHBs mapped to by the 8 CSC codepoints must give at least 2 independently forwarded classes of traffic. PHBs for codepoints 11x000 must give packets preferential forwarding treatment compared to the default PHB (‘000000’). Packets with different codepoints may be re-ordered but those with the same codepoints should remain in order Example: Strict Priority scheduling with 2 queues Assured Forwarding (AF) PHB: Four independently forwarded AF classes with three levels of drop precedence (two okay) within each class. Each class allocated certain amount of resources at the node (bandwidth and buffer space). Drop precedence determines the relative order of importance of a packet within a class. A congested node discards packets with a higher drop precedence. No re-ordering of AF packets of a microflow when they belong to the same AF class regardless of their drop precedence. Packets with the lowest drop precedence are assumed to be within a subscribed profile. AF Example: Olympic Service 3 Classes: Gold (AF1), Silver (AF2), Bronze (AF3) Packets are assigned to these classes so that gold class experiences lighter load than the others. Each class can have 3 drop precedences: implement using a leaky bucket controller with parameters rate and size, which is the sum of two burst values: committed burst size and excess burst size (ebs). If # tokens available >= ebs --> low drop precedence If 0 < # tokens < ebs --> medium drop precedence If # tokens == 0 --> high drop precedence Expedited Forwarding (EF) PHB: Forwarding treatment for an aggregate where the departure rate of the aggregate’s packets must equal or exceed the configured rate for that aggregate. EF traffic should receive this rate independent of the presence of any other traffic. Time scale: Traffic should avg at least the configured rate when measured over a time interval equal to or longer than the time taken to send an MTU sized packet on the output link at the configured rate. Can implement this with a PQ with a token bucket rate limiter or a WRR scheduler with EF’s share of the bandwidth being the configured rate. Resource Management: Bandwidth Brokers Keep track of allocated bandwidth in a network domain. Process new bandwidth allocation requests. Configured with organizational policies - establish relationships with brokers in adjacent domains. Brokers configure routers within their domain to deliver particular services to a flow. Process is indicated in the following diagram: Bandwidth Brokers: 1. Request: A wants to transfer data to B. 2. Request requires negotiation between Bba and BBb. 3, 4. Brokers configure routers within their domains. 5, 6, 7. Transfer of data. Acknowledgements: Kathleen Nichols presentation slides on Diffserv at the UCB BMRC seminar (1998).