ISSN ONLINE(2320-9801) PRINT (2320-9798)

All submissions of the EM system will be redirected to Online Manuscript Submission System. Authors are requested to submit articles directly to Online Manuscript Submission System of respective journal.

Efficient Dynamic Multilevel Priority Task Scheduling For Wireless Sensor Networks

Mrs.K.Indumathi1 and Mrs. M. Santhi2
  1. M.E II year, Department of CSE, Sri Subramanya College Of Engineering and Technology, Palani, Dindigul, Tamilnadu, India-624 615
  2. Assistant Professor, Department of CSE, Sri Subramanya College Of Engineering and Technology, Palani, Dindigul, Tamilnadu, India-624 615
Related article at Pubmed, Scholar Google

Visit for more related articles at International Journal of Innovative Research in Computer and Communication Engineering

Abstract

Most of the existing packet-scheduling mechanism of WSN use First Come First Served(FCFS),nonpreemptive priority and preemptive prior it scheduling algorithms. These algorithms incur a high processing overhead and long end-to-end data transmission delay due to improper allocation of data packets to queues in multilevel queue scheduling algorithms. Moreover, these algorithms are not dynamic to the changing requirements of WSN applications since their scheduling policies are predetermined. This paper proposes a Dynamic Multilevel Priority (DMP) packet scheduling scheme, deal with the circular wait and preemptive conditions. In proposed scheme, WSN has three levels of priority queues. Real-time packets are placed into the highest-priority queue and can preempt data packets in other queues. Non-real-time packets are placed into two other queues based on a certain threshold of their estimated processing time. Leaf nodes have two queues for real-time and non-real-time data packets since they do not receive data from other nodes and thus, reduce end-to-end. Improve the performance of task scheduling schemes in terms of end to end delay and deadlock prevention.

Keywords

WSN, packet scheduling, preemptive priority scheduling, non-preemptive priority scheduling, real-time, non-real-time, data waiting time, FCFS.

INTRODUCTION

Most existing Wireless Sensor Network (WSN) operating systems use First Come First Serve (FCFS) schedulers that process data packets in the order of their arrival time and, thus, require a lot of time to be delivered to a relevant base station (BS). However, to be meaningful, sensed data have to reach the BS within a specific time period or before the expiration of a deadline. Additionally, real-time emergency data should be delivered to BS with the shortest possible endto- end delay. Hence, intermediate nodes require changing the delivery order of data packets in their ready queue based on their importance (e.g., real or non-real time) and delivery deadline. Furthermore, most existing packet scheduling algorithms of WSN are neither dynamic nor suitable for large scale applications since these schedulers are predetermine and static, and cannot be changed in response to a change in the application requirements or environments. For example, in many real-time applications, a real-time priority scheduler is statically used and cannot be changed during the operation of WSN applications.
This paper proposes a Dynamic Multilevel Priority (DMP) packet scheduling scheme for WSNs in which sensor nodes are virtually organized into a hierarchical structure. Nodes that have the same hop distance from the BS are considered to be located at the same hierarchical level. Data packets sensed by nodes at different levels are processed using a TDMA scheme. For instance, nodes that are located at the lowest level and one level upper to the lowest level can be allocated timeslots 1 and 2, respectively. Each node maintains three levels of priority queues and classify data packets as (i) real-time (priority 1), (ii) non-real-time remote data packet that are received from lower level nodes (priority 2), and (iii) non-real-time local data packets that are sensed at the node itself (priority 3). Non-real-time data traffic with the same priority are processed using the shortest job first (SJF) scheduler scheme since it is very efficient in terms of average task waiting time.

RELATED WORK

