More Related Content
Similar to Review on operating systems and routing protocols for wireless sensor (20)
More from IAEME Publication (20)
Review on operating systems and routing protocols for wireless sensor
- 1. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
331
REVIEW ON OPERATING SYSTEMS AND ROUTING PROTOCOLS
FOR WIRELESS SENSOR NETWORKS
Ms. Preetee K. Karmore
HOD, CSE Department, Dr. Babasaheb Ambedkar College of Engineering & Research
Nagpur, India.
Ms. Supriya S. Thombre
Asst. Prof, CT Department, Yeshwantrao Chavan College of Engineering
Nagpur, India.
Mr. Gaurishankar L. Girhe
Principal, Smt. Radhikatai Pandav, Polytechnic
Nagpur, India.
ABSTRACT
Wireless sensor networks (WSNs) are highly distributed networks consists of small,
lightweight wireless nodes, deployed in large numbers to monitor the environment or system
by the measurement of physical parameters such as temperature, pressure, or relative
humidity. Some of the applications of wireless sensor networks includes military or border
surveillance, health care, environment, industrial process control and so on. Operating system
(OS) support for WSNs plays a central role in building scalable distributed applications that
are efficient and reliable. This paper will help both OS developers and OS users. With OS
developers, they will know what has worked in previous OSes and what has not. With OS
users, they know the features of existing sensor network OSes, so they can select a sensor
network OS that is the most appropriate for their application. In this paper we provide an
overview of operating systems for wireless sensor networks namely TinyOS, MANTIS,
Contiki, RetOS, MagnetOS and routing protocols used for routing information from source to
destination.
Keywords: Wireless Sensor Network, Operating System, MANET, TinyOS, RetOS,
MagnetOS, Contoki.
INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING
& TECHNOLOGY (IJCET)
ISSN 0976 – 6367(Print)
ISSN 0976 – 6375(Online)
Volume 4, Issue 3, May-June (2013), pp. 331-339
© IAEME: www.iaeme.com/ijcet.asp
Journal Impact Factor (2013): 6.1302 (Calculated by GISI)
www.jifactor.com
IJCET
© I A E M E
- 2. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
332
I. INTRODUCTION
Wireless sensor network (WSN) is a large network of sensor nodes and these nodes are
directly interacting with the environment by sensing physical parameters such as temperature,
humidity etc. All the sensor nodes send and receive data to/from a base station (BS). The base
station usually serves as a gateway to some other network [1]. Typically, a sensor node is a
miniature device that includes four main components: a sensing unit for data acquisition, a
microcontroller for local data processing and some memory operations, a communication unit
to allow the transmission/reception of data to/from other connected devices and finally a
power source which is usually a small battery. WSNs support a wide range of applications
such as target tracking, environmental monitoring, system control, health monitoring or
exploration in hostile environment [2].
The main features of WSNs are: scalability with respect to the number of nodes in the
network, self-organization, self-healing, energy efficiency, a sufficient degree of connectivity
among nodes, low-complexity, low cost and size of nodes [3].
II. OPERATING SYSTEMS FOR WIRELESS SENSOR NETWORKS
A. TinyOS
TinyOS is a tiny micro-threaded OS that attempts to address two issues: how to
guarantee concurrent data flows among hardware devices, and how to provide modularized
components with little processing and storage overhead. These issues are important since
TinyOS is required to manage hardware capabilities and resources effectively while
supporting concurrent operation in an efficient manner [4]. The execution model of TinyOS
consists of interrupts and tasks. Interrupts execute at a higher priority and can preempt the
execution of tasks. Tasks execute at a lower priority and are scheduled in a FIFO manner.
Tasks in TinyOS are written in a run-to-completion manner, and they cannot be
preempted or self-suspended. For this reason, I/Os are done in split phases, i.e., a request is
done at the end of a task while signal invokes the start of the next task. In order to provide a
better support for the component architecture and execution model of TinyOS, the nesC
language [14] was designed for programming based on TinyOS [12].
B. MANTIS
The MANTIS Operating System (MOS) is an open source embedded multithreaded
operating system for wireless micro sensor platforms. MANIS gets its name from
MultimodAl system for NeTworks of In-situ wireless Sensors. It is written in C. MANTIS is
implemented in a lightweight RAM footprint that fits in less than 500 bytes of memory, this
includes kernel, scheduler, and network stack. MOS has a power-efficient scheduler that
sleeps the microcontroller when the sleep() function is called which reduces the consumption.
A big part in the design features of MOS is its flexibility in the form of cross platform
support and ability to test on PCs, PDAs, and different micro sensor platforms. MOS supports
remote management of in-situ sensors through dynamic reprogramming and remote login. It
has a low barrier to entry in terms of programming for sensor networks. Also, MOS supports
advanced sensor OS features like multimodal prototyping, dynamic reprogramming, and
remote shells.
MANTIS is still a work in progress, a few things need to be improved upon, low
power management needs to be improved (though the sleep () function does help in saving
- 3. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
333
energy, they are working on developing even more efficient ways as well), demonstrating
reliability or code updated over the network, optimizing the size of these updates, and
ensuring the security as well as the authenticity of updates need to be improved as well as a
few other key things [5].
Figure 1: MANTIS OS architecture
C. Contiki
Contiki [18], is a lightweight open source OS written in C for WSN sensor nodes.
Contiki is a highly portable OS and it is build around an event-driven kernel. Contiki
provides preemptive multitasking that can be used at the individual process level. A typical
Contiki configuration consumes 2 kilobytes of RAM and 40 kilobytes of ROM. A full
Contiki installation includes features like: multitasking kernel, preemptive multithreading,
proto-threads, TCP/IP networking, IPv6, a Graphical User Interface, a web browser, a
personal web server, a simple telnet client, a screensaver, and virtual network computing[18].
Preemptive threading is enabled on a per-process level and support for real-time
applications provided through an extra timer called rtime. Contiki has become fairly popular
and is attaining a high-quality place in the WSNs community [19].
D. RetOS
Resilient, Expandable, and Threaded Operating System, which has been developed
specifically for wireless sensor networks to provide multithreaded programming interface,
system resiliency, kernel extensibility via loadable module, and network abstraction [20].
RETOS is a multithreaded operating system, hence it provides the commonly used thread
model of programming interface to developers.
In Wireless Sensor Networks Resilient operating system mechanism depends on dual
mode operation and static/dynamic code checking. This mechanism guarantees stack, data,
code and hardware safety on MMU-less hardware without restriction of the standard C
language [19].
RETOS uses a software technique, called application code checking (ACC), to
perform static and dynamic code checks. The goal of ACC is to prevent user applications
from accessing memory outside of its legal boundary and direct hardware manipulation.
- 4. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
334
E. MagnetOS
MagnetOS is a distributed adaptive operating system designed specifically for
application adaptation and energy conservation. MagnetOS is a distributed operating system
for ad-hoc and sensor networks whose goal is to enable power-aware, adaptive, and easy-to-
develop ad-hoc networking applications. MagnetOS automatically and transparently
partitions applications into components and dynamically finds a placement of these
components on nodes within the ad-hoc network to reduce energy consumption and increase
system longevity.
MagnetOS is a single system image (SSI) or a single unified Java virtual machine that
includes static and dynamic components. The static components rewrite the application in
byte-code level and add necessary instructions on the semantics of the original applications.
The dynamic components are used for application monitoring, object creation, invocation,
and migration. SSI abstraction provides more freedom in object placement and simplifies
application development. MagnetOS provide an interface to programmers for explicit object
placement and override of the automatic object placement decisions [4].
III. ROUTING PROTOCOLS FOR WIRELESS SENSOR NETWORKS
In a WSN, overhead is measured primarily in terms of bandwidth utilization, power
consumption, and the processing requirements on the mobile nodes. Finding a strategy to
balance these competing needs efficiently forms the basis of the routing challenge. The
design of routing protocols for WSNs must consider the power and resource limitations of the
network nodes, the time-varying quality of the wireless channel, and the possibility for packet
loss and delay. In the following sections, several routing protocols that have been proposed
for data dissemination in WSNs are described.
A. Flooding and Its Variants
Flooding is a common technique frequently used for path discovery and information
dissemination in wired and wireless ad hoc networks. The routing strategy is simple and does
not rely on costly network topology maintenance and complex route discovery algorithms.
Flooding uses a reactive approach whereby each node receiving a data or control
packet sends the packet to all its neighbors. After transmission, a packet follows all possible
paths. Unless the network is disconnected, the packet will eventually reach its destination.
Furthermore, as the network topology changes, the packet transmitted follows the new routes.
Flooding in its simplest form may cause packets to be replicated indefinitely by
network nodes. To prevent a packet from circulating indefinitely in the network, a hop count
field is usually included in the packet. Initially, the hop count is set to approximately the
diameter of the network. As the packet travels across the network, the hop count is
decremented by one for each hop that it traverses. When the hop count reaches zero, the
packet is simply discarded. Flooding can be further enhanced by identifying data packets
uniquely, forcing each network node to drop all the packets that it has already forwarded.
Such a strategy requires maintaining at least a recent history of the traffic to keep track of
which data packets have already been forwarded.
B. LEACH (Low Energy Adaptive Clustering Hierarchy)
Heinzelman, et al.[13] introduced a hierarchical clustering algorithm for sensor
networks, called Low Energy Adaptive Clustering Hierarchy (LEACH). LEACH is a cluster-
- 5. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
335
based protocol, which includes distributed cluster formation [7]. LEACH is self organizing,
adaptive clustering protocol.
LEACH aims to distribute energy consumption at every node in the sensor network
uniformly, aggregate data, i.e. support data fusion and localized coordination, between nodes
to form and operate clusters. All nodes in the network organize themselves into local clusters,
with one node in the local cluster acting as cluster head. All nodes communicate only to the
cluster head, and the cluster head conveys data to the base station. Nodes with higher
capability advertise themselves as cluster heads, other nodes join the cluster head which is
nearest to them. As cluster head has to spend lot of energy ,after certain time, randomized
rotation of the cluster head is done, so that only node does not drain its energy. Every cluster
head will prepare a schedule, to each of its members. The members communicate with the
head only during that duration and sleep for the rest of the time.
The operation of LEACH is divided into rounds. Each round begins with a set-up
phase when the clusters are organized, followed by a steady-state phase where several frames
of data are transferred from the nodes to the cluster-head and onto the base station [8].
Figure 2: LEACH Protocol
• Setup Phase:
During the setup phase, a predetermined fraction of nodes, p, choose themselves as
cluster-heads. This is done according to a threshold value, T(n). The threshold value depends
upon the desired percentage to become a cluster-head- p, the current round r, and the set of
nodes that have not become the cluster-head in the last 1/p rounds, which is denoted by G.
The formula is as follows:
Every node wanting to be the cluster-head chooses a value, between 0 and 1. If this
random number is less than the threshold value, T(n), then the node becomes the cluster-head
for the current round. Then each elected CH broadcasts an advertisement message to the rest
of the nodes in the network to invite them to join their clusters. Based upon the strength of
- 6. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
336
the advertisement signal, the non-cluster head nodes decide to join the clusters. The
noncluster head nodes then informs their respective cluster-heads that they will be under their
cluster by sending an acknowledgement message. After receiving the acknowledgement
message, depending upon the number of nodes under their cluster and the type of information
required by the system (in which the WSN is setup), the cluster-heads creates a TDMA
schedule and assigns each node a time slot in which it can transmit the sensed data.
The TDMA schedule is broadcasted to all the cluster-members. If the size of any
cluster becomes too large, the cluster-head may choose another cluster-head for its cluster.
The cluster-head chosen for the current round cannot again become the cluster-head until all
the other nodes in the network have not become the cluster-head [10].
• Steady Phase:
During the steady phase, the sensor nodes i.e. the non-cluster head nodes starts
sensing data and sends it to their cluster-head according to the TDMA schedule. The cluster-
head node, after receiving data from all the member nodes, aggregates it and then sends it to
the base-station. After a certain time, which is determined a priori, the network again goes
back into the setup phase and new cluster-heads are chosen.
C. SPIN (Sensor Protocols for Information via Negotiation)
SPIN stands for Sensor Protocol for Information via Negotiation. These protocols are
designed to address the deficiency of flooding and gossiping. SPIN uses negotiation and
resources adaption to address the deficiencies of flooding. The main objective of these
protocols is to efficiently disseminate observations gathered by individual sensor nodes to all
the sensor nodes in the network [4].
SPIN has three types of messages: ADV, REQ, and DATA. A sensor node broadcasts
an ADV containing meta-data describing actual data. If a neighbor is interested in the data, it
sends REQ for the data. Then the sensor node sends the actual DATA to the neighbor. The
neighbor again sends ADVs to its neighbors and this process continues to disseminate the
data throughout the network. Sensor Protocol for Information via Negotiation SPIN is based
on data-centric routing, where the nodes advertise the available data through an ADV and
wait for requests from interested nodes.
Figure 3: SPIN Protocol
In figure 3, node 1 sends ADV message to all its neighbors, 2 and 3. Node 3 requests
for the data using REQ message, for which node 1 send data using message DATA to node 3.
1
2 3
4
5
ADV
DATA
ADV
ADV
ADV
REQ
- 7. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
337
After receiving the data Node 3 sends ADV message to its neighbors 4 and 5 and the process
continues. It does not send to 1 because 3 know that it received data from 1.
The data is described in the ADV packet using high level data descriptors, which are
good enough to identify the data. These high level data descriptors are called meta-data. The
meta-data of two different data’s should be different and meta-data of two similar data should
be similar. The use of meta-data prevents, the actual data being flooded throughout the
network. The actual data can be given to only the nodes which need the data. This protocol
also makes nodes more intelligent, every node will have a resource manager, which will
inform each node about the amount various resources left in the node. Accordingly the node
can make a decision regarding, whether it can as forwarding node or not.
D. PEGASIS (Power-Efficient Gathering in Sensor Information Systems)
PEGASIS is a data-gathering protocol based on the assumption that all sensor nodes
know the location of every other node, that is, the topology information is available to all
nodes. Also, any node has the required transmission range to reach the BS in one-hop, when
it is select as a leader. The main objectives of PEGASIS are twofold. First, the protocol aims
at extending the lifetime of a network by achieving a high level of energy efficiency and
uniform energy consumption across all network nodes. Second, the protocol strives to reduce
the delay that data incur on their way to the sink [4].
A near optimal chain based protocol that is an improvement over LEACH. Instead of
forming multiple clusters, PEAGSIS construct a node chain when nodes are placed randomly
in a play field then each node communicates only with a close neighbor and takes turns
transmitting to the base station, thus reducing the amount of energy spent per round[16]. The
chain construction is performed in a greedy way. Figure 4 shows node 0 connected node 3, 1
connecting to node 2. When a node fails, the chain is reconstructed in the same manner by
avoiding the dead node [6].
Figure 4: Chain construction using the greedy algorithm.
IV. CONCLUSION
The objectives of this paper were to provide overview of various operating systems
and routing protocols for Wireless Sensors Network and to present the significant features of
each one. Routing protocols have the common objective of trying to extend the lifetime of the
sensor network. By examining some existing sensor network OSes, we know the strengths
and weaknesses of a number of different OSes.
- 8. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
338
REFERENCES
[1] Shilpa Mahajan, Jyoteesh Malhotra, Sandeep Sharma, "Improved Enhanced Chain
Based Energy Efficient Wireless Sensor Network", Wireless Sensor Network, 2013, 5,
84-89, doi:10.4236/wsn.2013.54011 Published Online April 2013.
[2] Ridha Soua and Pascale Minet, "A Survey on Energy Efficient Techniques in Wireless
Sensor Networks", 978-1-4577-1193-0/11/$26.00 ©2011 IEEE.
[3] Chiara Buratti, Andrea Conti, Davide Dardari and Roberto Verdone, "An Overview on
Wireless Sensor Networks Technology and Evolution", Sensors 2009, 9, 6869-
6896;OPEN ACCESS sensors ISSN 1424-8220 doi:10.3390/s90906869.
[4] Kazem Sohraby, Danial Minoli, Taieb Znati, “Wireless Sensor Networks Technology,
Protocols, and Applications", A John Wiley & Sons , INC. ,Publication.
[5] Shah Bhatti, James Carlson, Hui Dai, Jing Deng, Jeff Rose, Anmol Sheth, Brian
Shucker, Charles Gruenwald, Adam Torgerson, Richard Han, "MANTIS OS: An
Embedded Multithreaded Operating System for Wireless Micro Sensor Platforms",
Mobile Networks & Applications (MONET) Journal, Special Issue on Wireless Sensor
Networks, August 2005.
[6] Neha Rathi, Jyoti Saraswat, Partha Pratim Bhattacharya, "A Review On Routing
Protocols For Application In Wireless Sensor Networks", International Journal of
Distributed and Parallel Systems (IJDPS) Vol.3, No.5, September 2012.
[7] Baiping Li, Xiaoqin Zhang, "Research and Improvement of LEACH Protocol for
Wireless Sensor Network", International Conference on Information Engineering,978-
1-61275-024-8/10/$25.00 ©2012 IERI.
[8] Meena Malik,Dr. Yudhvir Singh, "Analysis of LEACH Protocol in Wireless Sensor
Networks", International Journal of Advanced Research in Computer Science and
Software Engineering, Volume 3, Issue 2, February 2013.
[9] Thang Vu Chien, Hung Nguyen Chan, and Thanh Nguyen Huu,"A Comparative Study
on Operating System for Wireless Sensor Networks", ICACSIS 2011 ISBN: 978-979-
1421-11-9
[10] Nutan Sindhwani, Rohit Vaid, "V Leach: An Energy Efficient Communication
Protocol For Wsn", Vol. 2, No. 2, February-March 2013, ISSN: 2320-2491.
[11] A. K. Dwivedi, M. K. Tiwari, O. P. Vyas, "Operating Systems for Tiny Networked
Sensors: A Survey", International Journal of Recent Trends in Engineering, Vol. 1, No.
2, May 2009.
[12] Wei Dong, Chun Chen, Xue Liu, and Jiajun Bu, "Providing OS Support for Wireless
Sensor Networks: Challenges and Approaches", IEEE Communications Surveys And
Tutorials.
[13] W. Heinzelman, A. Chandrekasam, and H. Balakrishnan, “Energy-Efficient
Communication Protocol for Wireless Microsensor Networks”, In Proceedings of the
Hawaii Conference on System Science, Jan. 2000.
[14] D. Gay, P. Levis, R. von Behren, M. Welsh, E. Brewer, and D. Culler,“The nesC
language: A holistic approach to networked embedded systems,” in Proceedings of
ACM PLDI, 2003.
[15] Dunkels A, Gronvall B, Voigt T. “Contiki a Lightweight and Flexible Operating System
for Tiny Networked Sensors”, Proceedings of the 9th Annual IEEE International
Conference on Local Computer Networks; Washington, DC, USA. October 2004; pp.
455–462.
- 9. International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 3, May – June (2013), © IAEME
339
[16] S. Lindsey and C.S. Raghavendra, “PEGASIS: Power Efficient Gathering in Sensor
Information Systems”, Proceedings of the IEEE Aerospace Conference, Big Sky,
Montana, March 2002, vol. 3.
[17] Hojung Cha, Sukwon Choi, Inuk Jung, Hyoseung Kim, Hyojeong Shin,Jaehyun Yoo,
Chanmin Yoon,"RETOS: Resilient, Expandable, and Threaded Operating System for
Wireless Sensor Networks",IPSN’07, April 25-27, 2007, Cambridge, Massachusetts,
U.S.A.
[18] Muhammad Omer Farooq and Thomas Kunz, "Operating Systems for Wireless Sensor
Networks: A Survey", sensors ISSN 1424-8220, 2011.
[19] Leelavathi G, Shaila K, Venugopal K R and L M Patnaik, "Design Issues On Software
Aspects And Simulation Tools For Wireless Sensor Networks", International Journal of
Network Security & Its Applications (IJNSA), Vol.5, No.2, March 2013.
[20] R.Rajasree and Dr.G.Kalivarathan, “A Review on Routing Protocols and Non
Uniformity with Wireless Sensor Networks”, International Journal of Computer
Engineering & Technology (IJCET), Volume 3, Issue 3, 2012, pp. 348 - 354,
ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375.
[21] Poonam Thakur and M.Vijaya Raju, “Survey on Routing Techniques for Manets and
Wireless Sensor Networks: A Comparison”, International Journal of Computer
Engineering & Technology (IJCET), Volume 4, Issue 1, 2013, pp. 275 - 283,
ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375.
[22] Neeraj Tiwari, Rahul Anshumali and Prabal Pratap Singh, “Wireless Sensor Networks:
Limitation, Layerwise Security Threats, Intruder Detection”, International Journal of
Electronics and Communication Engineering & Technology (IJECET), Volume 3,
Issue 2, 2012, pp. 22 - 31, ISSN Print: 0976- 6464, ISSN Online: 0976 –6472.