{'fraction_non_alphanumeric': 0.028490503165611462, 'fraction_numerical': 0.01166277907364212, 'mean_word_length': 4.6525423728813555, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Implementation of Delay Assurance Service for Voice Applications in Wireless LANs

IEEE 802.11 has become de facto standard for wireless LANs. Although it was originally designed for data communication, emergence of Voice over IP (VoIP) has made it attractive for voice applications. But voice applications require delay guarantee. We have implemented Dynamic Class Selection (DCS) mechanism in Neighborhood Proportional Delay Differentiation (NPDD) (proposed in [1]) architecture to provide delay assurance in IEEE 802.11 networks. But we found that DCS is not suitable for voice applications which require tight delay bound. Hence, we propose two Adaptive Class Selection (ACS) mechanisms to provide delay assurances to voice flows. However, delay assurance at all nodes within a LAN cannot be provided with ACS or DCS. So we propose Measurement based Distributed Call Admission Control (MDAC) mechanism to provide delay assurances for voice traffic at all nodes. Our experimental results show that ACS and MDAC perform much better than DCS for voice flows at all loads. I. I NTRODUCTION The use of wireless devices like Personal Digital Assistants (PDAs), Smart Phones and Laptops based on IEEE 802.11 [2] have become commonplace. Although IEEE 802.11 WLAN was originally designed for providing wireless access for data traffic, the emergence of Voice over IP (VoIP) has made it attractive for wireless voice access through IP network. But VoIP applications require QoS from the network in terms of delay, jitter and packet loss. Point Coordination Function (PCF) in IEEE 802.11 provides real time support in infrastructure mode. But most of the existing IEEE 802.11 solutions do not support PCF. IEEE 802.11 DCF mode does not provide QoS for real time applications. Although IEEE 802.11e can support QoS, this MAC is yet to be standardized. Hence there is a need to provide QoS in IEEE 802.11 based WLANs to support VoIP applications. Several MAC protocols have been proposed to provide QoS in wireless LANs. These are broadly classified into two categories: centralized and distributed. There are centralized scheduling algorithms [3], [4], [5] where a designated host (e.g. Access Point) coordinates the access to the wireless medium. In distributed protocols, all nodes contend for the medium and can transmit the packet only if it does not hear another transmission. Unfair medium access can occur in distributed protocols under certain circumstances [6], [7]. A decentralized scheme called Blackburstwas proposed in [8] which minimizes the delay for real time traffic. To access the medium a station sends a black burst by jamming the channel for a period of time. The length of the black burst is determined by the time the station has been waiting to access the medium. Vaidya et al. proposed a QoS scheme in terms of fairness in distributed fashion by allocating bandwidth in proportion to theweightsof the flows sharing the channel [9]. Hang Su et al. proposed self-adjusting contention window algorithm which modifies the back-off window based on the number of packets transmitted and dropped [10]. The main problem of the above mechanisms is that they would require changes in the MAC firmware. This means that users have to buy new network cards with the modified firmware. This, obviously is an impractical proposition. A more practical solution is to have a QoS scheme which can work on top of the standard IEEE 802.11 MAC layer. Neighborhood Proportional Delay Differentiation (NPDD) is a mechanism that can work on top of any MAC protocol in a wireless device [1]. In NPDD, traffic is put into different classes. Each class is assigned a delay differentiation parameter (DDP). The average delay of packets in different classes is in proportion to their respective DDPs. NPDD scheduler uses Waiting Time Priority (WTP) algorithm [11]. If only NPDD is used, then a flow having a delay bound may not fit into a particular class properly. If the flow is assigned a higher priority, then the actual delay suffered may be much below the delay bound. On the other hand, if it is assigned the next lower class, the delay may be more than the delay bound. Hence Dynamic Class Selection (DCS) is usually employed along with NPDD. DCS runs a periodic decision process to determine if class of a flow needs to be changed. Changing class of a flow makes better utilization of bandwidth while meeting the flow’s delay bound. We implemented the NPDD and DCS mechanism in linux kernel to provide QoS to voice applications. But during our experiment we noticed that DCS could not provide required QoS to high priority flow at a high load condition. The reason is that DCS moves a flow to higher class without considering how the QoS of the higher class will get affected after the move. Hence we devised an Adaptive Class Selection (ACS) mechanism that addresses the above drawback of DCS. We have also proposed and implemented a simple measurement based distributed Call Admission Control mechanism to provide QoS assurance at all nodes. II. PROPORTIONALDELAY DIFFERENTIATION In this section we provide a brief overview of two different Proportional Delay Differentiation (PDD) paradigms, since our work is based on it. For more details, readers can refer to [1]. The PDD service model supports N classes relatively ordered in per-hop packet queueing delays at any node k. At nodek, the packets with higher priority experience low delay than packets with lower priority. The proportionality between delays of different classes can be tuned by the network designer with a set of class delay differentiation parameters (DDP). Let 1 = 1 > 2 > ::: > N > 0 be the DDPs defined by the network designer for N classes. Let dki be the average queueing delay of class i packets at nodek. Then the normalized average queueing delay ~ dki for all classes at node k hould be equal, where the normalized average queueing delay of flow i at nodek is given by ~ dki = dki = i: (1) At a PDD node the following holds