You are on page 1of 6

Towards a Hierarchical-Dynamic Mechanism for Bandwidth Management in Wireless Mobile Networks

Rafael Baquero S. , Jos G. Rodrguez G. and Sonia Mendoza C. e


Departamento de Computaci n, CINVESTAV o Av. I.P.N. No. 2508, Col. San Pedro Zacatenco M xico, D. F., M xico, 07360 e e Phone: (+5255) 5747-3800 Ext. 3758 Fax: (+5255) 5747-3800 Ext. 3757 rbaquero@computacion.cs.cinvestav.mx, rodriguez@cs.cinvestav.mx, smendoza@cs.cinvestav.mx

AbstractIEEE 802.11 has become a de-facto standard for providing wireless access in many scenarios. One of the characteristics of 802.11 networks is bandwidth variations. These variations have an adverse impact on applications such as voice, video, and biomedical measurements among others. Due to these bandwidth variations, traditional schemes cannot provide QoS guarantees adequately in this type of scenarios. Additionally, current QoS schemes do not provide a means for applications to be aware of each other networking needs. This awareness would allow an application to limit its network use depending on bandwidth availability and the requirements of other applications. In this paper we present a novel Hierarchical-Dynamic Mechanism for Bandwidth Management in Wireless Mobile Networks. This mechanism organizes applications into groups, where each group has a different hierarchy in regard to the rest of the groups.

I. I NTRODUCTION A byproduct of the constant increase in the transistor density of digital integrated circuits has been a constant drop in the price of low powered computing devices [1]. Together with advances in other elds such as battery and communications technologies has led to a boom in the availability of mobile devices. Currently there are no signs that point towards an end to this boom. On the contrary, advances in areas such as ubiquitous computing suggest that the number of mobile wireless capable devices will likely increase. Next Generation Wireless Networks (NGWN) will utilize several different radio access technologies, seamlessly integrated to form one access network [2]. Due to its low cost, high availability, and ease of installation, IEEE 802.11 based networks will, in all likelihood, be a part of any such heterogeneous wireless networking solution. Frequent signal strength variations are part of the normal operation of wireless networks. These variations can be due to different factors such as RF interference, multi-path self interference, signal absorption by foreign objects, etc [3][4]. Certain types of data, such as video, voice, and other, require network parameters to be kept within certain bounds in order to remain useful. One of these constraints is that a minimum bandwidth be available [5]. The increasing wide spread use of

mobile devices, availability of wireless networks and processing capabilities of these devices means that the load placed on these wireless links will also, in all likelihood, increase. However not all types of data have the same degree of importance for a given user. To illustrate this let us make a simple imaginary experiment. Assume that a given user is simultaneously engaged in 2 live video conferences on his 802.11 connected mobile device while concurrently sending several biomedical measurements to a hospital. Furthermore, assume that due to changes in the environment or because of physical displacement of the mobile unit bandwidth drops from 12 Mbps to 1 Mbps. Depending upon the minimum bandwidth requirements for each of these data feeds, there may not be enough available bandwidth to satisfy the requirements of all of them. Current 802.11 implementations will either allow data ows from all sources to compete for the wireless link with equal or different opportunities (802.11e), but all applications will retain some data transmission capabilities. This means that in order to determine its available bandwidth an application must use part of the link bandwidth, even if the part used is below the minimum required bandwidth for this application. If available bandwidth is insufcient to satisfy the minimum requirements of all currently running applications then a compromise must be reached. This compromise consists of preventing some applications from making use of the network in order to allow other applications to satisfy their minimum requirements. Which applications should be prevented from making use of the network and which should be allowed depends upon the user and the nature of each application. For instance, in our previous example with two video conferences and biomedical measurements, it is likely that the user will prefer to sacrice the video conferences in order to keep the biomedical measurements at a minimum quality. On the other hand, if available bandwidth is sufcient, shutting down video while allowing audio and biomedical measurements to proceed could also be a viable alternative, but this is something that must be congured depending on each individual users needs.

