A Robust Real-Time Message Scheduling Scheme Capable of

0 downloads 0 Views 434KB Size Report
two polling schedules according to the channel status, giving a temporaily ... according to the offline EDF schedule built prior to the system operation.
A Robust Real-Time Message Scheduling Scheme Capable of Handling Channel Errors in Wireless Local Area Networks Junghoon Lee1 , Mikyung Kang2 , Gyung-Leen Park1 , In-Hye Shin1 , Hanil Kim1 , and Sang-Wook Kim3, 1 2

Dept. of Computer Science and Statistics, Cheju National University Information Sciences Institute East, University of Southern California 3 College of Information and Communications, Hanyang University {jhlee, glpark, ihshin76, hikim}@cheju.ac.kr, [email protected], [email protected]

Abstract. This paper proposes and analyzes the performance of a robust real-time message scheduling scheme capable of handling channel errors by exploiting an auxiliary schedule on the IEEE 802.11 WLAN. While the primary schedule is derived from the legacy EDF (Earliest Deadline First) scheme, the auxiliary schedule is generated based on the slack and arrival times of each message stream. During runtime, with the support of a channel probing functionality, the access point dynamically switches the two polling schedules according to the channel status, giving a temporaily unreachable stream more chances to meet its time constraints. Simulation results show that the proposed scheme improves the success ratio by up to 8.56 % and performs well even if the length of error duration gets larger, demonstrating that it is also robust to the bursty errors.

1

Introduction

Wireless communication technology is gaining a wide-spread acceptance for distributed systems and applications in recent years[1]. As both speed and capacity of wireless media such as IEEE 802.11 WLAN (Wireless Local Area Network) increase, so does the demand for supporting real-time applications such as broadband VOD (Video On Demand) and remote monitoring system. Real-time messages are inherently time sensitive and their time constraints are given from their own applications. For example, in the wireless sensor network, the periodically sampled data are delivered to the appropriate station within a reasonable deadline to produce timely and meaningful response[2]. The message of sensor data has a hard real-time constraint that it should be transmitted within a bounded delay as long as the corresponding channel stays in an error-free state. Otherwise, the data are considered to be lost. 



This research was supported by the MIC, Korea, under the ITRC support program supervised by the IITA (IITA-2006-C1090-0603-0040). Corresponding author.

O. Gervasi and M. Gavrilova (Eds.): ICCSA 2007, LNCS 4707, Part III, pp. 169–178, 2007. c Springer-Verlag Berlin Heidelberg 2007 

170

J. Lee et al.

Not a few scheduling schemes for the real-time message have been proposed in various respects of its time constraints[3]. In soft real-time applications, a proportional share of network resources is prospective, as can be shown in fair queuing approaches[4]. On the other hand, a hard real-time message stream needs the guarantee from the underlying network that its time constraints are always met in advance of the system operation or connection setup, while the guarantee is provided based on a rigid priority driven scheduler. EDF (Earliest Deadline First), which dynamically picks a message that has the closest deadline among the pending ones, is known to be the most common scheduling policy for realtime message streams[5]. WLAN can also exploit EDF for message scheduling in various ways on the assumption that the communication pattern of sensory data is fixed and known in priori. For example, AP (Access Point) polls each station according to the offline EDF schedule built prior to the system operation. As was pointed out for the fair packet scheduling case, however, it is not clear how well this algorithms will work for the wireless networks, since wireless channels are subject to unpredictable location-dependent and bursty errors, which make a real-time application fail to send or receive some of its real-time packets[6]. As a result, the reservation-based guarantee scheme alone is not sufficient. A message may be unable to use the reserved network time due to channel status fluctuation, no matter how sophisticatedly its reservation was made. Therefore, the real-time performance such as network throughput or deadline meet ratio depends on how to reallocate the unused or invalidated time slots as well as how to compensate hosts whose packets are corrupted or postponed behind its reservation. This paper addresses these problems based on the additional auxiliary polling schedule which can switch the primary one when a specific channel falls in a bad state. The rest of this paper is organized as follows: Section 2 introduces related works on real-time message scheduling and then Section 3 explains basic assumptions on network and error models. Section 4 presents the proposed scheduling scheme in detail. After exhibiting performance measurement results in Section 5, Section 6 concludes this paper with a brief description of future works.

