Keywords

1 Introduction

Worldwide Interoperability for microwave access is IEEE 802.16 standard popularized by WiMAX forum under the name WiMAX [1]. It is broadband wireless technology which by virtue of its technical specification is gaining popularity among end users as it provides support for number of real time applications. The popularity of mobile phones has put lot of pressure on today’s wireless networks to provide required quality of service. The demand for number of applications is increasing day by day while amount of resources remains limited. Distribution of resources in such networks is always a challenging task as growing quality of service demands of real time applications are always difficult to met. The increase in number of real time applications sometimes makes low priority non real time classes starve for resources.

Traffic in WiMAX network is categorized into five different service classes namely unsolicited grant service (UGS), extended real time polling service (ertPS), real time polling service (rtPS), non real time polling service (nrtPS) and best effort (BE). IEEE 802.16 standard specifies only priority to these classes and does not specify any fixed mechanism for allocation of resources to these. Equipment manufacturers are free to design and implement their own algorithms [2]. Increasing number of multimedia applications makes resource allocation a very complex and tedious process as real time applications are always hungry for more and more resources. It becomes very intricate to maintain relatively good quality of service levels for all sorts of traffic classes and situation gets more complex with rise in number of packets in network. In order to maintain good quality of system performance, allocation of resources shall be immediate and dynamic. This requires scheduling system to be intelligent and powerful so that it can adapt itself to incoming traffic pattern of various applications. This paper discusses performance of one such system developed using fuzzy logic. The fuzzy logic system works according to changes in traffic patterns of incoming traffic and adapts itself to these changes so that appreciable performance level can be maintained for all service classes.

Fuzzy logic is useful where information is vague and unclear and resource allocation process in WiMAX suits application of fuzzy logic to it. Design of intelligent systems for WiMAX networks has started gaining popularity very shortly as number of papers in this direction is still limited. Few of these studies are available at [311]. Fuzzy logic has been employed by Bchini et al. [12] and Simon et al. [3] in handover algorithms. Use of fuzzy logic for implementing inter-class scheduler for 802.16 networks had been done by Sadri and Mohamadi [5]. Authors had defined fuzzy term sets according to two variables dqrt which means latency for real time applications and tqnrt meaning throughput for non real time applications. Shuaibu et al. [4] has developed intelligent call admission control (CAC) in admitting traffics into WiMAX. Alsahag et al. [6] had utilized uncertainty principles of fuzzy logic to modify deficit round robin algorithm to work dynamically on the basis of approaching deadlines. The Fuzzy based scheduler dynamically updates bandwidth requirement by different service classes according to their priorities, latency and throughput by adjusting the weights of respective flows. Similar studies were also given by Hedayati et al. [7], Seo et al. [8] and Akashdeep and Kahlon [9]. Authors of current study has already implemented such study that works on fuzzy logic [9] and neural network [10]. The study works on two input parameters and outputs a weight value to be used for bandwidth allocation. This paper presents an extension of that approach that utilizes values of instantaneous queue length as an additional variable.

2 Working of System

WiMAX implement a request grant mechanism for resource allocation. Different SS connected to BS request resources from BS and these requests are classified into different queues by classifier of IEEE 8021.6. The scheduler at BS listens to these request and serves these queues by performing two different functions:- allocating resources to different request made by SS and transmission of data to different destinations. BS scheduler component serves these requests on per connection ID basis by taking into consideration available resources and request made by that particular connection. Presently IEEE 802.16 specify priority order for various traffic classes and does not specify any algorithms for resource allocation among these classes. Real time classes have high priority as a result of which low priority non real time classes tend to suffer increased delays in resource allocation process and may sometimes be malnourished. This can be improved by devising strategy that could adapt itself to changing requirements of incoming traffic.

The proposed system is motivated by theories of fuzzy logic where fuzzy logic can work to serves queues belonging to different scheduling services using its uncertainty principles. The designed system works as component of base station and works on three input and one output variables. The input variables are taken as:

Latency for real time applications, throughput for non real time applications and queue length share of real and non real time applications considered together. The output of fuzzy system is taken as weight of queues serving real time traffic. Membership functions for these variables have been defined utilizing knowledge of domain expert as shown in Fig. 1. Five different linguistic levels are defined for first input variable and output variables. The membership function are defined as Negative Big (NB), negative small (NS), Zero (Z), Positive small (PS) and positive big (PB). Three membership functions are considered for second and third input variable. The dynamism of variables is taken in range between 0 and 1. The rule base consists of 45 rules which have been framed considering qualities of input variables into consideration. The rule base has been defined considering the nature and dynamism of input traffic and is considered to be sufficiently large.

Fig. 1
figure 1

Structure of fuzzy logic based system for resource allocation

The initial weight for any flow (i) is calculated from the following equation

$$ w_{i} = \frac{{R_{{{ \hbox{min} }(i)}} }}{{\mathop \sum \nolimits_{i = 0}^{n} R_{{{ \hbox{min} }(i)}} }} $$
(1)

where \( {\text{R}}_{{{ \hbox{min} }({\text{i}})}} \) is the minimum reserved rate for flow (i).

$$ \sum\limits_{{{\text{i}} = 0}}^{\text{n}} {{\text{w}}_{\text{i}} = 1\quad 0.001 \le {\text{w}}_{\text{i}} \le 1} $$
(2)

