Abstract

The proportional loss rate differentiation (PLD) model was proposed to provide controllable and predictable loss rate for different classes of wired network connections. However, these algorithms cannot be directly applied to wireless networks, because of the location-dependent and time-varying wireless channel capacity. This paper proposes a novel packet dropper for fuzzy controlling of the proportional loss rate differentiation in a wireless network with multistate channel. The proposed dropper, fuzzy proportional loss rate dropper (FPLR), prefers to drop the small packets destined to a poor condition channel to improve the network performance. The loss rate debts of the poor channel will be compensated later to keep PLD. From simulation results, FPLR does achieve accurate loss rate proportion, lower queuing delay and loss rate, and higher throughput, compared with other methods in the wireless environment.

1. Introduction

The Internet becomes an important infrastructure of global communication. However, many multimedia applications require some guarantee of the quality of services (QoS). Thus the best-effort service is not suitable to such applications because it cannot promise any guarantee about packet loss, delay, or jitter. The Internet Engineering Task Force (IETF) first proposed the Integrated Service (IntServ) as a QoS architecture for IP networks [1]. Because IntServ suffers from the scalability problem, the Differentiated Service (DiffServ) [2] was then proposed. Diffserv has proceeded in two directions—absolute differentiated service and relative differentiated service. The absolute differentiated service ensures that an admitted user can enjoy certain and steady performance, while the relative differentiated service ensures that users with a higher service class experience better performance than the users with a lower one. The proportional differentiation model, a branch of relative service differentiation, has received a lot of attention because it can perform the controllable and predictable differentiation [3, 4]. That is, the proportional differentiation model offers the network manager a means of varying quality spacing between service classes according to the given pricing or policy criteria and ensures that the differentiation between classes is consistent in any measured timescale.

The proportional services can be differentiated according to different performance metrics, such as throughput, delay, loss rate, or jitter. When adopting packet loss rate as the performance metric, the proportional differentiation model is referred to as the proportional loss rate differentiation (PLD) model. To provide PLD, some methods, such as Proportional Loss Rate (PLR) [5], Average Drop Distance (ADD) [6], Debt Aware [7], Weighted Random Early Detection (WRED) [8], Weight Simple Adaptive Proportion (WSAP) [9], Hop-count Probabilistic Packet Dropper (HPPD) [10], and RED with maximum drop probability adjustment, were proposed.

As wireless technologies rapidly advance and lightweight portable computing devices become popular, wireless networks have become pervasive. Accordingly, the PLD model is also urgently required for wireless environments, just as it was for wired networks. However, the above approaches designed in a wired network are not applicable in a wireless environment, which has some distinct characteristics, such as high error rate, location-dependent and time-varying capacity, and scarce bandwidth [11].

In a wireless network with a multirate channel, when many packets encountering a good channel are dropped and many packets encountering a poor channel are kept in the buffer, the system performance becomes poor because most packets are transmitted in a poor-capacity channel. Actually, dropping the packet having the poorest channel will cause the optimal performance, but this behavior completely ignores to maintain the PLD model. Therefore, how to keep the PLD model and raise the overall performance in a wireless network with a multirate channel is a challenge and will be investigated in this paper.

This paper proposes a novel algorithm, named fuzzy proportional loss rate dropper (FPLR). In the FPLR dropper, we utilize the concept of fuzzy control to make an optimal decision for dropping the small packets destined to a poor channel and reserving the large packets destined to a good channel, causing a lot of large packets to be transmitted via a good channel. Therefore, FPLR can provide high performance and keep PLD in a wireless with a multistate channel.

Organization of the remainder of the paper is as follows. Section 2 describes the background, including the proportional differentiation model, some previous related works, structure of fuzzy controller systems, and what problems occur when these works are directly applied into a wireless network. Section 3 describes in more detail the FPLR and the design of the fuzzy controller. In Section 4, some simulation results and their implications are exhibited. The conclusion of this work is given in Section 5.

2. Background

2.1. Proportional Differentiation Model

The proportional differentiation model was proposed first by Dovrolis and Ramanathan [5] and Bobin et al. [6], and its structure is shown as Figure 1. The arrival traffic is classified into service classes where each class has a dedicated queue. Let denote the measured performance of class . For proportional differentiation model, the following equation should be satisfied for all pairs of classes, and , where are the quality differentiation parameters (QDP). A network operator could manipulate the service quality spacing between classes by adjusting QDPs.