2

Related Works

We will begin with a description of IEEE 802.11 WLANs, as plenty of related researches on the wireless sensor network employ WLAN as their underlying network. Thanks to the inherent nature of a wireless medium, messages are broadcasted to all the nodes inside the cell[7]. Correspondingly, the IEEE 802.11 was developed as a MAC (Medium Access Control) standard for WLANs[8]. The standard includes a basic DCF (Distributed Coordination Function) and an optional PCF (Point Coordination Function) to support efficient delivery of both real-time and non-real-time messages. The DCF exploits CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) protocol as the basic channel access mechanism to transmit asynchronous messages. Due to the contention-based nature, packet collisions are intrinsic to CSMA, and their resolving procedure

A Robust Real-Time Message Scheduling Scheme

171

makes the network access unpredictable. Meanwhile, real-time guarantee can be provided only if a deterministic contention-free schedule is developed[9]. As a polling-based protocol without contention, the PCF enables the real-time station to deterministically access the common channel medium. Real-time protocols on WLAN are typically based on a frame-structured access which consists of a contention part and a reservation part, whether they are implemented as a centralized or distributed method. As an example, Choi and Shin suggested a unified protocol for real-time and non-real-time communications in wireless networks[10]. A BS (Base Station) polls a real-time mobile station according to the non-preemptable EDF policy. Traditionally, an EDF algorithm assigns priorities to individual jobs belonging to a task with respect to their absolute deadlines. The status of a packet on the real-time mobile station can be estimated from the traffic characteristics submitted to the BS at the connection establishment time. The BS also polls the non-real-time message according to the modified round-robin scheme rather than a standard CSMA/CA protocol to eliminate message collisions. They also adopted the channel state prediction, transmission deferment, and retransmission based on the method of probing before polling[11]. As the most prominent example of a distributed dynamic priority scheduling mechanism, M. Caccamo et al. have proposed a MAC that supports deterministic real-time scheduling via the implementation of TDMA (Time Division Multiple Access) to apply the EDF scheme to WLAN[9]. Referred as implicit contention, their scheme makes every station concurrently run the common real-time scheduling algorithm to determine which message can access the medium. Each message implicitly contends for the medium through the scheduling algorithm, for example, with priorities, rather than explicitly on the physical medium, thus it can save power and time. However, for this implicit contention, every node must schedule all the messages in the network, making it difficult to scale to large networks. As a non-EDF scheduling scheme, Carley et al. have proposed an interesting TDMA schedule scheme for wireless sensor networks implemented with a contention-free message scheduler[1]. They showed that a message set whose periods are harmonic always has a contention-free phase assignment so long as its utilization is less than or equal to 1.0. In addition, a message set can be made harmonic by reducing message periods by at most half. Their scheme enables the network to contain hundreds of nodes exchanging thousands of messages. However, they didn’t take network errors into account at all.

3 3.1

Basic Assumptions Network and Error Models

In WLAN, each cell, namely, BSS (Basic Service Set) is assumed to consist of an AP and multiple sensor stations as shown in Fig. 1. AP may be linked to a wired backbone or other wireless channel. In the latter case, AP has two transceivers that operate on different frequency levels, one for intracell communication and the other for

172

J. Lee et al. MS

MS : Mobile Station

MS Backbone network

Wired link

AP MS

Wireless link

802.11b WLAN MS

Other wireless network

Fig. 1. Network model