The task scheduling schemes are classified based on several factors such as:
DEADLINE
Packet scheduling schemes can be classified based on the deadline of arrival of data packets to the base station (BS), which are as follows. First Come First Served (FCFS): Most existing WSN applications use First Come First Served (FCFS) schedulers that process data in the order of their arrival times at the ready queue. In FCFS, data that arrive late at the intermediate nodes of the network from the distant leaf nodes require a lot of time to be delivered to base station (BS) but data from nearby neighboring nodes take less time to be processed at the intermediate nodes. In FCFS, many data packets arrive late and thus, experience long waiting times. Earliest Deadline First (EDF): Whenever a number of data packets are available at the ready queue and each packet has a deadline within which it should be sent to BS, the data packet which has the earliest deadline is sent first. This algorithm is considered to be efficient in terms of average packet waiting time and end-to-end delay.
PRIORITY
Packet scheduling schemes can be classified based on the priority of data packets that are sensed at different sensor nodes.
Non-preemptive:
In non-preemptive priority packet scheduling, when a packet t1 starts execution, task t1 carries on even if a higher priority packet t2 than the currently running packet t1 arrives at the ready queue. Thus t2 has to wait in the ready queue until the execution of t1 is complete.
Preemptive:
In preemptive priority packet scheduling, higher priority packets are processed first and can preempt lower priority packets by saving the context of lower priority packets if they are already running.
The widely used operative system of WSN and classify them as either cooperative or preemptive.
Cooperative scheduling schemes can be based on a dynamic priority scheduling mechanism, such as EDF and Adaptive Double Ring Scheduling (ADRS), that uses two queues with different priorities. The scheduler dynamically switches between the two queues based on the deadline of newly arrived packets. If the deadlines of two packets are different, the shorter deadline packet would be placed into the higher-priority queue and the longer deadline packet would be placed into the lower-priority one.
Preemptive scheduling can be based on the Emergency Task First Rate Monotonic (EF-RM) scheme. EF-RM is an extension to Rate Monotonic (RM), a static priority scheduling, whereby the shortest-deadline job has the highest priority. EF-RM divides WSN tasks into Period Tasks, (PT) whose priorities are decided by a RM algorithm, and non- period tasks, which have higher priority than PTs and can interrupt, whenever required, a running PT. Based on this predicted priority, the task scheduling takes place.
PACKET TYPE
Packet scheduling schemes can be classified based on the types of data packets, which are as follows.
Real-time packet scheduling:
Packets at sensor nodes should be scheduled based on their types and priorities. Real-time data packets are considered as the highest priority packets among all data packets in the ready queue. Hence, they are processed with the highest priority and delivered to the BS with a minimum possible end-to-end delay.
Non-real-time packet scheduling:
Non-real time packets have lower priority than real-time tasks. They are hence delivered to BS either using first come first serve or shortest job first basis when no real-time packet exists at the ready queue of a sensor node. These packets can be intuitively preempted by real-time packets.
NUMBER OF QUEUE
Packet scheduling schemes can also be classified based on the number of levels in the ready queue of a sensor node. These are as follows.
Single Queue:
Each sensor node has a single ready queue. All types of data packets enter the ready queue and are scheduled based on different criteria: type, priority, size, etc. Single queue scheduling has a high starvation rate.
Multi-level Queue:
Each node has two or more queues. Data packets are placed into the different queues according to their priorities and types. Thus, scheduling has two phases: (i) allocating tasks among different queues, (ii) scheduling packets in each queue. The number of queues at a node depends on the level of the node in the network. For instance, a node at the lowest level or a leaf node has a minimum number of queues whilst a node at the upper levels has more queues to reduce end-to-end data transmission delay and balance network energy consumptions.

PROBLEM DEFINITION

A. Existing System
Most existing Wireless Sensor Network (WSN) operating systems use First Come First Serve (FCFS) schedulers that process data packets in the order of their arrival time.
In non-preemptive packet scheduling schemes (interchangeably use as task scheduling in this paper), real-time data packets have to wait for completing the transmissions of other non-real-time data packets.
In preemptive priority scheduling, lower-priority data packets can be placed into starvation for continuous arrival of higher-priority data. In the multilevel queue scheduling algorithm, each node at the lowest level has a single task queue considering that it has only local data to process.
Most existing packet scheduling algorithms of WSN are neither dynamic nor suitable for large scale applications since these schedulers are predetermined and static, and cannot be changed in response to a change in the application requirements or environments.
B. Proposed System
Most of the wireless sensor network uses FCFS scheduling algorithm for scheduling the packets. These are static. It is not suitable for changing requirements of WSN. The multilevel queuing is used for static changes only. Hence now proposed to implement this DMP technique. In this technique, the tasks are scheduled to keep in the multilevel queuing based on requests and also implement without any deadlock.
The block diagram of the existing system has been shown in Figure 1.
The general working principle of the proposed DMP scheduling scheme is illustrated in Figure 2.
Scheduling data packets among several queues of a sensor node. Data packets that are sensed at a node are scheduled among a number of levels in the ready queue. Then, a number of data packets in each level of the ready queue are scheduled, Data1 is scheduled to be placed in the first level, Queue1. Then, Data1 and Data3 of Queue1 are scheduled to be transmitted based of different criteria.
The proposed scheduling scheme assumes that nodes are virtually organized following a hierarchical structure. Nodes that are at the same hop distance from the base station (BS) are considered to be located at the same level. Data packets of nodes at different levels are processed using the Time-Division Multiplexing Access (TDMA) scheme. For instance, nodes that are located at the lowest level and the second lowest level can be allocated timeslots 1 and 2, respectively. Consider three-level of queues, that is, the maximum number of levels in the ready queue of a node is three: priority 1 (pr1), priority 2 (pr2), and priority 3 (pr3) queues. Real-time data packets go to pr1, the highest priority queue, and are processed using FCFS. Non-real-time data packets that arrive from sensor nodes at lower levels go to pr2, the second highest priority queue. Finally, non-real time data packets that are sensed at a local node go to pr3, the lowest priority queue. The possible reasons for choosing maximum three queues are to process (i) real-time pr1 tasks with the highest priority to achieve the overall goal of WSNs, (ii) non real-time pr2 tasks to achieve the minimum average task waiting time and also to balance the endto- end delay by giving higher priority to remote data packets, (iii) non-real-time pr3 tasks with lower priority to achieve fairness by preempting pr2 tasks if pr3 tasks wait a number of consecutive timeslots.