Let be the average loss of the class- packets with as the loss differentiation parameters (LDPs). For all pairs of service classes, and , the proportional loss differentiation model is specified by

Let be the average queuing delay of the class- packets with as the delay differentiation parameters (DDPs). The proportional delay differentiation model has the following constraint for any pair of classes:

2.2. Proportional Loss Rate (PLR)

Dovrolis et al. proposed the proportional loss rate dropper (PLR) to offer the PLD model [5]. In order to determine which packet should be dropped, PLR uses a loss history table (LHT) to record the loss rate of each class at present. Let be the average loss rate and be the normalized average loss rate of class at time . Also and denote the numbers of dropped packets and arrived packets, respectively, of class until time . denotes the set of backlogged classes. PLR chooses class to drop its tail packet as follows:

PLR aims to maintain a unanimous normalized average loss rate among all classes. According to the number of packets that PLR estimates, the calculated average loss rate is different; so there are two kinds of algorithms, namely, PLR with infinite memory, PLR (∞), and PLR with memory , PLR(). When calculating the average loss rate, PLR(∞) counts packets from initial to present, while PLR() observes the last packets of every class at present. From the long-term observation, the result of PLR(∞) is closer to targeted proportion than that of PLR(). However, when the class load significantly oscillates, adopting PLR() is preferred because of its adaptation, but determining an optimal is difficult.

2.3. The Problem of Achieving PLD in a Wireless Network

Previous studies on achieving the PLD model focused on increasing the accuracy of the achieved loss proportion between classes in wired networks. These proposed algorithms did not consider any characteristics in a wireless network.

Figure 2 depicts the PLD model applied in a wireless network. In this environment, all mobile hosts share one wireless link. Since each host could be located at different places, different capacities exist when the scheduler transmits data to different mobile hosts via this wireless link. Also as the mobile host moves, the capacity to this destined host varies. Thus a wireless link has a location-dependent and time-varying capacity, and it is called as a multistate link herein. For simplicity, the term channel means the wireless link at transmitting the packet to the mobile host . Let denote the encountered capacity when the scheduler transmits packets via channel at time .

In a wireless network with a multirate link, when many packets encountering a good channel are dropped and many packets encountering a poor channel are kept in the buffer, the system performance becomes bad because most packets will be transmitted via a poor-capacity channel. Actually, dropping the packet having the poorest channel will cause the optimal performance, but this behavior completely ignores keeping the PLD model. Therefore, designing a dropper to simultaneously keep the PLD model and raise the overall performance in a wireless network with a multirate link is a challenge.

2.4. The Fuzzy Controller

The fuzzy controller that is a nonlinear mapping system developed by Mamdani [12, 13] consists of four main components: fuzzification, fuzzy inference engine, rule base, and defuzzification, as shown in Figure 3.

The fuzzification (or fuzzifier) calculates suitable sets of degree of membership, called “fuzzy sets,” for crisp inputs. The fuzzy inference engine performs inference procedure for given inputs according to the fuzzy rules to derive proper actions. The rule base consists of a set of linguistic rules, as well as a set of membership functions for linguistic values. The defuzzification (or defuzzifier) converts the fuzzy output to crisp values.

3. Fuzzy Proportional Loss Rate Dropper (FPLR)

FPLR uses three processes to decide how to drop packets, as shown in Figure 4. A fuzzy controller system on the first process takes advantage of fuzzy theory to PLD. The debt decision module in the second process is to compensate for the loss rate debts. The third process is to determine an appropriate packet to drop.

3.1. Fuzzification

In this paper, most of the membership functions for the fuzzy sets are chosen to be triangular, because triangular membership functions are the most economic. All membership functions are defined on common interval . With fuzzy logic, we assign grade values to our two variables, which are packet sizes and channel states. Thus the fuzzy set A consists of two fuzzy variables, , , where is the fuzzy variable term for the packet size and is the channel capacity encountered when the scheduler transmits the HOL packet. The membership functions of and are shown in Figures 5(a) and 5(b), respectively, and they are the input of the FCS. The fuzzification component translates the inputs into corresponding fuzzy values.

In Figure 5(a), VS, S, MS, L, and VL denote very small, small, medium small, large, and very large, respectively. In Figure 5(b), VB, B, MC, G, and VG indicate very bad channel, bad channel, medium channel, good channel, and very good channel, respectively.