intercell communication. Every station shares medium on the common frequency band and accesses according to the predefined MAC protocol. Each flow is ether an uplink (MS to AP) or downlink (AP to MS), while AP coordinates the overall network operations. This paper exploits the TDMA style access policy as in [1][6][10], now that the real-time guarantee cannot be provided without developing a deterministic access schedule, as well as the contention resolution via packet collisions consumes the precious communication energy. Each station is associated with a channel which has either of two states, namely, error state and error-free state at any time instant. A channel is defined between each mobile and the AP, and it can be modeled as a Gilbert channel[12]. We can denote the transition probability from state good to state bad by p and the probability from state bad to state good by q, as shown in Fig. 2. The pair of p and q representing a range of channel conditions has been obtained by using the tracebased channel estimation. The average error probability and the average length of a p and 1q , respectively. A packet is received correctly burst of errors are derived as p+q if the channel remains in state good for the whole duration of packet transmission. Otherwise, it is received in error. Channels between the AP and respective stations are independent of one another in their error characteristics. p

1−p

Good

Bad

1−q

q

Fig. 2. Error model

3.2

Message Model

A station, currently inactive, can be activated by an upper layer query command that wants to monitor or process the data flow from the sensor station[13]. The query may also specify a sampling period as well as a precision level of needed data (hence, message length) on a station. In case of a change in the active flow set, the network schedule should be recalculated[5]. The destination of a message

A Robust Real-Time Message Scheduling Scheme

173

can be either within a cell or outside a cell, while the outbound messages are first sent to the AP and then forwarded to the remote destination. Internal messages are also relayed by the AP. Hence, the AP also acts as another source of message stream with an exception that it is just virtually polled. The traffic of sensory data is typically isochronous (or synchronous), consisting of message streams that are generated by their sources on a continuing basis and delivered to their respective destinations also on a continuing basis[5]. This paper follows the general real-time message model which has n streams, namely, S1 , S2 , ..., Sn , each of which generates a message of less than Ci at each beginning of its period, Pi . In addition, the first message of each stream arrives at time 0. Each packet must be delivered to its destination within Di time unit from its generation or arrival at the source, otherwise, the packet is considered to be lost. Generally, Di coincides with Pi to ensure that the transmission completes before the generation of the next message. However, sometimes, Di is larger than Pi , and in this case, more errors can be recovered within the message deadline. Finally, the stream belongs to a specific station, so if a slot is assigned to a stream, it means that the AP should poll that station at its slot time.

4 4.1

Network Operation Bandwidth Management

The network time is divided into a series of fixed-size slots, each of which is exclusively assigned to a real-time station, completely removing the possibility of packet collision, for the purpose of both real-time guarantee and power saving, as mentioned earlier. The slot length, say L, is as large as the basic unit of wireless data transmission and every traffic is also segmented to fit this slot size[9]. On WLAN, this TDMA-style network access can be implemented by making AP poll each station according to the predefined schedule, as well as making a polled node send for as large as L. The allocation scheme assigns each slot to a specific real-time stream, taking into account their time constraints. This assignment implies that a preemption occurs only at the slot boundary. Meanwhile, as every message is transmitted by the way of AP, be it intercell or intracell message, the AP knows whether a transmission has succeeded or failed. So the error recovery function is performed also under the control of the AP. For the access point to decide the polling order for a stream set, each stream, Si , submits a tuple of (Pi , Ci ) information. At first, the schedulability of message streams is tested by the following sufficient condition[9]: i Ck ∀i , 1 ≤ i ≤ n k=1 Pk + Δ ≤ 1.0, which assumes that all the messages are sorted in increasing order of relative deadlines and that there are n streams. Also, Δ denotes the overhead term originated from the network management such as polling/probing overhead, beacon packet broadcast, interframe space, and so on. As Δ is fixed for a stream set, we can calculate per-slot overhead and merge it into Ci . If we let Δp the per-slot

174

J. Lee et al.

overhead, the modified transmission time, Cit+1 , can be calculated iteratively with the following equation until Cit+1 becomes equal to Cit . Cit+1 = Cit + 

Cit L Δp