MODULE DESCRIPTION

There are 4 modules to be implemented in the system. They are:
A. Node formation and Assumption
In this module, the node refers to the sensor; the sensor will give data to through WSN. The input is taken from the sensor, and then split that into real time data and non-real time data. The real time data are the data which dynamically changes and non real time data are data which are static.
The assumptions and implement DMP packet scheduling scheme are.
• Data traffic comprises only real-time and non-real-time data, e.g., real-time health data sensed by body sensors and non-real-time temperature data.
• All data packets (real-time and non-real-time) are of same size.
• Sensors are time synchronized.
• No data aggregation is performed at intermediate nodes for real-time data.
• Nodes are considered located at different levels based on the number of hop counts from BS.
• Timeslots are allocated to nodes at different levels using TDMA scheme, e.g., nodes at the lowest level, lk are assigned timeslot 1. Details of timeslot allocation are explained in the “Terminologies” subsection.
• The ready queue at each node has maximum three levels or sections for real-time data (pr1) non-real-time remote data (pr2) and non-real-time local data (pr3).
• The length of data queues is variable. For instance, the length of real-time data queue (pr1) is assumed to be smaller than that of non-real-time data queues (pr2 and pr3). However, the length of the non-real-time pr2 and pr3 queues are same.
• DMP scheduling scheme uses a multichannel MAC protocol to send multiple packets simultaneously.
B.Priority identification and Task Scheduling
Priority identification means identifies the input sensor data and find out the priority of the data. The priority is based on data, if real time data occurs, it considered as high priority and placed to Priority I, if non real time data occurs, it considered as next high priority and placed to Priority II, and if local data occurs, it considered as next high priority and placed to Priority III.
C.Queue Formation for Task
Each queue is assigned for priority based on the coming tasks. Here the queue can able to hold three tasks at a time. The queue gets formed based on the incoming task. The first level queue can store the real time (priority I) task, The second level queue can store the non real time (priority II) task and the third level queue can store the local (priority III) task.
D.DMP Packet Scheduling
This module is the dynamic multilevel priority packet scheduling, it dynamically schedule the task which is sensed from the sensor. The identification of data, task scheduling and queue formation process are completed. Using this, the DMP assign the task to the particular queue of the particular priority.

PERFORMANCE ANALYSIS