The need to give preference to some applications over others means that a user dened hierarchy must be established among applications. We propose a mechanism based on establishing such a hierarchy among network enabled applications. The rest of this article is organized as follows. In section II we describe some works related to our proposed framework. Section III provides a description of our HierarchicalDynamic Mechanism for Bandwidth Management in Wireless Mobile Networks. To test the viability and performance of our mechanism we implemented this mechanism on a Linuxbased netbook-type device. The results of this implementation are described in section IV. Section V describes some future work that will be performed in order to improve this mechanism. Finally section VI provides the conclusions regarding the development of our Hierarchical-Dynamic Mechanism for Bandwidth Management in Wireless Mobile Networks. II. R ELATED W ORK Quality of Service in wireless systems and modifying the behavior of computer programs depending on resource availability have been the subject of ample study. In the following paragraphs we will describe some of the work carried out in this eld. A. IEEE 802.11 Due to the extreme ratio between transmitted and received signal power on a wireless medium it is not practical to attempt to detect collisions. Therefore 802.11 Medium Access Control seeks to avoid collisions instead of detecting them as is done in standard Ethernet. This is achieved through a carefully orchestrated choreography based on the transmission of data followed by an idle time period known as an Inter Frame Spacing (IFS) time interval. The original 802.11 dened three IFS intervals (shortest rst): Short Inter Frame Spacing (SIFS), Point Coordination Function Inter Frame Spacing (PIFS), and Distributed Coordination Function Inter Frame Spacing (DIFS). The specic duration of each o these intervals is dependent upon the particular physical (PHY) layer employed. Prior to the ratication of the 802.11e amendment, 802.11 wireless networks employed three Medium Access Control (MAC) mechanisms: Distributed Coordination Function (DCF) for contention based access, Point Coordination Function (PCF) for contention free access, and Request to Send/ Clear to Send (RTS/CTS). These MAC protocols do not provide a means of differentiating trafc streams and, as a result, can not provide special considerations to trafc with requirements in bandwidth, delay, jitter, and packet loss. As a rst step towards solving these issues IEEE 802.11-2007 introduced two new MAC mechanisms: Enhanced Distributed Channel Access and Hybrid Coordination Function Controlled Channel Access (HCCA) [3][4][6]. EDCA. 802.11e introduces up to eight priority trafc classes which map directly to the differentiated services code point (DSCP). These trafc classes are introduced through four Access Categories (AC) which can support eight User Priorities (UP). Each AC is an enhanced variant of the DCF which

contends for transmission opportunities (TXOPs). A TXOP is a time interval when a particular station has the right to use the wireless medium WM. An AC with a higher priority selects a value for its backoff timer from a smaller range than an AC with lower priority. Additionally, a new IFS period, called an Arbitration Inter-Frame Space (AIFS), is introduced for each AC instead of the DIFS. The AIFS is at least DIFS and can be enlarged individually for each AC. In this manner each AC behaves like a virtual station within the STA contending for the medium in a form analogous to DCF. HCCA. HCF-controlled channel access uses a QoS-aware centralized coordinator called a hybrid coordinator (HC). HCF is similar to PCF and provides contention free access to the WM. The HC has knowledge of the amounts of pending trafc belonging to different Trafc Streams (TS) and/or Trafc Categories (TC) in the QoS STAs (QSTAs) which allows it to allocate TXOPs accordingly. B. Control Theory for Resource Management Li and Nadherdst used adaptable and fuzzy control algorithms for resource management [7][8]. In their proposal an application is divided into a set of functional components called Target Tasks. A state space representation of the Target Task is obtained and current values for the states are estimated with the use of an observer component called an Observation Task. The rate at which resources are requested by the Target Task is controlled by means of an algorithm implemented in an Adaptation Task. One of the requirements set for their system is a fair resource allocation, however fairness is not always a desirable feature mentioned before. In [9] Hellerstein et al describe control theoretical concepts applied to computing systems and illustrate the concepts introduced by applying different control objectives to the Apache HTTP Server and IBM Lotus Domino Server among others. C. DiffServ Vergados et al used DiffServ for the transmission of biomedical measurements over wireless links in mobile emergency telemedicine systems [10]. Their paper provides, among other things, a description of the bandwidth requirements of different types of biosignals. III. H IERARCHICAL -DYNAMIC M ECHANISM D ESCRIPTION As mentioned before our Hierarchical-Dynamic Mechanism for Bandwidth Management in Wireless Mobile Networks allows users to establish a network usage hierarchy among applications. However several applications may be of equal importance to the user and therefore may be considered to form a group, in such a way that if there is not enough bandwidth available for the entire group of applications then the entire group should be prevented from using the network. To provide this functionality our mechanism includes the use of an applications groups stack, which allows users to group applications while simultaneously establishing a hierarchy among the groups (see Figure 1). When bandwidth becomes