As a result, if we think Δ is absorbed into Ci , Δ can be assumed to be 0, enabling us to concentrate on the problem of slot allocation. After acceptance test for a given stream set, the transmission is reserved for each stream. That is, the AP creates a polling table for the entire polling sequence[14]. The invocation behavior of a periodic task set repeats itself once every T time units, where T , called the planning cycle of the task set, is the least common multiple of the periods of all periodic tasks. Hence, we only need to consider all the task invocation in T . For Si , every message arrival is estimated at 0, Pi , 2Pi , and so on, while each invocation needs  CLi  slots. With this estimation, the AP selects the message whose deadline is closest at each slot boundary and assigns the slot to the corresponding stream. If no slot request is pending at a slot boundary, the scheduler leaves it unassigned. Fig. 4 also shows the allocation example for the stream set, τ :{A(6,1), B(3,1), C(4,2)} whose utilization is 1.0. Though this polling schedule can meet the time constraints of a given stream set, the AP may be unable to poll the stream at the scheduled time because the channel between itself and the stream has fallen to a bad state. In this case, the existing poll is invalidated. Without some compensation procedure, the invalidated stream will fail to meet its deadline. To overcome this situation, this paper proposes an auxiliary schedule shown in Fig. 3. The auxiliary schedule helps the runtime scheduler to pick alternative stream when it cannot poll the stream in the primary schedule. To build an auxiliary schedule, AP generates both arrival time and slack time of each slot in the primary schedule based on EDF policy. By Et , we denote the stream AP will poll at time t. If Et is M , At and Lt denote the arrival time and the slack time of M , respectively. Slack means the redundant time to the completion of a given task or message. It can be calculated by subtracting the current time and the execution time from the deadline. Let’s assume that slot t is assigned to stream M , that is, Et = M . In addition, M is unreachable at time t during the actual network runtime. If the poll to M is switched by a poll to another stream   at t , and t is less than or equal to the deadline of M , M has one more chance to be delivered within its deadline. Based on this concept, we fill the auxiliary polling list as follows: for M at time t, from the stream located at t + Lt down to t + 1, the scheduler checks whether  the occupied message, say M , is already pending. If so, that is, the arrival time   of M is less than or equal to time t, M is selected for Et . t + Lt is the farthest slot to which M can be moved. Fig. 4 shows the example. For time 2, the primary schedule is to poll stream C, while A2 and L2 are 0 and 1, respectively. The first candidate for the auxiliary schedule for slot 2 is the stream located in the primary schedule at time 2 + L2 , namely, stream A. In addition, A3 is 0 and is less than current time, 2, so we can conclude that A is already pending at time 2. After all, A is selected for the alternative schedule for E2 , namely, C.

A Robust Real-Time Message Scheduling Scheme

175

for all t in the planning cycle  t = t + Lt  while (t > t) if (At ≤ t) select Et as Xt   t ← t −1 end while end for Fig. 3. The construction of an auxiliary schedule

Primary schedule ( E t )

0

1

2

3

4

B

C

C

A B

5

6

7

8

C

C

B

9

10

11

A B

C

C

Probing + Poll 0

1

2

3

4

5

6

7

8

9

10

11

0

0

0

0

3

4

4

6

6

9

8

8

0

1

2

3

4

5

6

7

8

9

10

11

2

2

1

2

1

2

1

1

3

2

1

0

0

1

2

3

4

5

6

7

8

9

10

11

Auxiliary schedule ( X t )

C

A A B

C



B

A C

C





0

1

2

3

4

5

6

7

9

Original location ( O t )

1

3

3

4

5



7

8 11 11

Arrival( A t ) Slack ( L t )

8

10

11





Fig. 4. Slot allocation and probing

4.2

Runtime Operation

