360 likes | 467 Views
Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks. Michael Barry Andrew T. Campbell Andras Veres. EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks. The paper….
E N D
Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks Michael Barry Andrew T. Campbell Andras Veres EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
The paper… • Investigates service differentiation in wireless packet networks • Proposes solution based on 802.11 DCF • VMAC (Virtual MAC) • Estimates MAC – level statistics of the channel( delay, delay variation, packet collision, packet loss) • VS (Virtual Source) • Utilizes MAC to estimate application-level service quality • Demonstrates through simulations that globally stable state may be achieved if the proposed algorithms are applied to admission control • Discusses distributed service level management scheme built on top of the introduced algorithms EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Motivation • TCP/IP will be the glue for all applications in mobile environments • Desirable that wireless architecture supports the same quality assurances as the wireline Internet • Wired internet – 2 main approaches. • 1st approach • Take circuit switching and extend with datagram service • Very strict control over wireless/wireline resources • Very rigid, complex EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Motivation (cont’d) • 2nd approach ( which this paper is based on) : • Only minimal control and signalling • Should accommodate many different (unforseen) wireless applications • Good example : 802.11 • Does not guarantee anything but the best-effort service (In either DCF of PCF mode) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Motivation (cont’d) • Base on DCF because PCF is good, but … • Not currently supported by most wireless cards • Cooperation with DCF (which is used now) can lead to poor performance • Distributed control (DCF) is more efficient for real-time services then the centralized one (PCF). EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Brief DiffServ Introduction • Concept of Service Differentiation • Differentiating among services provided by a network to different types of customers and applications • IP-layer service differentiated service examples: • value-added internet services • VPNs • application hosting/outsourcing • packet telephony EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Brief DiffServ Introduction (cont’d) • Proposed and spearheaded by IETF DiffServ task force • Designed to help networks satisfy QoS req’ts. • Allow different classes of service to be provided to streams on a common network infrastructure. • One of two major models used in QoS • The other one is Int-Serv • Reservation-less (as opposed to Int-Serv) • No state in routers is needed (as opposed to Int-Serv) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Brief DiffServ Introduction (cont’d) • Push major state and work to the very edges of the networks. • Fan-in and forwarding speeds of flows are smaller • Packets carry their state in a few bits (DS CodePoint) • Flows are policed and marked at the edge (when they enter the network) • To support different classes of IP service : • packet classifiers • forwarding/per-hop-behavior • traffic conditioning policies EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Brief DiffServ Introduction (cont’d) • Services are built by applying rules • Rules for how packets are marked initially • Rules for how marked packets are treated at boundaries. • Three elements work together to deliver a Diffserv service: • Per-Hop Behaviors (PHBs) • Deliver special treatment to packets at forwarding time • Traffic Conditioners • Alter packet aggregates to enforces rules for services • Bandwidth Brokers (Policy Managers) • Apply and communicate policy EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Brief DiffServ Introduction (links) • This is where I found info used in these slides • http://www.qosforum.com/docs/faq/ • http://www.ietf.org/html.charters/diffserv-charter.html • ftp://ftp.netlab.ohio-state.edu/pub/jain/courses/cis788-97/integrated_services/index.htm • ftp://ftp.netlab.ohio-state.edu/pub/jain/courses/cis788-99/h_6qos/sld001.htm EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Approach to providing differentiation • MAC layer must be differentiation-aware to be able to provide any kind of differentiated services in mobile environments • Propose differentiation-aware MAC based on DCF • Differentiation at radio level not sufficient to provide proper differentiation for different traffic types • Propose VMAC (virtual mac) and VS (virtual source) which monitor MAC – level load. • Base admission control on the estimates. EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
DCF • Distributed Coordination Function • Covered in the EE206A notes • CSMA/CA • RTS/CTS for hidden-terminal • Sense channel for DIFS then tx, else backoff and sense again • ACKs are used EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
DCF – backoff strategy • Central to this paper • Tbackoff = Rand(0,CW) * Tslot • Tslot is slot time (contention window is broken into slots) • Tbackoff initializes the timer. Timer is decreased only when nobody is tx’ing. Otherwise it is frozen. • Timer is decreased every time the medium idle for DIFS (distributed interframe space) interval • If no ACK after tx: double CW until you reach Cwmax EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
What should diffserv-enabled MAC be? • Distribute available radio resources between classes ensuring that different classes receive different level of service • Adaptive and robust • Decentralized • There has been work done to achieve this, but proposed solutions have drawbacks, which are corrected (obviously) by this paper. EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Backoff timers as means of differentiation • Idea: change the CWvalues to reflect priority. • Even if collisions, CW values changed @ same rate • CWmin – lower for higher priority traffic (smaller wait) • Cwmax – also lower for higher priority traffic. Needed to handle time intervals with high congestion • Drawback: • No explicit guarantee of level of differentiation • Only relative timings, and even those are based on random number generators. EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Simulation and results • Ns-2 used with wireless extension by Monarch group • Mix of best effort TCP and better-then-best-effort voice connections • Vary CWmin for both traffic classes • Increasing CWmin significantly delays TCP packets, and only slightly affects voice traffic • Choice of CWmin significantly affects voice, but not best-effort traffice • The above two are confusing, so here is the graph… EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Simulation - graph EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Simulation - robustness • Previous slides prove that differentiation is achievable • Can it be maintained over range of traffic conditions? • Simulate increasing levels of traffic up to channel saturation. • Yes. Delay goes up for both priority levels, but separation is maintained. • TCP is not starved even at saturation point. That’s due to statistical and non-deterministic nature of service separation. EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Simulation – robustness (cont’d) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS – WHY? • You cant exactly plan the wireless channel • If you cant plan – adapt through measurement • Most applications want absolute bounds, not relative EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS – HOW? • Free capacity of the channel may be estimated by measuring idle channel time after DIFS • Remember, nodes are required to sense channel for DIFS before even attempting transmissions in DCF • Algorithms passive, operate in parallel to “real” MAC algorithms • VS and VMAC are related: VS algorithm is actually a combination of Virtual Application, Interface Queue, and a Virtual MAC (VMAC) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS – HOW? (cont’d) • Virtual Application generates packets • Virtual packets timestamped and placed in the queue • Scheduling on wireless channel: much as one would for real channel • Sensing • Backoff • Collision detection (if you would tx a virtual packet on a busy medium) • One difference from the real MAC: packets are not actually transmitted • All aspects of real MAC are emulated (retries, etc) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS – HOW? (cont’d) • “real” node would detect collision when it’s RTS timer would go off without receiving a CTS • Virtual nodes detect collisions if they sense a channel busy, when they are ready to transmit a virtual packet • Virtual nodes enter backoff procedure after the time equal to RTS timer of a real node • MAC delay on no collision: • D = tdefer+ tRTS+ tCTS+ tpacket+ tACK+ 3tSIFS+ 3 tau • tau – maximum propagation delay EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS - Performance • There is an argument which suggests that Virtual MAC is absolutely not resource intensive. (virtual and simulated MAC delay) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS – Performance (cont’d) • Average Delay of a new voice source EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
VMAC and VS – Performance (cont’d) • Delay variation for a new voice source EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Virtual Delay Curves • Another important part of the VS algorithm • Average delay of virtual packets if the VS algorithm generates packets at the rate of Prate • Example of a tradeoff: at the same bitrate • Reduce application delay by increasing packet rate • Yet, higher packet rates load channel more • Applications can make use of this to shape their traffic • Represented by a function d(Prate), where Prate is packet inter-arrival time • Data bitrate is constant Psize * Prate = const EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Virtual Delay Curves (cont’d) • Mobile host or base station runs VS algorithms with several Pratevalues in parallel • From delay values obtained from VS you may construct a delay (and/or delay variance) curve • From the curve a base station or a mobile host can choose optimal packet rate and packet size so that the application experiences minimum delay and delay variance EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Distributed Admission Control • Based on VS and VMAC • Natural location – at the base stations • For better performance, mobiles should have that as well (since radio channel properties may be different in mobiles then in base-stations) • Based on the idea that it’s better to drop then to delay past bound packets belonging to better-then-best-effort traffic • Again, studied through simulation EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Distributed Admission Control (cont’d) • Aggregate rates of traffic in simulation (notice burstiness of TCP) EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Distributed Admission Control (cont’d) • Estimated delays by VS algorithms in base stations • Few base stations stop admitting traffic when load goes way high. Some are in continuous accept. This is due to overlap- ping areas of coverage • Bursty traffic handled well EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Distributed Service-level Management in a Wireless Network • What does this have in common with the rest of the paper? • Topic of admission control and the word “distributed” EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Distributed Service-level Management in a Wireless Network • Mobile moves into the service area, and performs handoff you need to perform admission control. • Base station needs to know SLA • Service Level Agreement • “Contract” between provider/user specifying (for example) what bitrates the user will supply, and what kind of performance the network can guarantee • So, you need to transfer the SLA context somehow • It also seems as if this is the very first time DiffServ actually kicks in. Before, nothing said proposed schemes could be made to work with Int-Serv EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Distributed Service-level Management in a Wireless Network (cont’d) • First time the mobile enters the network make it obtain an SLA from some centralized control agent. • SLA is transferred as a “token” • SLA token is encrypted, and base-stations have keys • Once Mobile Node obtains SLA it will submit it to base stations upon entering the cells. • This way base-stations need not communicate, and are able to perform admission control locally EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
Critique? • Did not see too many things I did not like • Admission control in base-stations – does it contradict DiffServ principles of pushing decisions to the edges? • Seems performance would be impacted by virtual mac although maybe nothing major. If placed in base-stations, there will be much more then 20 (as the graph shows) nodes • They argue its always better to drop packets then delay them for better-then-best-effort traffic. Should this not be left up to applications? Again, maybe contradicts the earlier “robustness” comment? • Same statistical / non-deterministic nature that “does not allow TCP traffic to be starved” may very well starve it in some cases (or near-starve it) • Distributed Service Level Management… does not seem to be very well integrated into the paper EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks
References • The EE206A slides (Spring ’01) • http://www.en.polyu.edu.hk/~cmsp/Events/doc/tutorial_QoS.pdf EE206A – SPRING 2001 – Distributed Control Algorithms for Service Differentiation in Wireless Packet Networks