App 1.1

App 1.2

...

App 1.n

Application Stack Layer 1 . . .

Link Supervisor

Wireless Link App k.1 App k.2 ... App k.m System Manager Bandwidth Monitor

Application Stack Layer k

Feedback

System Administration

Fig. 1.

Mechanism Diagram

scarce, lower hierarchy groups are prevented from using the network, thus freeing resources for higher hierarchy groups. The number of groups prevented from using the network depends upon the currently available bandwidth. On the other hand, as available bandwidth increases lower hierarchy groups are once again allowed to make use of the network. A Two-Point Control or On-Off Control scheme is a simple type of control system where the actuator is either on full force or off [11]. Our mechanism employs such a control scheme and is based on switching on or off applications use of the network depending upon bandwidth availability in the wireless link. This type of control scheme is one of the easiest to implement and requires fewer computational resources when compared to other more sophisticated control schemes. The description of our mechanism is carried out in three stages. First we dene some terms which are necessary to understand the components that form our mechanism and to understand its operation. Afterwards we show the components that constitute our mechanism and nally we provide a description of how these components interact with each other. A. Denitions

2) Application Permission Update List (APUL). Contains an updated version of the CAPL. Total Available Bandwidth (TAB). The currently available bandwidth in the wireless link. Application Minimum Required Bandwidth (AMRB). This is the minimum bandwidth required by a single NA for correct operation. Total Minimum Required Bandwidth (TMRB). The TMRB is the sum of the AMRBs of a subset of the Networking Applications List. The subset of applications may be improper. Layer i Minimum Required Bandwidth (LiMRB). This is the TMRB of the subset formed by the NAs of Application Stack Layer i. Station (STA). Following IEEE Std 802.11 denition a STA is any device that contains an IEEE 802.11conformant medium access control (MAC) and physical layer (PHY) interface to the wireless medium (WM) [6]. Access Point (AP). Any entity that has STA functionality and provides access to the distribution services, via the wireless medium (WM) for associated STAs [6].

B. Mechanism Components Our Hierarchical-Dynamic Mechanism for Bandwidth Management in Wireless Mobile Networks is composed of the following modules: Networking Application Groups Stack (NAGS). The NAGS allows to hierarchically group NAs into layers of equal importance. Each group of NAs becomes a layer of the stack. This scheme allows the user both to prioritize applications and simultaneously to group applications in such a manner that, if there is enough bandwidth available for the entire layer, all NAs will be allowed to make use of the network and if there is not enough bandwidth for the

Networking Application (NA). An application that requires use of the network to communicate with a remote counterpart. Network Permission Status (NPS). Indicates whether an application is denied or allowed network use. Networking Applications List (NAL). This is a list of the NAs running at any given time. Two further lists are derived from this list: 1) Current Application Permission List (CAPL). This is a list of NAs currently being supervised and the NPS of each application.