At runtime, the AP has the primary and auxiliary schedules, and at each beginning of a planning cycle, the primary scheduling table is reloaded. In addition to Et , At , and Lt , we further define Xt as the auxiliary schedule at time t, while Ot denotes the original location of Xt . As specified in the primary reservation table, each station is polled one by one, while the unallocated slot can be used for retransmission. The AP also maintains a retransmission queue ordered by the deadline of failed messages and a message entry will be automatically removed when its deadline expires. In addition, it is advantageous to probe a channel before polling or transmitting, as it can not only avoid a useless transmission over a bad channel, but also decrease the need for retransmitting packets. The channel estimation is achieved by transmitting a probing control packet to the scheduled station, which then returns the control packet, just like the RTS/CTS (Request To Send/Clear To Send) interaction[10]. If the AP does not receive the probing control packet correctly from the station, the channel is estimated to

176

J. Lee et al.

be bad. However, even though the probing indicates the channel stays good, the ensuing transmission can fail if a state goes to bad during the transmission. If the probing fails for a stream, the scheduler should select another one and try to poll, but at this time, without a probing, as the unlimited number of probe may invalidate the schedule which is based on the fixed size slots. If the transmission succeeds, the scheduler modifies some schedules. Fig. 5 summarizes the runtime operation steps.

t=0 while system operation get a stream, Et , from the primary polling table if Et is unassigned get the stream from the retransmission queue and poll return probe the channel status of Et if good poll Et else poll Xt if successful place Et in the slot time Ot else put Et into the retransmission queue t ← (t+1) mod T end while Fig. 5. Description of runtime operation on AP

However, the proposed scheme has some margin to further improve the performance. Let’s assume that C is in bad state from time 1 to 2 in Fig. 4. X1 and X2 are both A. In this case, as A may be already transmitted at time 1 in place of C, switch to X2 at time 2 is meaningless. This situation requires the more sophisticated selection of the auxiliary schedule.

5

Performance Evaluation

This section measures the performance of the proposed scheme in terms of the success ratio according to the packet error rate as well as the average length of error duration, 1q in Fig. 2, via simulation using the ns-2 event simulator[15]. The success ratio means the ratio of the number of successfully transmitted packets within their deadlines to the total number of generated packets. For the target stream sets, we fixed the length of a planning cycle to 24 as well as the number of streams to 3, and generated every possible stream sets whose utilization ranges from 0.2 to 1.0. Such sets have various utilization, slack distribution, and so on, as the number 24

A Robust Real-Time Message Scheduling Scheme

177

has many integer divisors. We measured how many errors can be recovered by the auxiliary polling schedule, for the packet error rate of 0.0 through 0.5. Actually the packet error rate is a function of the average packet length and bit error rate, and we chose the packet error rate considering the error-prone wireless channel characteristics. Fig. 6 plots the measured result and compares the success ratio with the legacy EDF schedule. As shown in this figure, the performance gap gets larger with a higher packet error rate, by up to 8.56 %. Fig. 7 plots the success ratio according to the average length of error duration. This parameter can influence the success ratio because the error can be recovered only if the slot is switched with one that gets out of the error duration. Hence, we measured the success ratio of the proposed scheme by changing error duration length from 0.0 to 4.0 slots. We further assume that each error duration exponentially distributes with those averages. In Fig. 7, the curve for the EDF remains constant, as the length of error duration does not affect the overall packet error rate. In contrast, as the length of error duration increases, the success ratio of the proposed scheme diminishes as expected. However, the curve shows that even in the large value of error duration, the proposed scheme can reasonably enhance the real-time performance of wireless sensor networks. 0.95

1 0.9

0.94

"Proposed" "EDF"

"Proposed" "EDF"

Success ratio

Success ratio

0.93 0.8 0.7 0.6

0.91 0.9

0.5

0.89 0.88

0.4 0

0.1

0.2

0.3

0.4

Packet error rate

Fig. 6. Effect of error rate

6

0.92

0.5

0

0.5

1

1.5

2

2.5

3

3.5

4

Error duration

Fig. 7. Effect of error duration (slots)

Conclusions