Let the fuzzified output of the fuzzy inference engine be , which uses singleton fuzzy sets representing the drop probability of the packet, as shown in Figure 5(c). In Figure 5(c), nd, pnd, m, pd, and d denote not drop, probably not drop, maybe drop, probably drop, and drop, respectively.

3.2. Rule Establishment

Fuzzy rules can effectively treat the nonlinearity, and the whole fuzzy rules are shown in Table 1. Each rule performs the mapping process from the fuzzy input to fuzzy out. These rules are intuitive. For example, when channel state is very bad and no matter a packet is big or small, an incoming packet must be dropped.

3.3. Defuzzification

The center of gravity (CoG) technique, which computes the weighted average of the center of gravity of each membership function, is used to compute the defuzzified output, , of the FCS. That is , where is the center of the membership function recommended by the consequence of rule of class , and the height is cut by the minimum vale after MAX-MIN inference engine [14]. is the degree of membership of input variables, packet size and channel states, of class . The is number of rules.

3.4. Debt Decision

The debt decision is adopted because, in this work, maintaining the loss rate differentiation is considered to be more important than achieving high throughput. A debt value is used to record the “drop debt” carried by class . having the positive value represents that the number of loss happening is less than the expectation in class . That is, some other classes instead of class drop the packets. Similarly, the value of being negative and zero means that class has more and equal number of losses than its expectation, respectively. is specified by where is the normalized average loss rate of class at time and is the number of service classes.

We would like to use the decision function of FPLR to decide that the packet should be dropped and need not be dropped. We use a threshold to compare with . Thus the condition of dropping the packet of the candidate class is as follows:

3.5. Algorithm

Algorithm 1 presents the pseudocode of the FPLR. When the buffer has empty space, the dropper simply inserts the packet into a proper queue. When buffer overflow occurs, the dropper selects an appropriate packet to drop. Let and be the number of dropped packets and the number of arrived packets of class at time t, respectively.

: the number of lost packets of class i
: the number of arrived packets of class i
: the loss differentiation parameter of class i
: the channel capacity encountered when the scheduler transmits the HOL packet of class i
: the set of backlogged classes at present t
: the size of the HOL packet in class i
: the center of the membership function recommended by the consequence of rule f of class i
: the degree of membership of input variables, packet size and
        channel states, of class i