entire group, all of the NAs in the layer will be prevented from using the wireless link. A layer can of course consist of a single NA. Bandwidth Monitor (BM). As its name implies, the BM constantly monitors TAB. System Manager (SM). The SM maintains an updated CAPL both by supervising the currently running NAs and by establishing the NPS of each NAGS layer based upon the TAB. Updates are delivered to the Feedback and Link Supervisor modules by means of an APUL. Link Supervisor (LS) NAs that have been designed to operate with the Hierarchical-Dynamic Mechanism are notied when to stop or resume network link usage by means of feedback. To allow network use management of NAs that have not been designed to operate with the system, it is necessary to have a component external to the application that allows or prevents network use by these Networking Applications. This function is performed by the Link Supervisor. Feedback This module noties applications when they must stop transmission and when to restart their network use. The use of feedback allows NAs to perform tasks such as notifying remote counter parts before ceasing their transmissions. User Preferences (UP) The UP module allows users to assign NAs to layers. Now that we have described the components of our Hierarchical-Dynamic Mechanism for Bandwidth Management in Wireless Mobile Networks we need to describe how these components interact with each other. C. Component Interaction The central part of our mechanism is the System Manager module. The System Manager module performs the following two basic tasks: 1) Constantly update the NAL. The means by which the SM obtains the NAL is dependent upon the operating system and how the mechanism is implemented on a particular architecture and will therefore not be detailed here. However, since multitasking operating systems need to keep track of the applications currently being executed it is a reasonable assumption that such a list can be assembled. 2) Adjust the NPS of each layer of NAs depending upon the TAB and on the current TMRB. The System Manager periodically obtains a list of all currently running applications on the STA and updates the NAL accordingly. The AMRB for each NA is obtained by one of two means: 1) For applications that have been designed to work with the mechanism. The NA dynamically noties the SM module of its current AMRB. The AMRB need not remain xed, but can be updated throughout the execution of the NA. 2) For applications that have not been designed to work with the mechanism. The AMRB is set by the user

through the UP module. This value can be updated by the user at any moment. TAB is obtained by the SM through the Bandwidth Monitor. Based upon the TAB, the SM determines which layers of the NAGS can be allowed to use the wireless link in such a way that the sum of the LiMRBs of the layers is less than or equal to the TAB. Once the layers of the NSGS that will be allowed network use is determined the APUL is dened and passed to the Feedback and LS modules. Assuming the NAGS has a total of k layers, the NAs that will have their NPS set to On is determined in the following way: 1) 2) 3) 4) 5) RequiredBandwidth := 0. NPS := Off for all NAs. i := 1. RequiredBandwidth := RequiredBandwidth + LiMRB. if RequiredBandwidth TAB then NPS := On for every NA in NAGS Layer i, else end. 6) i++ 7) if i k goto 4, else end. Once the APUL has been dened through the previous procedure, it is passed to the Feedback and LS modules. The Feedback module compares the APUL to its CAPL and noties each NA whose NPS has been toggled that it must shutdown its network transmission or that it can recommence network use. If a NA must shutdown its network use, the LS module waits for a xed time delay and afterwards proceeds to stop the NA from making any further network use. The purpose of this delay is allowing a NA to cease network use gracefully when notied to do so by the Feedback module. On the other hand, if network use by an NA can be recommenced, then the LS immediately allows network use by the NA. After the Feedbak and LS modules have made their respective notications and wireless link supervision adjustments they update their local CAPLs. Finally, the UP module allows users to assign applications to a NAGS layer and dene the AMRB for applications that have not been designed to be used with the mechanism. To illustrate the interaction of the modules let us consider a hypothetical usage scenario. Assume that a mobile station (STA) is connected to an access point (AP). Initially STA and AP are near each other with no obstacles between them and the total available bandwidth is 54 Mbps. Several Networking Applications are running simultaneously on the STA on a three layer Networking Applications Group Stack. Layer 1 Minimum Required Bandwidth is 0.5 Mbps, Layer 2 Minimum Required Bandwidth is 1.5 Mbps, and Layer 3 Minimum Required Bandwidth is 2 Mbps. The STA is required to move near the edge of the coverage area where Total Available Bandwidth will drop to 1 Mbps. Afterwards the STA moves once again to the vicinity of the AP and bandwidth climbs to 54 Mbps. In the previous scenario, as long as TAB remains above 4 Mbps all NAs are allowed to make network use without any type of restrictions, in other words the mechanism is transparent to the NAs. When bandwidth drops below 4 Mbps,