This paper has proposed and analyzed the performance of a robust real-time message scheduling scheme capable of handling channel errors via an auxiliary polling schedule on wireless sensor networks built on top of IEEE 802.11 WLAN. Based on the EDF policy, the AP basically determines the polling schedule for the active stream set. Besides this primary polling schedule, the AP also creates the auxiliary schedule to cope with a situation when a scheduled stream is not reachable. To this end, the primary schedule also generates the arrival time and the slack time of a message slot. For each stream, the farthest one from the stream on the primary schedule is selected for the auxiliary polling candidate as long as it has already arrived. This allocation can cope with the relatively long error duration. With two polling schedules, the AP polls each station one by

178

J. Lee et al.

one as specified in the primary reservation table, while the unallocated slot can be used for retransmission. If probing fails, the stream in the auxiliary schedule is selected. If this alternative transmission succeeds, the primary schedule is modified to give the invalidated stream one more chance to meet its deadline. The performance measurement result shows that the proposed scheme can improve the success ratio by up to 8.56 % while demonstrating that even in the large value of error duration, it can reasonably enhance the real-time performance.

References 1. Carley, T., Ba, M., Barua, R., Stewart, D.: Contention-free periodic message scheduler medium access control in wireless sensor/actuator networks. In: Proc. IEEE Real-Time Systems Symposium, pp. 298–307 (2003) 2. Li, H., Shenoy, P., Ramamritham, K.: Scheduling communication in real-time sensor applications. In: Proc.10th IEEE Real-time Embedded Technology and Applications Symposium, pp. 2065–2080 (2004) 3. Lee, J., Kang, M., Park, G.: Design of a hard real-time guarantee scheme for dual ad hoc mode IEEE 802. In: Syrotiuk, V.R., Ch´ avez, E. (eds.) ADHOC-NOW 2005. LNCS, vol. 3738, pp. 141–152. Springer, Heidelberg (2005) 4. Vaida, N., Dugar, A., Gupta, S., Bahl, P.: Distributed fair scheduling in a wireless LAN. IEEE Transactions on Mobile Computers 4(6), 616–629 (2005) 5. Liu, J.: Real-Time Systems. Prentice Hall, Englewood Cliffs (2000) 6. Adamou, M., Khanna, S., Lee, I., Shin, I., Zhou, S.: Fair real-time traffic scheduling over a wireless LAN. In: Proc. IEEE Real-Time Systems Symposium, pp. 279–288 (2001) 7. Rangnekar, A., Wang, C., Sivalingam, K., Li, B.: Multiple access protocols and scheduling algorithms of multiple channel wireless networks. Handbook of Algorithms for Mobile and Wireless Networking and Computing (2004) 8. IEEE 802.11-1999: Part 11-Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications (1999) 9. Caccamo, M., Zhang, L., Sha, L., Buttazzo, G.: An implicit prioritized access protocol for wireless sensor networks. In: Proc. IEEE Real-Time Systems Symposium (2002) 10. Choi, S., Shin, K.: A unified wireless LAN architecture for real-time and non-realtime communication services. IEEE/ACM Trans. on Networking 8, 44–59 (2000) 11. Damodaran, S., Sivalingam, K.: Scheduling algorithms for multiple channel wireless local area networks. Computer Communications (2002) 12. Shah, S.H., Chen, K., Nahrstedt, K.: Dynamic bandwidth management for singlehop ad hoc wireless networks. ACM/Kluwer Mobile Networks and Applications (MONET) Journal 10, 199–217 (2005) 13. Madden, S., Franklin, M., Hellerstein, J., Hong, W.: The design of an acquisitional query processor for sensor networks. In: ACM SINGMOD (2003) 14. Lee, J., Kang, M., Park, G., Kim, I., Kim, C., Park, J., Hong, J.: A real-time message scheduling scheme based on optimal earliest deadline first policy for dual channel wireless networks. In: Sha, E., Han, S.-K., Xu, C.-Z., Kim, M.H., Yang, L.T., Xiao, B. (eds.) EUC 2006. LNCS, vol. 4096, pp. 264–273. Springer, Heidelberg (2006) 15. Fall, K., Varadhan, K.: Ns notes and documentation. Technical Report. VINT project. UC-Berkeley and LBNL (1997)

Suggest Documents