In this section, we analyze the performance of the proposed DMP task scheduling scheme in terms of end to end delay, and total waiting time.
A. End-to-End Delay
In the following, we formulate the average end-to-end delay of transmitting different priority data packets to the base station (BS). Again, we interchange ably use task and data to represent the data packets that are sensed at a sensor node.
Real-timePriority1QueueData:
Let us assume that a node X, residing at level lk is sensing a real-time, emergency event, e.g., fire detection. This node transmits the emergency priority1 data to BS through lk−1 intermediate levels. We consider the following scenario whereby every time a real data packet reaches a neighboring active node, y at an upper level, a non-real time lower priority data is being processed
while taskk,i is received by nodei at level k, i.e., lk do
if Type(taskk,i) = real − time then
put taskk,i into pr1 queue
else if node i is not at lowest levels then
if task k,i is not local then
put task k,i into pr2 queue
else
put taskk,i into pr3 queue
end if
else
put task k,i into pr2 queue
end if
Assume, the duration of a timeslot at lk ← t(k)
Data sensing time of nodei at lk ← senseT imek(t)
Remaining time after data sensing, t1(k) = t(k) − senseT imek(t)
Let total real-time tasks for nodei at lk ← nk(pr1)
Let procT imepr1(k) ← Σnk(pr1) j=1 procT ime(j)
if procT imepr1(k) < t1(k) then
All pr1 tasks of nodei at lk are processed as FCFS
Remaining time t2(k) ← t1(k) − procT imepr1(k)
Let, total pr2 tasks for nodei at lk ← nk(pr2)
Let procT imepr2(k) ← Σnk(pr2) j=1 procT ime(j)
if procT imepr2(k) < t2(k) then
All pr2 tasks are processed as FCFS
pr3 tasks are processed as FCFS for the remaining time,
t3(k) ← t2(k) − procT imepr2(k)
else
pr2 tasks are processed for t2(k) time
no pr3 tasks are processed
end if
else
only pr1 tasks are processed for t1(k) time
no pr2 and pr3 tasks are processed
end if
if pr1 queue empty & pr2 tasks are processed α consecutive timeslots
since t(k) ≤ procT imepr2(k) then
pr2 tasks are preempted at α + 1, . . ., α + j timeslots by pr3 tasks
if pr1 task arrives during any of α+1, α+2, . . ., α+j timeslots then
pr3 tasks are preempted and pr1 tasks are processed
context are transferred again for processing pr3 tasks
end if
end if
end while
at that node. Hence, data delivery at y is preempted to send real-time data.
Transmission time or delay that is required to place a realtime data from a node into the medium is equal to datapr1/st. The propagation time or delay to transmit data from the source to destination can be formulated as d/sp .Considering the above mentioned scenario the end-to-end delay for sending a realtime data satisfies the following inequality.
equation (1)
where datapr1 denotes the real-time data size, st denotes the data transmission speed, d is the distance from the source node to BS, where d = Σlk i=1 di, sp denotes the propagation speed over the wireless medium, pr1proc(t) is the processing time of real-time tasks at each node, and toverhead is an overhead in terms of context switching and queuing time (including time for preemption). However, a real-time task t1 has to wait if there is a number, npr1, of a real-time task ahead of t1 at the pr1 queue. We assume that all real-time data have the same size.
Therefore, the end-to-end delay for a real-time task t1 considering that t1 has npr1 number of real-time tasks ahead of it,
equation (2)
Non-real time Priority 2 Queue Data:
Tasks at pr2 queue can be preempted by real-time ones. The transmission time or delay to place pr2 data from a node into the medium can be therefore computed as datapr2/st. Thus, the total end-to-end delay for a pr2 task that can be processed in the same timeslot exceeds
equation (3)
Non-real time Priority 3 Queue Data:
In the best case, when no task is available at the pr1 and pr2 queues, the end-to-end delay of the pr3 tasks will be almost equal to that of the pr1 queue tasks (Equation 1) although it can differ slightly based on the size of the pr3 queue task. We assume that the pr3 queue tasks are processed by preempting pr2 queue tasks if for α consecutive timeslots there is no task at the pr1 queue but there are tasks available at the pr2 queue. Let tk denote the length of a timeslot of nodes at level lk. The transmission time or delay to place pr3 data from a node into the wireless medium is equal to datapr3/st.
However, during the processing of the pr3 queue tasks, these tasks can be preempted by realtime tasks. They are processed again after the completion of real-time tasks. Thus, the end-to-end delay for processing pr3 tasks will be exceeding
equation (4)

CONCLUSION

Thesis, DMP uses three-level of priority queues to schedule data packets based on their types and priorities. It ensures minimum end-to-end data transmission for highest priority data while exhibiting acceptance fairness towards lowest priority data. Experimental results show that the proposed DMP packet scheduling scheme has better performance than the existing FCFS and Multilevel Queue Scheduler in terms of the average task waiting time and end to-end delay, deal with the circular wait and preemptive conditions to prevent deadlock from occurring and would also validate the simulation result using a real test-bed.

ACKNOWLEDGEMENT

We thank the Sri Subramanya College of Engineering & Technology for the motivation and encouragement for giving the opportunity to do this research work as successful one.

Figures at a glance

Figure 1 Figure 2
Figure 1 Figure 2
 

References