the System Manager module determines that there is not enough TAB to satisfy the demands of all the NAs, but there is enough to satisfy the demands of the NAs in Layers 1 and 2. Therefore the NPS of Layer 3 applications is set to Off in the Application Permission Update List, while the NPS of Layer 1 and 2 NAs is set to On. The APUL is passed to the Feedback and Link Supervisor modules so that Layer 3 NAs are prevented from making any further network use. Notice that, at this point, the available bandwidth for Layer 1 and 2 NAs is 4 Mbps. This is above the TMRB for all the applications from Layers 1 and 2, which allows them to improve the quality of their transmission due to the bandwidth surplus. As the STA moves further away from the AP NAs from Layers 1 and 2 are allowed to make use of the network until TAB drops bellow 2 Mbps. At this stage the SM module once again determines that TAB is not enough to satisfy the TMRB of Layer 1 and 2 NAs. Therefore the NPS of Layer 2 NAs is toggled to Off in the APUL and the list is passed to the Feedback and LS modules to shutdown network use by Layer 2 NAs. Notice again how the bandwidth available to Layer 1 NAs is increased which allows them to improve the quality of their transmissions. During the return trip the reverse process occurs. When TAB raises to 2 Mbps the SM detects that the available bandwidth is enough to satisfy the requirements of Layer 1 and Layer 2 NAs which results in the NPS of Layer 2 NAs being toggled to On. This results in the bandwidth available to Layer 1 NAs dropping which may force them to reduce the quality of their transmission but it allows Layer 2 NAs to make use of the network. As the STA further approaches the AP and TAB raises to 4 Mbps the NPS of Layer 3 NAs is toggled to On allowing them to make use of the network. Once again the bandwidth available to Layer 1 and 2 NAs is reduced but in exchange Layer 3 NAs are allowed to make use of the network. IV. T EST P LATFORM To test the mechanism functionality an experimental partial implementation was carried out. The purpose of this implementation was not only to test the mechanism but also to provide a test bed for future development of our HierarchicalDynamic Mechanism for Bandwidth Management in Wireless Mobile Networks. The rst step in the implementation was to select the hardware to be used. The hardware had to satisfy the following the following requirements: WiFi support. Easily transportable device. In order to carry out tests which involved physical location changes, the device selected would have to be easily transported. Battery powered with reasonable battery duration. Availability of a modiable OS that could be modied. Ease of OS installation. These criteria quickly narrowed the choice to a netbook type personal computer.

The next stage was the selection of an operating system. Selecting an operating system appropriate for the mechanism implementation was a far from trivial task. There is a wide variety of operating systems, both experimental and stable, each with its own benets and drawbacks. The basic criteria for the test bed operating system selection was the following: Wireless networking support. Source code available. Available version for installation in a netbook. Stable and well tested. Well documented. Customizable to a bare bones minimal system to avoid applications, other than our own, from using sockets for IPC. After considering the advantages and disadvantages of various operating systems Linux was selected as testbed. In order to have full control of the programs installed on our test platform and to avoid any customization made by distribution developers our test platform was built from source following the procedure outlined in the Linux From Scratch project [12]. Once the test platform had been developed, we proceeded to make a simple implementation of our Hierarchical-Dynamic Mechanism. The following section describes this implementation. V. T EST I MPLEMENTATION To test the behavior of our mechanism we required a means to place load on the wireless link and to measure the throughput of several simultaneously running NAs. In order to do this we developed a simple client and server pair of programs which measure available bandwidth by sending test data. The client NA can communicate with the SM and Feedback modules using sockets to notify its bandwidth requirements and to obtain changes to its NPS. The client NA constantly updates a text le reporting measured bandwidth. With a set of NAs developed, the components of our Hierarchical-Dynamic Mechanism were implemented as follows: Networking Applications Group Stack. The NAGS is dened by means of a plain text CSV conguration le, the Application Stack Denition File (ASDF). Each entry in the ASDF is a record used to describe an NA and its requirements. The rst eld indicates the name of the NA, the next eld is used to indicate the layer in the NAGS to which the NA is assigned, and nally the last eld sets the AMRB of the NA. Bandwidth Monitor. Wireless Extension is an API that allows applications to obtain statistics about the wireless link in Linux systems [13]. The BM employs this API to obtain the speed of the wireless link and passes this information to the SM. A good starting point to use the Wireless Extension API is the iwcong program, part of the Wireless Tools package. System Manager. Upon start, the SM rst reads the ASDF and then enters a loop in which it performs the following tasks:

1) Obtains the currently running process list and creates the NAL by comparing the process list to the entries of the ASDF. 2) Forms the layers of the NAGS. 3) Determines the NPS of each application based upon the TAB reported by the BM module and creates the APUL. The APUL also indicates if the NA is feedback-enabled. This information is required by the Feedback and LS modules. 4) Compares the CAPL to the APUL and, if changes have occurred, sends the APUL to the Feedback and LS modules. Feedback Monitor. Upon reception of the APUL the Feedback module compares this list to its CAPL. If the NPS of any feedback-enabled NA has changed, the NA is notied of its current NPS. To allow coordination with the LS, a congurable time delay is employed when notifying NAs that their NPS has been toggled to On. Link Supervisor. The LS module consists mainly of a loop which reads the bandwidth usage output les of the NAs to determine if an NA is making use of the network. Upon reception of an APUL the LS compares this list to its CAPL. If the NPS of a feedback-enabled NA has been toggled to Off, the LS waits a congurable delay and if the NA has not ceased its network use it will be paused by means of an IPC STOP signal. Non feedbackenabled NAs are paused immediately. On the other hand, if the NPS of an NA has been toggled to On it will immediately receive a CONT signal to resume its network transmission. VI. C ONCLUSIONS AND F UTURE W ORK

ACKNOWLEDGMENT The work of Rafael Baquero S. is supported by CONACyT, M xico. e R EFERENCES


[1] Mike Kuniavsky, Smart Things, Morgan Kaufman, 2010. [2] Nidal Nasser and Tarek Bajaoui, Handoff Management in Next Genetation Wireless Networks in Nicola Cranley and Liam Murphy Eds., Handbook of Research on Wireless Multimedia. Quality of Sevice and Solutions, IGI Global, 2009. [3] Anand R. Prasad and Neeli R. Prasad, 802.11 WLANs and IP Networking. Security, QoS, and Mobility, Artech House, 2005. [4] Tom Carpenter, CWNA. Certied Wireless Network Administrator Ofcial Study Guide (4th Ed.) Exam PW0-100, McGraw-Hill, 2008. [5] Mario Marchese, QoS Over Heterogeneous Wireless Networks, Wiley, 2007. [6] IEEE Computer Society, IEEE Std 802.11 - 2007. IEEE Standard for Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Specic requirements. Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specications, 2007. [7] Baochun Li and Klara Nadrstedt, A Control Theoretical Model for Quality of Service Adaptations, 6th International Workshop on Quality of Service (IWQoS 98), 1998. [8] Baochun Li and Klara Nahrstedt, A Control-Based Middleware Framework for Quality of Service Adaptations, IEEE Journal on Selected Areas in Communications, 1999. [9] Joseph L. Hellerstein, Yixin Diao, Sujay Parekh and Dawn M. Tilbury, Feedback Control in Computing Systems, Wiley, 2004. [10] Dimitrios J. Vergados, Dimitrios D. Vergados, Ilias Maglogiannis, Applying Wireless DiffServ for QoS Provisioning in Mobile Emergency Telemedicine, Proceedings IEEE GLOBECOM 2006. [11] Christopher T. Kilian, Modern Control Technology: Components and Systems (2nd Ed.), Delmar Thomson Learning, 2000. [12] Linux From Scratch. Retrieved March 25, 2011 from http://www.linuxfromscratch.org [13] Wireless Tools for Linux. Retrieved March 25, 2011 from http://www.hpl.hp.com/personal/Jean Tourrilhes/Linux/Tools.html

In this work we proposed a novel mechanism for wireless link management in varying bandwidth type networks. A test platform was set up to allow further development and a basic implementation of the proposed mechanism was performed. There are many feedback schemes that can be employed to provide applications with a collective awareness of networking resource requirements and networking resource availability. For instance, instead of a Full-Cut feedback scheme the amount of bandwidth employed by lower layer applications could be limited instead of completely cutoff while simultaneously notifying applications of their allocated bandwidth by means of feedback. This would allow an application to choose between lowering the quality of their transmissions or shutting down transmission completely depending upon their assigned bandwidth. On the other hand, in order to make a more efcient use of the wireless link, inbound trafc must also be limited. This means that a component must be added to the AP in order to limit or prevent the inbound trafc of applications that have been cutoff from entering the wireless link. Finally, a remote component which allows applications to coordinate their network transmissions with local applications depending on their current network resource availability could also represent an improvement of the mechanism.

You might also like