: the defuzzified output of FCS of class i
: drop threshold
: lost debt of class i
FPLR Dropper
{
 a class-i packet arrives at time t, ;
 if (buffer overflow){
   calculate , ;
   calculate , i = 1, 2,…, N; f = 1, 2, 3, 4, 5;
  J= ;
   ;
  if ( ) then , ;
  else if ( ) then , ;
  if (( + )> ) {
      drop the HOL packet from class J;
       ;}
  else{
    do {
        find ;
        if (( + )> ) {
        drop the HOL packet from class K;
        ;}
    } while(one packet is dropped or all classes have been visited)
    if (no packet is dropped){
      drop the HOL packet from class J;
       ;}
    }
  accept the incoming packet;
}

When an arriving packet encounters a full buffer, the dropper selects a proper packet, which may be this arriving packet or a packet in the buffer to be dropped for keeping the proportional loss rate among classes. At determining which packet to be dropped, the dropper first calculates the normalized average loss rate for each class . Then the class with the smallest normalized average loss rate, that is, is regarded as the candidate class.

The dropper considers three important factors, including channel state, packet size, and debt degree, to determine whether the packet of the class should be dropped.

Note the dropper drops the HOL packet, rather than the tail packet or arriving packet, because using this method can reduce the queuing delay of queued packets.

If the candidate class does not satisfy the above condition, the dropper will choose the candidate class , which has the next smallest normalized average loss rate. Judging whether the HOL packet of candidate class will be dropped is similar to (3.2), that is, .

Some noticeable points about the FPLR are explained as follows.(1)FPLR drops the HOL packet, rather than the tail packet, of the selected class, because using this method can reduce the queuing delay of queued packets. Also the HOL packet will actually experience the current channel capacity, but the tail packet may not be transmitted at this capacity because of the time-varying bandwidth.(2)For FPLR, because the packets destined to a low-capacity channel are easily dropped and the packets destined to a high-capacity channel are easily kept in the buffer, most packets are transmitted in a good channel, generating high performance.(3)The fuzzy logic is an effective tool for efficient buffer management. It can easily handle several nonlinear factors and does not need detailed mathematic descriptions for the system.

4. Simulation and Discussion

The simulations compare the performance of FPLR and WPLR in terms of loss rate ratio, loss improvement, throughput improvement, and delay improvement. The simulations are conducted to investigate the effects of packet arrival rate, number of mobile hosts, and state transition rate upon WPLR and FPLR. Also, the behaviors of these two droppers under different timescales are explored. First, the average loss rate of each class , , is obtained by using (2.4), and the loss rate ratio of class over class is defined as =/. The loss improvement of class is defined as where and are the loss rates of class made by WPLR and FPLR, respectively. Similarly, the throughput improvement and delay improvement of class are defined as and , respectively, where denotes the throughput of class and denotes the average queuing delay of class .

4.1. Simulation Models

The model we simulated is depicted in Figure 2, and the scheduler is using the First-Come First-Served (FCFS) scheduler. In all simulations, three service classes () are assumed, and the corresponding loss rate differentiation parameters are set as , , and . Packet arrival follows a Poisson process, and its mean overall arrival rate is packets/sec. The distribution of packet sizes for all classes is such that 40% of packets are 40 bytes, 50% packets are 550 bytes, and 10% packets are 1500 bytes. Thus, the mean packet size is 441 bytes. The threshold is set as 0.5. The total buffer size is 10,000 bytes, and the number of hosts is five, that is, . The wireless channel is simulated by a multistate Markov process, which has five states with the values of capacities varying among 0 (purely bad), 1 Mbps, 2 Mbps, 5.5 Mbps, and 11 Mbps (purely good). The transition rate matrix of channel capacity is set as where is the state transition rate to other states and is the probability of state being translated to its neighbor states when the transition occurs. The default value of is 30, and the values of , , , , and can be calculated by letting the sum of each row equal to 0. In each simulation, at least 500,000 packets for each class are generated for the sake of stability.

4.2. Packet Arrival Rate

To observe the influence of different packet arrival rates on achieved loss rate ratios, loss improvement, delay improvements and throughput improvement, the arrival rate () is varied from 100 to 150 packets/sec. The target loss rate ratios are 4 () for class 3 over class 1 and 2 () for class 2 over class 1. Figure 6(a) shows that WPLR and FPLR can achieve the accurate loss rate ratios. For the FPLR dropper, because the class with a larger debt has a higher probability to be dropped, the target loss rate proportions can be still maintained.

Observed from Figure 6(b), the loss improvements attained by FPLR increase as arrival rate increases, and three classes have the same loss improvement. At a low packet arrival rate, the packet losses seldom happen, causing that the fuzzy mechanism has minor influence. As the arrival rate increases, since the opportunity of using the fuzzy mechanism becomes large, more small packets transmitted via low-capacity channels are dropped, and more large packets transmitted via high-capacity channels are kept. Thus the loss improvements made by FPLR increase.

From Figure 6(c), two phenomena are observed. First, the throughputs improved by FPLR increase as arrival rate increases. Second, the throughput improvements of all classes are in the order class 3 > class 2 > class 1. The first phenomena is because the more loss improvement, the more throughput improvement. The second phenomenon is not trivial and explained in the following.

Let be the packet arrival rate of class . Thus for WPLR, the throughput of class i, , can be expressed as . Also let the loss improvement of class , made by the dropper FPLR, be denoted as , which is equal to . Therefore, the throughput of class can be easily obtained as . Hence, the throughput improvement of class is

From this equation, we can prove the more loss improvement, the more throughput improvement.

For different classes, observed from Figure 6(b), the loss improvements, , of all classes are the same. Also Figure 6(a) shows that . Under these conditions, from (4.2), the throughput improvements of all classes are in the order class 3 > class 2 > class 1. For example, all packets/sec, loss rates of classes 1, 2, and 3 for WPLR are 20%, 40%, and 80%, respectively, that is, their throughputs are 100, 80, and 40. When the loss improvement is 50% for all classes, the loss rates of classes 1, 2, and 3 for our proposed dropper reduce to 10%, 20%, and 40%, respectively, that is, their throughputs are 110, 100, and 80. In this example, the throughput improvements for classes 1, 2, and 3 are 10%, 25%, and 100%, respectively.

Figure 6(d) shows the delay improvements achieved by FPLR. The delay improvements are caused by two reasons. First, because the packet destined to a poor channel is easier to be dropped than that destined to a good channel, nondropped packets usually encounter a good channel, causing that they have short transmission time and thus short queuing delay. Second, FPLR dropping the HOL packet, rather than dropping the tail packet, reduces the queuing delay of the queued packets. Also the delay improvements enhance as the arrival rate increases because the opportunity of using the fuzzy mechanism becomes large. Finally, the delay improvements of all classes are in the order class 1 > class 2 > class 3 since the more throughput improvement, the less delay improvement.

4.3. Timescale

In this simulation, the loss rate ratios between successive classes are measured over five time intervals—100, 500, 1000, 5000, and 10000 p-units, where a p-unit is the average packet transmission time. During each time interval, the loss rate ratios of class 2 over class 1 and class 3 over class 2 are measured and averaged.

Figure 7 shows five percentiles, 5%, 25%, 50% (median), 75%, and 95%, of the average loss rate ratio. FPLR has the broader ranges on short timescales than WPLR and similar ranges on long timescales. The reason is that although using the fuzzy mechanism will achieve the loss rate ratio temporarily away from target loss rate proportion in the short term, they will let the opportunity of using the debt decision mechanism keep PLD on the long term.

4.4. Number of Mobile Hosts

The number of mobile hosts is varied from 5 to 25 to observe the influence on achieved loss rate ratios, loss improvement, delay improvement, and throughput improvement. Packets of each class are evenly distributed to each mobile host. Since below all simulation results for different classes have the similar treads as Figure 6. Therefore we will only show the total loss improvement, total throughput improvement, and total delay improvement. Figure 8(a) shows that the number of mobile hosts does not affect the loss rate ratios achieved by two droppers. Figure 8(b) reveals that the loss improvement, throughput improvement, and delay improvement made by FPLR increase as the number of mobile hosts increases. When there are only a few mobile hosts, for FPLR, few HOL packets destined to poor channels can be selected as a substitution, so that the improvements are not high. As the number of mobile hosts increases, since more small packets transmitted via poor channels can be chosen, the improvements made by FPLR raise.

4.5. State Transition Rate

Given that a channel varies among the five states, 0, 1 Mbps, 2 Mbps, 5.5 Mbps, and 11 Mbps, the transition rate, , is varied from 20 to 40 to observe its effect upon loss rate ratios and all improvements. Figure 9(a) shows that the state transition rate does not affect the loss rate ratios. From Figure 9(b), as state transition rate changes faster, all improvements of FPLR become smaller. When the state transition rate is small, the bad channel will lasts long, causing that the HOL blocking also last long. Many packets will be accumulated in the buffer, and packet losses usually occur, leading FPLR to have high opportunities to adopt the fuzzy mechanism. When the state transition rate becomes larger, the packets caused by the HOL blocking can be absorbed in the buffer, implying a smaller loss rate. Thus, the improvements made by FPLR also become smaller.

4.6. Threshold

Herein we investigate the effects of the parameter for FPLR. Figure 10(a) reveals that loss improvement, throughput improvement, and delay improvement made by FPLR increase as threshold increases. As the threshold increases, since the opportunity of considering packet size and channel states becomes large, smaller packets transmitted via low-capacity channels are dropped, and more large packets transmitted via high-capacity channels are kept. Thus the improvements made by FPLR increase. However, Figure 10(b) shows when threshold exceeds 0.5, the target loss rate ratios slide down as threshold increases. The reason is that in this case the loss rate proportions have minor influence, so the target loss rate proportions cannot be maintained.

5. Conclusions

This paper proposed a high-performance algorithm, FPLR, which can be used to provide proportional loss differentiation in a wireless network with multi-state channel. FPLR uses three processes to decide how to drop packets. A fuzzy controller system on the first process takes advantage of fuzzy theory to PLD. The debt decision module in the second process is to compensate for the loss rate debts. The third process is to determine an appropriate packet to drop. FPLR not only considers the normalized average loss rate, but also considers the channel state and packet sizes, in order to improve the performance of dropping.

From the simulation results, FPLR is examined to deal with location-dependent channel capacity well and does provide more accurate proportional loss rate differentiation than WPLR. Compared with WPLR, FPLR indeed provides better throughput and lower queuing delay and loss in the wireless network with a multistate channel.

Our future works include developing a wireless proportional scheduler to provide both proportional loss differentiation and delay differentiation.