All flows shall satisfy the constraint of Eq. (2). Equation (2) enables system to allocate minimum value of bandwidth to all flows as weights of queues cannot be zero. Whenever new bandwidth request is received by BS, BS calls fuzzy inference system. The fuzzy system reads values of three input variables, fuzzifies these values and inputs it to the fuzzy scheduler component at BS. Fuzzy reasoning is thereafter applied using fuzzy rulebase and a value in terms of linguistic levels is outputted. At last, de-fuzzification of output value is done to get final crisp value for weight. De-fuzzification is performed using centre of gravity method and inference is applied using Mamdami’s method. The outputted value is taken as weight for real time traffic. The bandwidth allocation to different queues is made on basis of weight assigned to that queue on the basis of equation

$$ B_{real} = S_{i} \times \left( {\frac{{w_{i} }}{{\mathop \sum \nolimits_{i = 1}^{n} w_{i} }}} \right) \times \left( {\frac{FrameDuration}{Maximum\,Latency}} \right) $$
(3)

where \( S_{i} \) is the number of slots requested for that flow.

3 Performance Analysis of Fuzzy Adaptive Method

The proposed solution has been tested on Qualnet Developer 5.2. The proposed scheme is tested by designing a network consisting of one BS and a number of SS. Experiments are conducted to check whether proposed system was able to provide desired quality of service levels to traffic classes. Analysis of performance is done on basis of parameters like delay, throughput and jitter. Simulation is aimed at making sure that proposed scheme is able to provide a relative good QoS levels to all traffic classes. Performance is measured by varying number of SS in ratio of 1:1:1:3:4 for example when total number of SS was 60, the number of UGS, ertPS and rtPS was taken as 6 while number of nrtPS connections was 18 and number of BE connections was 24. Results presented in this section justifies that proposed system was able to provide enough bandwidth opportunities to satisfy increasing requirements of different types of traffic.

Figure 2 shows average delay incurred by various services in our fuzzy based inference system. It is evident from figure that delay of UGS and ertPS classes is almost bounded as required by IEEE 802.16 standard. This comes from the fact that scheduler offers higher precedence to UGS and ertPS classes and makes periodic allocations to these classes. Delay of rtPS class shows linear increase till number of SS is about 65 and thereafter growth is almost exponential. This may be attributed to increase in traffic of UGS and ertPS classes which are more prioritized. Delays for nrtPS and BE service classes shows an increasing trend as number of SS increases this is because real time service flows are being offered more share of bandwidth. The delay for BE is better as compared to delay for nrtPS class till a limited number of SS, this is because scheduler was able to provide residual bandwidth opportunities to BE connections. Delay for nrtPS eventually outperforms BE service class as number of connections increases. Nevertheless scheduler was able to avoid starvation of BE flows.

Fig. 2
figure 2

Delay of various service classes

Figure 3 shows throughput of different service classes with an increase in number of SS. Throughput increases as number of connections increase which is expected. Higher throughput for UGS and ertPS is evident as their increasing demand forces system to allocate more amount of bandwidth. Throughput for UGS is almost constant as BS allocates slots to UGS class after fixed interval. Throughput for ertPS shows a small decline as number of SS increase beyond 75, this may be attributed to an increase in number of UGS connections which has high priority. Throughput for rtPS, nrtPS and BE remains almost neck to neck till number of SS are limited(30) as requirements for all classes are getting met thereafter scheduler starts to assign more priority to rtPS as compared to nrtPS and BE in order to satisfy its latency requirements. The throughput for BE class is minimum as there are no QoS requirement for BE class.

Fig. 3
figure 3

Throughput of various service classes

Figure 4 shows plot of average jitter for our fuzzy based method as function of number of SS. The average jitter for UGS is very small and shows a marginal rise with increase in number of SS. This is because of increase in amount of over all traffic in network and it shows that even UGS class may have packet losses. Jitter of ertPS and rtPS is relatively good considering amount of load being handled by system. Jitter in case of nrtPS and BE is high as expected because of dual reason of increase in overall traffic and their low priorities. However it is tolerable as both these classes are independent of delay variations.

Fig. 4
figure 4

Jitter observed by various service classes

The fuzzy system was also compared with number of algorithms like WFQ, WRR and EDF. Figure 5 shows that fuzzy system exhibits a significant improvement in terms of throughput observed for various service classes followed by EDF. The reason was that fuzzy system shows a quick response for real time traffic and is also able to provide increasing number of scheduling opportunities for non real time traffic when there are not stringent requirements from real time traffic. It results in overall throughput increase for the system which is not the case with other algorithms. These algorithms tend to starve low priority nrtPS and BE traffic classes and degrade their performance levels.

Fig. 5
figure 5

Throughput comparison of fuzzy system with WFQ, EDF and WRR

4 Conclusion and Future Scope

The above study proposed an application of fuzzy logic for allocation of resources in WiMAX networks. The approach is adaptive and resource allocation decision is taken by considering values of three input variables extracted from incoming traffic. Results indicate that system was able to provide desired quality of service levels to all traffic classes. The approach was tested under conditions of heavy load but performance of network was still quite appreciable. As future scope, the performance of the system needs to be justified by comparing with set practices in related field. The system shall also be tested for performance by deliberately increasing effects of higher priority traffic and observing responses of low order traffic classes.