Вы находитесь на странице: 1из 51

Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Table of Contents
CHAPTER 1 INTRODUCTION 3
1.1. Properties of Wireless Sensor Network: 3
1.2. Communication Patterns: 3
1.3. Applications: 4
1.4. Main sources of energy waste: 4
1.5. Major causes of energy waste: 4
1.6. Attributes Of WSN: 5
CHAPTER 2 MAC LAYER PROTOCOLS 6
2.1. MAC protocols for WSN: 6
2.2. Slotted Protocols: 7
2.2.1. SMAC: 7
2.2.2. Timeout- MAC (TMAC): 13
2.2.3. DMAC: 15
CHAPTER 3 ROUTING IN WIRELESS NETWORKS 17
3.1. Overview 17
3.2. Routing 18
3.2.1. Routing Table 18
3.2.2. Different Routing schemes: 19
3.2.3. Static and Dynamic Routing 20
3.3. The CTR (Critical Transmission Range) for Connectivity: 20
3.4. Dijkstra's algorithm 23
3.4.1. Introduction 23
3.4.2. Algorithm 23
3.4.3. Running time 24
CHAPTER 4 ON-DEMAND ROUTING PROTOCOLS 25
4.1. Dynamic Source Routing Protocol 26
4.2. Advantages and Disadvantages 28
CHAPTER 5 ENERGY EFFICIENT ROUTING 29
5.1. Energy-Efficient Unicast 29

1
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

5.1.1.Minimize energy per packet (or per bit) 29


5.1.2. Maximize network lifetime 30
5.1.3. Routing considering available battery energy 31
5.1.4. Minimum Total Transmission Power Routing (MTPR) 32
CHAPTER 6 HDP: ENERGY EFFICIENT ROUTING ALGORITHM 33
6.1 Related Work 33
6.1. 1 Approach 34
6.2. HDP algorithm: 35
6.2.1. Flow Chart 35
6.2.2. Analysis 37
6.2.3. Calculation: 38
CHAPTER 7 SIMULATION 40
7.1. Implementation with OMNET++ 40
7.1.1. Basic Concept: 40
7.1.2. Network Topology 42
7.1.3. Execution: 44
7.2. Performance Analysis: 47
CONCLUSIONS AND FUTURE WORK 49
Bibliography 50

2
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 1 INTRODUCTION

Wireless Sensor Network is a Special wireless Network with large number of nodes called
sensor nodes to monitor different types of physical or Environmental Conditions such as
temperature, sound, vibration, pressure, motion or pollutants at different locations. Sensor
nodes can be imagined as small computers, extremely basic in terms of their interfaces and
their components. The sensor nodes are equipped with some basic elements like
Microcontroller, sensor, Radio transceiver and an energy source, usually a battery. The base
stations are one or more distinguished components of the WSN with much more
computational, energy and communication resources. They act as a gateway between sensor
nodes and the end user.

The development of wireless sensor networks was originally motivated by military


applications. But now a day, wireless sensor networks are used in many civilian application
areas, including environment and habitat monitoring, healthcare applications, home
automation, traffic control etc.

1.1. Properties of Wireless Sensor Network:


Wireless Sensor Network has no Infrastructure. The sensor nodes are communicated in Ad-hoc
fashion i.e. via wireless radio interface. They must organize themselves to form multihop wireless
communication network. The nodes have finite source of energy i.e. they are generally battery powered.
These all are the main properties of Wireless Sensor Network. There are some secondary properties like
Heterogeneity of nodes, large scale of deployment, unattended operation etc.

1.2. Communication Patterns:


There are basically three types of communication Patterns: broadcast, converge cast, and local
gossip. Broadcast communication pattern is generally used by a base station to transmit message to all
its immediate neighbors, who in turn forward the message to all their neighbors by re-broadcasting it. In
practice, not all messages are re-broadcast, duplicate messages are filtered out. The end result is that all
nodes have received a copy of the original message of at least one neighbor. It is quite different from
broadcast type packet. For the former, all nodes of the network are intended receivers whereas for the
latter the receivers are all the nodes within the communication range of the sender. In converge cast, a
group of sensor communicates to a specific sensor. The destination node could be a base station, cluster
head or data fusion center. In local gossip, a sensor node sends a message to its neighboring nodes
within a range.

3
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

In protocols that include clustering, cluster heads communicate with their members and
thus the receivers are not all neighbors of the cluster head, but just a subset of the neighbors. In such
scenarios, there is a fourth type of communication pattern, called multicast, where a sensor sends a
message to a specific subset of sensors.

1.3. Applications:
The applications for Wireless Sensor Networks are many and varied.[13] They are used in
commercial and industrial applications to monitor data which would be difficult or expensive to monitor
using wired sensors. They could be applied in wilderness areas, where they would remain for many
years without the need to recharge/replace their power supplies. They could form a perimeter about a
property and monitor the progression from one node to the next. There are many uses for WSNs.
Typical applications of WSNs include monitoring, tracking, and controlling. Some of the specific
applications are habitat monitoring, object tracking, nuclear reactor controlling, fire detection, traffic
monitoring, etc. In a typical application, a WSN is scattered in a region where it is meant to collect data
through its sensor nodes.

1.4. Main sources of energy waste:


In wireless sensor network, sensors have limited energy to harvest or store.[13] So, we need to
reduce the energy waste in order to increase the lifetime of the sensor nodes. However, when sensor
nodes are active, radio consumes the major part of the energy and MAC protocols control the radio
activity. So, we must make the MAC energy-efficient such that Nodes must operate for a number of
years and sensor networks function autonomously without any external control.

1.5. Major causes of energy waste:


When the standard IEEE 802.11 (CSMA/CA) protocol, developed for Wireless LANs would be run
on a sensor network with a little traffic, much energy is wasted due to the following causes[13]:

Idle listening occurs when the sensor node listens to an idle channel to receive possible traffic. Since
the node does not know when it will be the receiver of frame, it must keep its radio in ready-to-receive
mode which consumes almost so much energy as Receive mode.

Collision is another cause of energy waste. When two packets are transmitted at the same time,
they collide and become corrupted and must be discarded. Then the retransmissions of those packets
are necessary and it consumes energy too. Moreover, the retransmission of messages may actually
degrade performance because of the additional traffic causes more collisions, in turn triggering even
more retransmissions, and cascading into total collapse in the worst case. So, all MAC protocols should
try to avoid collisions.

Overhearing occurs when a node receives and decodes packets that are destined to other nodes.
Overhearing unnecessary packets can be a major cause of energy waste when traffic load is heavy and
node density is high.

4
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Protocol overhead is another cause of energy waste. Since MAC headers and control messages do
not contain any useful application data, although their transmission consumes energy.

These are also the characteristics of the Traditional MAC protocols and these characteristics also suggest
that Traditional MAC protocols are not suitable for wireless sensor network without any modification.

1.6. Attributes Of WSN:


A good Wireless Sensor Network should ensure the following attributes.

Collision avoidance is the basic task of all MAC protocols. It determines when and how a node can
access the medium and send data. MAC protocols must avoid some level of Collisions but the overall
collisions are not always completely avoided in regular operation.
Energy efficiency is another most important attributes for MAC protocols. In wireless sensor
network, the sensor nodes are generally battery powered and it is very difficult to change or recharge
batteries for these nodes. So, it must be cheap enough to be discarded rather than recharged, or must
be efficient enough to operate only on ambient power sources.
Scalability and adaptively are the related attributes of a MAC protocol which is based on the
changes in network size, node density and topology. Some nodes may die over time or some new nodes
may join later or some nodes may move to different locations throughout the network. A good MAC
protocol should accommodate all such changes gracefully.
Latency refers to the delay from when a sender has a packet to send until the receiver successfully
receives the packet. The Latency should be low for a good MAC protocol.
Throughput means the amount of data that is successfully transferred from a sender to a receiver at
a given time. It is often measured in bits or bytes per second. There are many factors that affect the
throughput, including efficiency of collision avoidance, channel utilization, latency and control overhead.
A related attribute is goodput, which is the throughput measured only by data received by the receiver
without any errors.

The above attributes discussed, are the primary attributes. There are also some secondary attributes like
Low error rates, Fairness, power control etc.

5
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 2 MAC LAYER PROTOCOLS

The main task of MAC is to assist each node to decide when and how to access the channel i.e. when to
send a frame, when to listen or when to sleep. There are many MAC protocols that have been
developed for wireless voice and data communication networks. Typical examples include the time
division multiple access (TDMA), code division multiple access (CDMA), and contention-based protocols
like IEEE 802.11.

2.1. MAC protocols for WSN:


There are two propositions that should be taken in order to reduce energy waste in Wireless
Sensor Network –

1. Controlling the radio to avoid or reduce energy waste from the above sources i.e. turning off the
radio when it is not needed.
2. To avoid sending frame to node that is sleeping.
That’s why there are two basic classes of MAC protocols defined in Wireless Sensor Network

1. Slotted MAC protocol: This protocol divides the channel into sub-channels or pre-allocates the channel
for each node to use. Examples of this type of protocol are SMAC, TMAC, and DMAC etc.

2. Sampling MAC protocol: Unlike slotted protocols, Sampling protocols do not divide the channel into
sub-channels or pre-allocate the channel for each node to use. Here, a common channel is shared by all
nodes and it is allocated on-demand. A contention mechanism is employed to decide which node has
the right to access the channel at any moment. An example of this type of protocol is WiseMAC.

MAC protocols

Slotted protocols Sampling protocols


1. SMAC 1. Wise MAC
2. TMAC
3. DMAC

Figure 1: Classification of MAC protocols

There is another class of MAC protocol, called Hybrid MAC protocol which is the combination of the
above two basic classes. An example of this type of protocol is ZMAC.

6
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

2.2. Slotted Protocols:


In this section, we discuss about different types of slotted protocols like SMAC, TMAC and DMAC.

2.2.1. SMAC:
Sensor-MAC or SMAC is a MAC protocol designed for Wireless Sensor Network to reduce
energy consumption, while supporting good scalability and collision avoidance. The main contribution of
SMAC is its fixed duty-cycle approach which reduces idle listening .WSN consists of battery operated
sensor nodes. The neighboring nodes form virtual clusters to set up a common sleep schedule as shown
in the Figure given below:

Figure 2: Sensor Nodes Forming Virtual Clusters

As shown in the Figure 2, two or more sensor nodes form virtual clusters. Cluster1 follows
Schedule1 whereas cluster 2 follows schedule2. If a node resides in two different clusters, it wakes up at
the listen periods of both clusters.

Now to meet the design goal, SMAC generally consists of following three components:

o Periodic Listen and Sleep.


o Collision and overhearing avoidance.
o Message passing.

SMAC Components

Periodic Listen & Collision & Message passing


Sleep overhearing avoidance.
• Basic scheme.
• Choosing &
Maintaining Schedules
• Maintaining Synchronizations

Figure 3: Classification of SMAC

7
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

2.2.1.1. Periodic Listen and Sleep:


The main goal of periodic listen and sleep is to reduce Idle Listening. Each node goes to sleep
for some time, and then wakes up and listens to the medium. During sleep, the node turns off its radio,
and sets a timer to awake it later.

Figure 4: Periodic Listen and Sleep

Figure 5: Basic scheme Of Periodic Listen and Sleep

2.2.1.1.1. Basic Scheme:

Figure 5 Shows the basic scheme of the S-MAC protocol. Here two cases may be happened–

a) When there is data traffic in the medium, i.e. suppose several nodes want to send data to node B
(where node B is the receiver), among all the nodes suppose node A wins the competition for sending
out its SYNC packet. Assuming to have data traffic towards node B in its queue, node A again wins the
competition for sending a RTS packet (Figure 5(a)). Upon receiving this RTS, node B may acknowledge to
node A with its CTS packet. Successful exchange of RTS/CTS packets between two nodes A and B implies
that they should stay awake in the whole sleep period, followed by the current listen interval, for their
data communication .Again, all other nodes which are not involved in data communication can enter
into a sleep mode.

b) When there is no data traffic in the medium. In this case, node A broadcasts its SYNC packet. After
that, node A does not have any data to send and also all other stations do not have any data to send. So,
all the nodes will wake up to its listen period and then sleep.

8
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

In periodic Listen and Sleep, Schedule Distributions among all the sensor nodes in the network is very
important. Here generally two cases may be possible:

1) One node wants to talk to multiple nodes.

In this case, Nodes exchange their schedules by broadcasting it to all its immediate neighbors.
This ensures that all neighboring nodes can talk to each other even if they have different schedules as
shown in Figure 6 (Case 1).

2) Multiple nodes want to talk to one node.

In this case, they need to contend for the medium when the node is listening. The contention
mechanism is the same as that in IEEE 802.11(Wireless LAN), i.e., using RTS (Request To Send) and CTS
(Clear To Send) packets. The node who first sends the RTS packet wins the medium, and the receiver will
reply with a CTS packet. When data transmission is started, they do not follow their sleep schedules
until they finish transmission as shown in Figure 6 (Case 2).

The disadvantage of Periodic Listen and Sleep scheme is to increase latency due to the periodic sleep of
each node and moreover, the delay can accumulate on each hop.

cluster1 cluster2

Case-1

Cluster3

Case-2

Figure 6: Schedule Distribution

9
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

2.2.1.1.2. Choosing and Maintaining Schedules:


When a node wants to start its periodic listen and sleep, first it chooses a common schedule to
exchange with it to its neighbors. Each node maintains a schedule table that stores the schedules of its
known neighbors. There are some steps to choose its schedule and establish its schedule table:

1. Creating synchronizer: That particular node first listens certain period of time for any another
schedule. If it dose not hear any schedule from another node, it randomly chooses a time to go to sleep
and broadcast its schedule in a SYNC message, indicating that it will go to sleep after t seconds. Thus it
becomes synchronizer, which chooses it own schedule independently and other nodes will synchronize
with it.

2. Creating follower: If a node receives a schedule from its neighbor before choosing its own schedule, it
follows that particular schedule by setting its own schedule to be same. Such a node is called follower. It
then waits for random period delay td and rebroadcast it again indicating that it will sleep for t- td
seconds. This delay is for collision avoidance.

3. Adoption of different schedules: If a node receives a different schedule after it selects and broadcast
its own schedule, it adopts both schedules. It schedules itself to wake up at the both is neighbor and
itself. It broadcast its own schedule before going to sleep.

But there is a disadvantage in this algorithm. Consider a network where each node can hear each other.
The timer of one node will fire first and its broadcast will synchronize its entire neighbor on its schedule.
If two nodes happen to transmit at nearly same time, independently assign schedules, in such situation
those nodes become border of two different schedules and adopt both. Now such a node can send once
a broadcast packet. These border nodes have less time to sleep and consume more energy.

Such a border node adopts only one schedule at a time, which one it receives first. But it also
knows that there is another schedule to follow. So, for broadcasting it needs to send twice to the two
different schedules. Figure 5 shows the scheduling of border nodes.

But there is an advantage. The border nodes have the same simple pattern of period listen and
sleep as other nodes.

2.2.1.1.3. Maintaining Synchronization:


The listen/sleep scheme requires synchronization among neighbor nodes. As long listen time can
tolerate large clock drift, neighbor nodes still need to periodically update each other their schedules to
prevent long clock drift. The updating period can be quite long.

Updating schedules is accomplished by sending a SYNC packet. The SYNC packet is very
short and includes the address of the sender and the time of its next sleep. The next sleep time is
relative to the moment that the sender finishes transmission of the SYNC packet, which is approximately
when, receives get the packet. Receivers will adjust their timers immediately after they receive the
SYNC packet. A node will go to sleep when the timer fires.

10
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

The listen interval divided into two parts. The first part is for receiving SYNC packets and
the second part is for receiving RTS packets as shown in Figure 6. Each part is further divided into many
time slots for sender to perform carrier sense. For example, if a sender wants to send a SYNC packet it
starts carrier sense when the receiver begins listening. It randomly selects a time slot to finish its carrier
sense. If it has not detected any transmission by the end of the time slot, it occupy the medium and
begin to transmit its SYNC packet at the time.

Figure 7: Timing relationship between different sender and receiver. (CS means Carrier Sense.)

Figure 7 also shows the timing relationship three possible situation that a sender transmits to a
receiver. In the Fig. sender 1 only sends a SYNC packet. Sender 2 sends only data. Sender 3 sends a Sync
packet and RTS packet.

2.2.1.2. Collision and Overhearing Avoidance:

Avoidance of collision is the basic task of MAC protocols. S-MAC adopts a contention based scheme.
Overhearing makes contention-based protocol less efficient in energy. So, it needed to be avoided.

Avoidance of Collision:
As multiple senders may wants to send to a receiver at the same time, they need to contend the
medium to avoid collision.

There is a duration field in each transmitted packed that denotes how long the remaining
transmission will be. So, if a node receives a packet, it knows how long it has to keep silent. The node
records this value in a variable called Network Allocation Vector (NAV) and sets a timer for it. Every time
when a NAV timer fires, the node decrements the NAV value until it reaches zero. When a node has data

11
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

to send, it first looks at the NAV. If its value is not zero, denotes the medium is busy. Figure.7. shows the
RTS/CTS mechanism between sender and receiver using NAV value.

Figure 8: Collision avoidance using NAV value with RTS /CTS mechanism. Neighbor waits till the NAV
value becomes zero. SIF stands for Short Inter Frame spacing which is shortest waiting time for medium
access.

Avoidance from Overhearing:


If a node continuously perform carrier sensing, the node overhears a lot of packets which have no need.
It is wastage of energy. So, overhearing should be avoided.

All immediate neighbors of both the sender and receiver should sleep after they hear the RTS or
CTS packet until the current transmission over.

Every node maintains the NAV to indicate the activity of its neighbor. When a node receives a
packet destined to other nodes, it updates its NAV by the duration field in the packet. None-zero NAV
value denotes that there is an active transmission in its neighborhood. Each time the NAV value is fired
it decrements its value. A node in sleep state if the NAV value is non-zero. When NAV becomes zero, it
wakes up. Thus the overhearing can be avoided.

2.2.1.3. Message passing:


A message is the collection of meaningful, interrelated data units. To transmit a long message as
a single packet is highly costly if it has to re-transmit it there only few bits are corrupted in first
transmission. However, if we fragment the long message into many independent small packets, of large
control overhead and long delay occurred. It is so because the RTS and CTS packets are used in
contention for each independently.

A long message is fragmented into many small fragments and transmits them into burst. Thus
only one RTS and one CTS packet is needed. Figure 8.shows the transmission procedure.

12
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Figure 9: A long message fragmented into small fragments and sender transmits with one RTS frame.
Sender also sends acknowledgement frames ACK with one CTS frame.

They reserve the medium for transmitting all the fragments. Every time a data fragment is
transmitted, the sender waits for an ACK from the receiver. If it fails to receive the ACK from the receiver
it will extend the reserved transmission time for one more fragment and re-transmit the current
fragment. If neighbor hear RTS or CTS packet it will go to sleep for the time that is needed to transmit all
fragments.

Sending ACK after each data packet is needed to prevent hidden terminal problem. If there is a
node which is neighbor of the receiver but not the sender suddenly wake up and if there is no ACK in
channel, it sense the channel is free and started to transmit. Thus collision can occur. For this reason
receiver sends ACK frames frequently after each data packet it receives.

Each data fragment and ACK packet also has the duration field. If a new node joins in the middle
it can go to sleep. Suppose a neighbor node receives an RTS from the sender or CTS from the receiver, it
goes to sleep entire message time. If the sender extends the transmission time due to fragment losses
or errors, the sleeping node will not be aware of the extension immediately .The node will learn it from
the extended fragments or ACKs when it wakes up. There should be a time limit on how many
extensions can be made for each message as there may be possible the receiver is dead or the
connection is failed during transmission.

2.2.2. Timeout- MAC (TMAC):


Static sleep-listen periods of S-MAC results in high latency and lower throughput. T-MAC
works under variable traffic load. In T-MAC listen period ends when no activation event has occurred for
a time threshold TA. The decision for TA is presented along with some solutions to the early sleeping
problem. Variable load in sensor networks are expected, since the nodes that are closer to the sink must
relay more traffic. Although T-MAC gives better results under these variable loads, the synchronization
of the listen periods within virtual clusters is broken. This is one of the reasons for the early sleeping
problem.

13
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

TMAC protocol tries to enhance energy savings in SMAC by further reducing the idle listening.[18] A
node in the listen mode will go back to sleep after time TA, as shown in Figure 9, if there is no activation
event

Figure 10: Every node turns its transceiver o® if there is no activity for a time duration TA.

The choice of TA is critical for the performance of TMAC. The following equation defines the minimum
value of TA:

TA > CW + TxRTS + T

Where CW is the contention window size, TxRTS is the transmission time of the RTS packet and T is the
turn-around time after the end of the RTS packet and the arrival of the CTS packet. A static value of TA is
chosen to be 1:5 times the minimum value of TA. The early sleeping problem is noticed by the TMAC
authors in unidirectional source to sink communication. Figure 10 explains this problem. Node C is
aware of node A transmission to B, however node D is not and will go to sleep after TA seconds. When A
transmission to B is over, C cannot transmit its data to D since D is sleeping. The future request to send
packet technique is proposed to overcome the early sleeping problem. When node C overhears the CTS
packet coming from node B, it will immediately send a Future Request to Send (FRTS) packet to inform
node D to wake up when A's transmission to B is finished. In order to avoid collision at node B between
the data packet coming from node A and the FRTS packet coming from node C, node A first transmits a
Data-Send (DS) packet of size equal to the FRTS packet, but this DS packet contains no useful
information. After sending the DS packet, node A starts transmitting its data packet to node B. The
future request to send packet technique, however, may result in more energy loss during heavy traffic,
which is undesirable in WSNs. TMAC performance, is compared against the performance of SMAC
protocols using MATLAB tool. TMAC energy savings are better than SMAC, however, TMAC throughput
(bytes per node per second) is less than SMAC at heavy traffic due to the early sleeping problem. A
limited version of TMAC was implemented on the EYES hardware with all the nodes adopting the same
schedule, and within the transmission range of each other. TMAC shows excellent energy savings
because nodes enter sleep mode (rather idle listening) after TA seconds of no activity during the listen
period.

14
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Figure 11: The early sleeping problem occurs at the node D.

2.2.3. DMAC:
The unidirectional paths from possible sources to the sink could be represented as data
gathering tree. The main aim of DMAC is to achieve very low latency but still energy efficient. DMAC
represented is an improved Slotted Aloha algorithm where slots are assigned to the sets of nodes based
on a data gathering tree shows in Figure11. During the receive period of a node, all of its child nodes has
transmit periods and contend for the medium. Low latency is achieved by assigning subsequent slots to
the nodes that are successive in the data transmission path.

Within one cycle, adaptive listening in SMAC only forwards packets two hops away from the
sending node assuming the CTS packet is only overheard by the next hop from the receiver. Packet
forwarding will be interrupted, and the packet must wait until the next scheduled wakeup time in order
to be forwarded to the next hop. DMAC protocol suggests continuous data forwarding as shown in
Figure 12. In order to accomplish this, nodes on the chain path from source to the sink must wake up
sequentially, by having staggered schedules. The schedule of every node is shifted. It shares half of its
wakeup period with its downstream node (child) and the other half with its upper stream node (parent).
RTS/CTS control packets are not necessary.

15
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Figure 12: A data gathering tree and its DMAC implementation

Only ACK packet and data retransmission are implemented to ensure packet delivery. DMAC adapts
itself to the network traffic through three schemes: (1) First, if a node has more than one packet to
transmit, it will set the more data flag in the MAC header to request its parent node to extend its
wakeup time, (2) Second, if two or more nodes have the same parent node, the parent node will extend
its wakeup time to allow all its child nodes to transmit their data to it. This is called a data prediction
scheme in DMAC, and (3). Third, if two interfering nodes at the same tree level have different parent
nodes, then one of them can use the More-To-Send packet to request its parent node to extend its
wakeup time.

Figure 13: Data forwarding is not interrupted.

16
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 3 ROUTING IN WIRELESS NETWORKS

3.1. Overview
In a sensor network tiny sensor nodes have a capability to sense and process sensed data, and
perform communication among them [1, 2]. Typically these nodes are deployed in a large sensor field.
Each node in a sensor network plays the dual role of a data originator and data router. Sensor nodes are
prone to failure, and therefore the sensor network topology changes frequently. If a few nodes die, this
may cause significant topological changes in the sensor network and would require reorganizing the
network, which expends more power from sensor nodes and, as a result, reduces the lifetime of the
network as a whole. Sensor node [3] is equipped with a power supply, sensing unit, ad converter,
processing unit, and transmitter-receiver unit. Since the size of sensor node is very small, all
components must be small. Because of the size limitation of each component, the capacity of each
component is also limited. Also, it may not be practical to perform maintenance operations, such as
changing batteries, on deployed sensor nodes. Because of the above reasons, wireless sensor network,
or more specifically each sensor node, is resource constrained. Due to the limitation in power, memory,
bandwidth and computational capacity, the major focus of wireless sensor networks is how to achieve
the maximum utilization of limited sensor resources. To realize wireless sensor networks, peer-to-peer
network techniques are widely used so that it allows direct communication between any two nodes. The
sensor nodes collaborate to transmit a data packet from the source node to the destination node. This is
called multi-hop routing. Because of their peer to peer communication style, no centralized point, which
will control an entire network formation, is required for the network. Since no fixed infrastructure is
necessary for wireless sensor networks, a network will be constructed inexpensively. Also, nodes can be
added to and removed form the network easily. On the other hand, the network topology in a WSN may
change drastically since nodes can be added and removed easily. The data from sensor nodes is
gathered by the sink. The sink may be connected to the outside world thorough Internet or satellite.
Sensor nodes will be scattered over a sensor field, so the locations of sensor nodes in the field cannot be
predetermined. Energy-aware routing algorithms [4], [5], [6] discuss reducing the consumption of
battery-power at each node. An optimal goal is to design routing schemes, which minimize energy
requirements at each node to transfer individual packets and maximize the operational lifetime of
scalable networks.

Recently IC and MEMS have matured to the point where they enable the integration of
communications, sensors and signal processing all together in one low-cost package. It is now feasible to
fabricate ultra-small sensor nodes that can be scattered on the battlefield to gather strategic
information [1]. The events detected by these nodes need to communicated to gateways or users who
tap into the network. This communication occurs via multi-hop routes through other sensor nodes.
Since the nodes need to be unobtrusive, they have a small form-factor and therefore can carry only a
small battery. As a result, they have a limited energy supply and low-power operation is a must. Multi-

17
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

hop routing protocols for these networks necessarily have to be designed with a focus on energy
efficiency. The proposed approaches lean towards localized algorithms [1][2]. Due to the large number
of sensors, network-scale interaction is indeed too energy expensive. Moreover, a centralized algorithm
would result in a single point of failure, which is unacceptable in the battlefield. Our Algorithm proposes
to minimize the energy consumption of the sensor nodes. In our Algorithm, we establish a shortest path
for data transfer from source to destination. We also define a scheme for updating the routing
throughout the network. The Modification shows the different route from source to destination if the
intermediate nodes are destroyed.

3.2. Routing
Routing is the process of selecting paths in a network along which to send data or physical traffic.
Routing is performed for many kinds of networks, including the telephone network, the Internet, and
transport networks.

Routing directs forwarding, the passing of logically addressed packets from their source toward
their ultimate destination through intermediary nodes; typically hardware devices called routers,
bridges, gateways, firewalls, or switches. Ordinary computers with multiple network cards can also
forward packets and perform routing, though they are not specialized hardware and may suffer from
limited performance. The routing process usually directs forwarding on the basis of routing tables which
maintain a record of the routes to various network destinations. Thus constructing routing tables, which
are held in the routers' memory, becomes very important for efficient routing.

Routing, in a more narrow sense of the term, is often contrasted with bridging in its assumption
that network addresses are structured and that similar addresses imply proximity within the network.
Because structured addresses allow a single routing table entry to represent the route to a group of
devices, structured addressing (routing, in the narrow sense) outperforms unstructured addressing
(bridging) in large networks, and has become the dominant form of addressing on the Internet, though
bridging is still widely used within localized environments.

3.2.1. Routing Table


A routing table is a set or rules, viewed in a tabular format and this used to define the routes of the data
packets. All the network devices, which have IP, enabled functionality such as routers and switches use
the routing tables. Routing table stores the information and configurations of every router in the IP
enabled network. A routing table contains the information necessary to transmit the packets toward its
destination.

When a packet is received, the network devices matches the information contained in the
packets and the information in the routing tables and then it defines the shortest possible route for the
transmission of the packets towards its destination.

Each packet contains the information of its origin and destination and the routing table
contains the following information.

18
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

• Destination: The IP address of the packet’s final destination (next hop). Next hop: The IP address to
which the packet is forwarded .

• Metric: It assigns the cost to each route so that most-effective paths can be picked up.

• Routes: It includes directly attached direct subnets, indirect subnets, that are not directly connected
to the device but it can be accesses through one ore more hops

• Interface: The outgoing network interface the device should use when forwarding the packet to its
final destination.

Routing tables can be maintained manually by the network administrator or by dynamically


(automatically). The static network tables do not change unless the network administrator changes
them. Routing tables can be maintained manually or dynamically. Tables for static network devices do
not change unless a network administrator manually changes them. In the dynamic routing, the network
devices such as routers and switches maintain the routing tables dynamically by using the routing
protocols, such as RIP, OSPF etc. In the dynamic routing, the network devices listen and detect any
network or devices failure and packet congestions.

3.2.2. Different Routing schemes:


Unicast : it delivers a message to a single specified node;

Broadcast: It delivers a message to all nodes in the network;

Multicast: It delivers a message to a group of nodes that have expressed interest in receiving the
message;

19
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Anycast: It delivers a message to any one out of a group of nodes, typically the one nearest to the
source.

3.2.3. Static and Dynamic Routing

Routing can be performed by manually defining the routes or paths for packets to reach its
destination. This is called static routing.

Stating routing works well for the small networks and when using the static routing, the
routing table of the each router should be updated each time there is any change in the
network configuration or topology. A router, whose routing table is not regularly updated,
cannot communicate with the other routers.

While on the other end in most of the networks, routing is accomplished through the
use of the dynamic routing. In the dynamic routing, routing protocols, such as RIP, OSPF etc
create and maintain the routing tables of each router. Practically, dynamic routing functions
very well than the static routing.

Dynamic routing attempts to solve this problem by constructing routing tables


automatically, based on information carried by routing protocols, and allowing the network to
act nearly autonomously in avoiding network failures and blockages.

Dynamic routing dominates the Internet. However, the configuration of the routing
protocols often requires a skilled touch; one should not suppose that networking technology
has developed to the point of the complete automation of routing.

3.3. The CTR (Critical Transmission Range) for Connectivity:


The simplest form of topology control considered is the characterization of the critical transmission
range (CTR). In this version of topology control, all the network nodes are assumed to have the same
transmitting range r.

Definition (CTR for connectivity):- Suppose n nodes are placed in a certain region R= [0, l] d, with d = 1,
2 or 3. So, CTR (for connectivity) is defined as the minimum value of the range such that the entire
network is connected provided that the network is homogeneous.

20
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

In the definition the deployment region is the d-dimension cube with side l. The definition of CRT
for connectivity can be extended in a straightforward manner to deployment regions with arbitrary
shape and size.

The assumption that all the nodes use the same transmitting range reflects all those situations
in which transceivers use the same technology and no transmit power control.

3.3.1. Euclidean Minimum Spanning Tree:


The Euclidean minimum spanning tree or EMST is a minimum spanning tree of a set of points in
the plane where the weight of the edge between each pair of points is the distance between those two
points. In simpler terms, an EMST connects a set of dots using lines such that the total length of all the
lines is minimized and any dot can be reached from any other by following the lines.

In the plane, an EMST for a given set of points may be found in asymptotically optimal Θ(n log n) time
using O(n) space. Randomized algorithms of complexity O{n log log n} are known. In higher dimensions
(d ≥ 3), finding an optimal algorithm remains an open problem.

Figure 14: Euclidean Minimum Spanning Tree

3.3.2. Theorem of CTR for Connectivity

Theorem: - Let N be a set of n nodes placed in R= [0, l] d, with d = 1, 2 or 3. The CTR for connectivity r c of
the network compose3d of nodes in N equals the length of the longest edge of the EMST(Euclidean
Minimum Spanning Tree) T build on the same set of nodes.

According to the Theorem computing the CTR is equivalent to computing the CRT is equivalent
to computing the EMST on the network nodes and finding the longest edge in the EMST.

21
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

The attention has been devoted to characterizing the CTR in the presence of some form of
uncertainty about node positions. If nodes positions are not known the minimum value of r ensuring
connectivity in all possible cases is r ≈ l√d, since nodes could be concentrated at the opposite corners of
R. However, this scenario is overly pessimistic in many real-life situations. For this reason, a typical
approach is to assume that nodes are distributed in R according to some probability density function F,
and to study the conditions for asymptotically almost sure connectivity.

Definition:- Let Ek be a random event that depends on a certain parameter k. we say that Ek holds
asymptotically almost surely (a.a.s) or with high probability (w.h.p) if lim k→∞ p (Ek) =1.

We consider two probabilistic formulations of CRT:

 Fixed deployment region- In this case, the side l of the deployment region R is fixed and the
asymptotic value of the CRT as n →∞ is investigated. In fact, the value of the CTR is characterized as
the node density n/ld grows to infinity, since l is an arbitrary constant.
 Deployment region of increasing side- In this case, the side l of the deployment region is a further
model parameter and the asymptotic value of the CTR as l→∞ is investigated. In this model l can be
seen as the independent variable, and both r and n are expressed as a function of l. Since the node
density n (l, F) /ld can either converge to a constant c≥ 0 or diverge as l→∞, the theoretical results
obtained using this model can be applied to networks with arbitrary density.

3.3.3. The CTR in Dense Network:


The Critical Transmitting Range i.e. CTR in dense network can be characterized using result taken from
the theory of Geometric Random Graphs (GRGs).Since the CTR equals to the longest EMST edge,
probabilistic solutions to the CTR problem in dense networks can be derived using results concerning the
asymptotic distribution of the longest EMST edge. There are some Theorem related to it –

Theorem 1: Assume that n points are distributed uniformly at random in the unit square[0,1]2 and let Mn
be the random variable denoting the length of the longest MST edge built on the n nodes. Then,

Lim P[n*pi*(Mn)2 – log n B] = 1/exp(e(-B))


n →∞
Corollary: If R is the unit square and n nodes are distributed uniformly at random in R, then the CTR for
connectivity is rc= ( ( log n + f(n))/n*pi)

Where f(n) is an arbitrary function such that lim f(n) = +∞


n →∞
Theorem 2: If R is the unit cube and n nodes are distributed uniformly at random in R, then the CTR for
connectivity is

rc = 3 ( (( log n –log log n)/n*pi) + (3/2*(1.41 + g(n)/n*pi)))

Where g (n) is an arbitrary function such that lim g (n) = +∞


n →∞

22
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Note: With respect to the case of two dimensional networks and disregarding constants, the expression
of the CTR in the three dimensional networks contains an additional log log n term. This term is due to
the boundary effect, which is asymptotically negligible in two dimensional networks, while it is not
negligible in three dimensional networks.

In the case of one dimensional network, the expression of the CTR is given by combining Theorem 1 and
Theorem 2 as follows:

Theorem 3: If R is the segment of unit length [0, 1] and n nodes are distributed uniformly at random in
R, then the CTR for connectivity is

rc = log n / n.

3.4. Dijkstra's algorithm


3.4.1. Introduction

Dijkstra's algorithm, conceived by Dutch computer scientist Edsger Dijkstra in 1959,[1] is


a graph search algorithm that solves the single-source shortest path problem for a graph with
non negative edge path costs, outputting a shortest path tree. This algorithm is often used in
routing.

For a given source vertex (node) in the graph, the algorithm finds the path with lowest cost (i.e.
the shortest path) between that vertex and every other vertex. It can also be used for finding
costs of shortest paths from a single vertex to a single destination vertex by stopping the
algorithm once the shortest path to the destination vertex has been determined. For example,
if the vertices of the graph represent cities and edge path costs represent driving distances
between pairs of cities connected by a direct road, Dijkstra's algorithm can be used to find the
shortest route between one city and all other cities.

3.4.2. Algorithm

It should be noted that distance between nodes can also be referred to as weight.

1. Create a distance list, a previous vertex list, a visited list, and a current vertex.
2. All the values in the distance list are set to infinity except the starting vertex which is set to zero.
3. All values in visited list are set to false.
4. All values in the previous list are set to a special value signifying that they are undefined, such as
null.
5. Current vertex is set as the starting vertex.
6. Mark the current vertex as visited.
7. Update distance and previous lists based on those vertices which can be immediately reached
from the current vertex.
8. Update the current vertex to the unvisited vertex that can be reached by the shortest path from
the starting vertex.

23
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

9. Repeat (from step 6) until all nodes are visited.

3.4.3. Running time

The running time of Dijkstra's algorithm on a graph with edges E and vertices V can be expressed as a
function of |E| and |V| using the Big-O notation.

The simplest implementation of the Dijkstra's algorithm stores vertices of set Q in an ordinary linked list
or array, and operation Extract-Min(Q) is simply a linear search through all vertices in Q. In this case, the
running time is O(|V|2+|E|)=O(|V|2).

For sparse graphs, that is, graphs with fewer than |V|2 edges, Dijkstra's algorithm can be implemented
more efficiently by storing the graph in the form of adjacency lists and using a binary heap, pairing heap,
or Fibonacci heap as a priority queue to implement the Extract-Min function efficiently. With a binary
heap, the algorithm requires O((|E|+|V|) log |V|) time (which is dominated by O(|E| log |V|) assuming
every vertex is connected, that is, |E| ≥ |V| - 1), and the Fibonacci heap improves this to O( | E | + | V |
log | V | ) amortized time.

24
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 4 ON-DEMAND ROUTING PROTOCOLS

DSR is an on-demand routing protocol that is initiated when a source node tries to send a packet to the
destination node. The DSR protocol consists of five distinct phases: route discovery, route maintenance,
data transfer, route caching, and route deletion. The operation of the DSR protocol can be summarized
as follows:

 The Route Cache: When a source node wants to transmit data to the destination node, it first
checks the DSR cache to see if there is a route available to the destination node. If a route from
the source node to the destination already exists, then the source node starts sending data to
the destination node. However, if there is no route information available for the destination
node in the route cache, then the DSR protocol invokes the route discovery phase to establish a
link between the source node and the destination node.
 Route Discovery: The route discovery process is initiated by the DSR to find a suitable route
between the source and the destination. This phase is accomplished by using a set of control
packets called Route Requests and Route Replies. The Route Request consists of the destination
address, the address of the source node, and a unique identifier. As soon as the source node
sends control packets to the sending buffer in order to be broadcast, it initiates a timer called
the Send buffer Time Out within which a response is expected. If the source node does not
receive a reply within this timeframe it will generate another route request packet using the
exponential back-off algorithm. When the neighboring node receives the Route Request from
the source node, it checks whether it has already received a copy of this route request. If the
receiving node has already received a copy of the route request, the current copy is discarded in
order to avoid loops. However, if the receiving node has not received the same route request, it
checks whether this route request was actually meant for it. If the destination address in the
route request does not match the address of the receiving node, then the receiving node acts as
a relay node and broadcasts the control packet to its neighboring nodes after making up an
address entry of its own in the route request packet. There are two ways by which the receiving
node can verify whether it has already received this route request or not. First, it can search its
route table to check the entry of this particular route request packet. This is carried out by
matching the unique identifier which is associated with each route reply to its entry in the route
table. If an entry for this route request packet already exists, the packet is thrown away. Second,
the receiving node can check the entries in the route request packet to see whether it has
already received the packet.
 Data Transfer: Once a route has been established between the source node and the destination
node, the source node starts sending data.
 Route Maintenance: Due to the mobile nature of nodes in a sensor network, they may need to
move from one place to another very often, making the current routes unusable. Therefore, the
route maintenance process is an important phase in any routing protocol in a sensor network.
When a source needs to communicate with the destination node, the MAC layer (802.11 in this
case) sends a request to the destination node. If the destination node is still within the
transmission range of the source node, it sends a Clear To Send message to the source node
which starts to transmit data to the destination node.

25
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

4.1. Dynamic Source Routing Protocol


Dynamic source routing protocol (DSR) is an on-demand protocol designed to restrict the bandwidth
consumed by control packets in ad hoc wireless networks by eliminating the periodic table-update
messages required in the table-driven approach. The major difference between this and the other on-
demand routing protocol is that it is beacon-less and hence does not require periodic hello packet
(beacon) transmissions, which are used by a node to inform its neighbors of its presence. The basic
approach of this protocol (and all other on-demand routing protocols) during the route construction
phase is to establish a route by flooding RouteRequest packets in the network . The destination node, on
receiving a RouteRequest packet, responds by sending a RouteReply packet back to the source, which
carries the route traversed by the RouteRequest packet received.

Consider a source node that does not have a route to the destination. When it has data packets
to be sent to that destination, it initiates a RouteRequest packet. This RouteRequest is flooded
throughout the network. Each node, upon receiving a RouteRequest packet, rebroadcasts the packet to
its neighbors if it has not forwarded already or if the node is not the destination node, provided the
packet’s time to live (TTL) counter has not exceeded. Each RouteRequest carries a sequence number
generated by the source node and the path it has traversed. A node, upon receiving a RouteRequest
packet, checks the sequence number on the packet before forwarding it. The packet is forwarded only if
it is not a duplicate RouteRequest. The sequence number on the packet is used to prevent loop
formations and to avoid multiple transmissions of the same RouteRequest by an intermediate node that
receives it through multiple paths. Thus, all nodes except the destination forward a RouteRequest
packet during the route construction phase. A destination node, after receiving the first RouteRequest
packet, replies to the source node through the reverse path the RouteRequest packet had traversed. In
fig, source node 1 initiates a RouteRequest packet to obtain a path for destination node 15. This
protocol uses a route cache that stores all possible information extracted from the source route
contained in a data packet. Nodes can also learn about the neighboring routes traversed by data packets
if operated in the promiscuous mode (the mode of operation in which a node can receive the packets
that are neither broadcast nor addressed to itself). This route cache is also used during the route
construction phase. If an intermediate node receiving a RouteRequest has a route to the destination
node in its route cache, then it replies to the source node by sending a RouteReply with the entire route
information from the source node to the destination node.

26
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Fig 4.1 Route establishment in DSR

Optimizations

Several optimization techniques have been incorporated into the basic DSR protocol to improve the
performance of the protocol. DSR uses the route cache at intermediate nodes. The route cache is
populated with routes that can be extracted from the information contained in data packets that get
forwarded. This cache information is used by the intermediate nodes to reply to the source when they
receive a RouteRequest packet and if they have a route to the corresponding destination. By operating
in the promiscuous mode, an intermediate node learns about route breaks. Information thus gained is
used to update the route cache so that the active routes maintained in the route cache do not use such
broken links. During network partitions, the affected nodes initiate RouteRequest packets. An
exponential backoff algorithm is used to avoid frequent RouteRequest flooding in the network when the
destination is in another disjoint set. DSR also allows piggy-backing of a data packet on the
RouteRequest so that a data packet can be sent along with the RouteRequest.

If optimization is not allowed in the DSR protocol, the route construction phase is very simple.
All the intermediate nodes flood the RouteRequest packet if it is not redundant. For example, after
receiving the RouteRequest packet from node 1 (refer to fig.), all its neighboring nodes, that is, nodes
2,5, and 6, forward it. Node 4 receives the RouteRequest from both nodes 2 and 5. Node 4 forwards the
first RouteRequest it receives from any one of the nodes 2 and 5 and discards the other
redendant/duplicate RouteRequest packets. The RouteRequest is propagated till it reaches the
destination which initiates the RouteReply. As part of the optimizations, if the intermediate nodes are
also allowed to originate RouteReply packets, then a source node may receive multiple replies from

27
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

intermediate nodes. For example, in Fig., if the intermediate node 10 has a route to the destination via
node 14, it also sends the RouteReply to the source node. The source node selects the latest and best
route, and uses that for sending data packets. Each data packet carries the complete path to its
destination.

When an intermediate node in the path moves away, causing a wireless link to break, for
example, the link between nodes 12 and 15 in Fig., a RouteError message is generated from the node
adjacent to the broken link to inform the source node. The source node reinitiates the route
establishment procedure. The cached entries at the intermediate nodes and the source node are
removed when a RouteError packet is received. If a link breaks due to the movement of edge
nodes(nodes 1 and 15), the source again initiates the route discovery process.

4.2. Advantages and Disadvantages


This protocol uses a reactive approach which eliminates the need to periodically flood the network with
table update messages which are required in a table-driven approach. In a reactive (on-demand)
approach , such as this, a route is established only when it is required and hence the need to find routes
to all other nodes in the network as required by the table-driven approach is eliminated. The
intermediate nodes also utilize the route cache information efficiently to reduce the control overhead.
The disadvantage of this protocol is that the route maintenance mechanism does not locally repair a
broken link. Stale route cache information could also result in inconsistancies during the route
reconstruction phase. The connection setup delay is higher than in table-driven protocols. Even though
the protocol performs well in static and low-mobility environments, the performance degrades rapidly
with increasing mobility. Also, considerable routing overhead is involved due to the source-routing
mechanism employed in DSR. This routing overhead is directly proportional to the path length.

28
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 5 ENERGY EFFICIENT ROUTING

Overview
Ideally, the sensor network is used to perform its functionality as long as possible. Optimal routing in
energy constrained networks is not practically feasible because it requires future knowledge. A scheme
is energy efficient (in contrast to ‘energy optimal’) when it is statistically optimal and causal (i.e. takes
only past and present into account). In most practical surveillance or monitoring applications, we do not
want any coverage gaps to develop. Therefore the lifetime is defined and to maximize as the worst-case
time until a node breaks down, instead of the average time over all scenarios. However, taking into
account all possible future scenarios is too computationally intensive, even for simulations. It is
therefore certainly unworkable as a guideline to base practical schemes on.

5.1. Energy-Efficient Unicast


At a first glance, energy-efficient unicast routing appears to be a simple problem: take the network
graph, assign to each link a cost value that reflects the energy consumption across this link, and pick any
algorithm that computes least-cost paths in a graph. An early paper along these lines is reference [747],
which modified Dijkstra’s shortest path algorithm to obtain routes with minimal total transmission
power. What qualifies as a good cost metric in general is, however, anything but clear and depends on
the precise intention of energy-efficient unicast routing.

In fact, there are various aspects how energy or power efficiency can be conceived of in a
routing context. The presentation here mostly follows reference [768]; acronyms are taken from
reference [826]. Figure 11.3 shows an example scenario for a communication between nodes A and H
including link energy costs and available battery capacity per node.

5.1.1.Minimize energy per packet (or per bit)


The most straightforward formulation is to look at the total energy required to transport a packet over a
multihop path from source to destination (including all overheads). The goal is then to minimize, for
each packet, this total amount of energy by selecting a good route.

Minimizing the hop count will typically not achieve this goal as routes with few hops might
include hops with large transmission power to cover large distances – but be aware of distance-
independent, constant offsets in the energy-consumption model. Nonetheless, this cost metric can be
easily included in standard routing algorithms. It can lead to widely differing energy consumption on
different nodes.

29
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Figure 15: Various example routes for communication between nodes A and H, showing energy costs
per packet for each link and available battery capacity for each node

In the example of Figure 5.1, the minimum energy route is A-B-E-H, requiring 3 units of energy. The
minimum hop count route would be A-D-H, requiring 6 units of energy.

5.1.2. Maximize network lifetime


A WSN’s task is not to transport data, but to observe (and possibly control). Hence, energy-efficient
transmission is at best a means to an end and the actual end should be the optimization goal: the
network should be able to fulfill its duty for as long as possible.

Which event to use to demarcate the end of a network’s lifetime is, however, not clear either.

 Time until the first node fails.


 Time until there is a spot that is not covered by the network (loss of coverage, a useful metric
only for redundantly deployed networks).
 Time until network partition (when there are two nodes that can no longer communicate with
each other).

While these aspects are related, they require different solutions. For the network partition, for example,
nodes in the graph’s minimal cut set should have equal energy consumption (or rather, supplies) to
ensure maximum time to partition. Also, their solutions can be infeasible – for example, maximizing the
time to network partition is reported as NP-complete. Moreover, Li et al. state that maximizing the time
until the first node runs out of energy does not have a constant competitive ratio with the optimal off-
line algorithm that knows the arrivals of future packets (when optimizing the number of messages the
network can successfully carry, a competitive ratio logarithmic in the number of nodes can be shown).
Because of these theoretical limitations, only approximate solutions are practically relevant.

30
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

5.1.3. Routing considering available battery energy


While maximizing the network lifetime is clearly a useful goal, it is not immediately obvious how to
reach this goal using observable parameters of an actual network. As the finite energy supply in nodes’
batteries is the limiting factor to network lifetime, it stands to reason to use information about battery
status in routing decisions. Some of the possibilities are:

Maximum Total Available Battery Capacity : Choose that route where the sum of the available
battery capacity is maximized, without taking needless detours (called, slightly incorrectly,
“maximum available power” in reference).Looking only at the intermediate nodes in Fig. 5.1,
route A-B-E-G-H has a total available capacity of 6 units, but that is only because of the extra
node G that is not really needed – such detours can of course arbitrarily increase this metric.
Hence, A-B-E-G-H should be discarded as it contains A-B-E-H as a proper subset. Eventually,
route A-C-F-H is selected.

Minimum Battery Cost Routing (MBCR): Instead of looking directly at the sum of available
battery capacities along a given path, MBCR instead looks at the “reluctance” of a node to route
traffic [768, 826]. This reluctance increases as its battery is drained; for example, reluctance or
routing cost can be measured as the reciprocal of the battery capacity. Then, the cost of a path
is the sum of this reciprocals and the rule is to pick that path with the smallest cost. Since the
reciprocal function assigns high costs to nodes with low battery capacity, this will automatically
shift traffic away from routes with nodes about to run out of energy.
In the example of Fig. 5.1, route A-C-F-H is assigned a cost of 1/1 + 1/4 = 1.25, but route
A-D-H only has cost 1/3. Consequently, this route is chosen, protecting node C from needless
effort.

Min–Max Battery Cost Routing (MMBCR): This scheme follows a similar intention, to protect
nodes with low energy battery resources. Instead of using the sum of reciprocal battery levels,
simply the largest reciprocal level of all nodes along a path is used as the cost for this path.
Then, again the path with the smallest cost is used. In this sense, the optimal path is chosen by
minimizing over a maximum.
The same effect is achieved by using the smallest battery level along a path and then
maximizing over these path values]. This is then a maximum/minimum formulation of the
problem. In the example of Fig. 5.1, route A-D-H will be selected.

Conditional Max–Min Battery Capacity Routing (CMMBCR): Another option is to conditionalize


upon the actual battery power levels available. If there are routes along which all nodes have a
battery level exceeding a given threshold, then select the route that requires the lowest energy
per bit. If there is no such route, then pick that route which maximizes the minimum battery
level.

Minimize variance in power levels: To ensure a long network lifetime, one strategy is to use up
all the batteries uniformly to avoid some nodes prematurely running out of energy and
disrupting the network.3 Hence, routes should be chosen such that the variance in battery levels
between different routes is reduced.

31
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

5.1.4. Minimum Total Transmission Power Routing (MTPR)


Without actually considering routing as such, Bambos looked at the situation of several nodes
transmitting directly to their destination, mutually causing interference with each other. A given
transmission is successful if its SINR exceeds a given threshold. The goal is to find an assignment of
transmission power values for each transmitter (given the channel attenuation metric) such that all
transmissions are successful and that the sum of all power values is minimized. MTPR is of course also
applicable to multihop networks.

A direct performance comparison between these concepts is difficult as they are trying to fulfill
different objectives. Moreover, while these objectives are fairly easy to formulate, it is not trivial to
implement them in a distributed protocol that judiciously balances the overhead necessary to collect
routing information with the performance gained by clever routing choices. The following section
describes some concrete protocols that tackle this challenge; a good overview is also included in
reference [916]. Care has to be taken about the details here – Safwat et al. show that a non-power-
aware protocol can actually have (in many circumstances) a better energy-consumption behavior than
some straightforward power-aware solutions (although it is not clear to what degree this conclusion is
owing to the use of an IEEE 802.11-type MAC protocol in the paper).

32
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 6 HDP: ENERGY EFFICIENT ROUTING


ALGORITHM

6.1 Related Work


Efficient utilization of energy is crucial to the WSNs. Wireless micro sensor network protocols should
therefore be self configuring to enable ease of deployment of nodes, latency aware, qualitative, robust
and to extend system lifetime. The sensors are extremely energy bounded, hence the network formed
by these sensors are also energy constrained. The communication devices on these sensors are small
and have limited power and sensing ranges. A routing protocol coordinates the activities of individual
nodes in the network to achieve global goals and does it in an efficient manner. The simplest is the
Direct Communication Routing Protocol, where each node transmits the sensed information directly to
the base station. The nodes consume considerable amount of energy if the communication path is long.
This results in the early death of distant nodes. To overcome this drawback, the technique of Minimum
Transmission Energy utilizes a multihop routing scheme. In this scheme, the nodes that are close to the
base station drain their energy rapidly as they are involved in transmission of messages on behalf of
others.

Hierarchical routing groups sensors in the entire network into clusters. It aims at reduction of energy
consumption by localizing data communication within cluster and aggregating data to decrease
transmissions to the base station. The first attempt in this regard, was made by Low Energy Adaptive
Cluster Hierarchy (LEACH). The operation is framed in iterations and each iteration comprises of a setup
and a data transmission phase. During the setup phase, nodes organize themselves into clusters with
predetermined number of nodes serving as cluster heads. In the data transmission phase, the self-
elected cluster heads aggregate data received from the nodes in their cluster before forwarding to the
base station. The role of cluster heads is randomly rotated among all the nodes in the network. This
technique serves as a basic model for other hierarchical routing protocols. A centralized version of the
adaptive approach comprises a hierarchical structure in which the base station has control over the
cluster formation. The base station uses the location and energy information sent by the nodes to select
the predetermined number of cluster heads. Efficient clustering is achieved as the base station possess
the global knowledge of the network. This technique exhibits improvement over the adaptive approach.
Motivation: Efficient management of energy deserves much of the attention in the WSNs. Routing
protocols designed for WSNs must therefore effectively tackle this issue in order to enhance the lifetime
of the network. Hierarchical routing techniques are preferable in this direction. The arrangement of the
nodes in the form of a load balanced hierarchy proves to be beneficial.

33
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

6.1. 1 Approach
The approach is combined with the Energy Efficient routing and Hierarchical based routing technique in
the wireless sensor network. Given the total number of nodes, the source node index, the destination
node index and the power required to transmit from one node to other. At first, the height (i.e. the
minimum numbers of hops to reach the destination) of each node is calculated. Battery capacity of each
node is also given. We know from the minimum battery cost routing that reluctance or routing cost can
be measured as the reciprocal of the battery capacity, so the reluctance increases as its battery is
drained. That means power consumed of each node is the reciprocal of the battery capacity of each
node. Next, the distance between two nodes is calculated. After that, the cost for each neighbor nodes
are calculated and the node, which has the minimum cost, is selected and if this minimum cost is
between Rc (i.e. minimum range of a node) and R (i.e. maximum range of a node), the node is chosen
for the next hop. Then, the route between this node and the source node is established. Now this
process is going on until the destination is found.

The cost of node is calculated as follows:

Co (j) = minimum [height (j) + distance (i, j) + P];

Where, height (j) is the height of node j,

distance (i, j) is the Straight line distance between node i and j such that

distance (i,j) = [((x(j) - x(i))2 + ((y(j) - y(i))2] where i is the previous neighbor of node j and x(k)
,y(k) are the x and y coordinate respectively of node k.

P is the power consumed by each node. This is calculated as

P= E + Pc Where E= 1/ battery capacity.

P is the power consumed by each node. This is constant and this is calculated as P = I * V

Where I is the current consumed by each sensor node and V is the voltage required for each sensor
node. For a standard sensor node, I = 91.5 mA and V = 5 volts.

So, P = 91.5 * 5 = 457.5 mW.

The following Figures show the sensor network. Here we want to send a packet from source S to
destination D in energy efficient manner.

34
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

6.2. HDP algorithm:


6.2.1. Flow Chart START

Initialize Network

Set s as a source node, set d as a


destination node, set also each node
battery capacity

Calculate height of each node

Find neighbor of sending node

Drop packet

No Find the nodeNo No Node is


which is alive alive ?

Yes

Calculate the distance between the


Neighbor Yes neighbor, Calculate the power
node is required for each node
alive?

A
B

35
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

A B

Calculate min (H+ D+ P) of neighbor of s

Transmit the message to neighbor having


min (H+ D + P)

Draw the shortest path s to that node

Set that node as a sending node

No
S=D ?

Yes

END

Figure 16: Flowchart of HDP algorithm

36
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

6.2.2. Analysis
Step1: At first the distance between adjacent nodes are measured and the power consumed by each
node is also calculated.

3 [3] 5 [2]
1
A B 3

4 [1]
8
8 5 C
6 3
[1] 5 2
[3] 3 6 E
[2]
5
S H 2 D
6 [0]
9
4 6
2
3 6 8

F G

4
[2] 7 3
[1]

[ NO.] A r e D e n o t i n g H ei g h t

Figure 17: Sensor Network with distance between adjacent nodes and their heights

Step 2: Next, the height of each node is calculated. The height of each node is defined as the minimum
number of hops required to reach from that node to destination. As for example, the height of node A is
3 because there are 3 hops to reach the destination D from A.

Step 3: Now the node which has minimum of H+D+P {Height (H) + Distance (D) + Power consumption
(P)}, is selected and the path from source to that node is established. Next, that node will be treated as
the source node for the rest nodes in the network. As for example, the path between source S and node
F is established because, out of the three neighbors A, F, H of S, node F has minimum of (Height +
Distance + Power consumption).

Step 4: Go to Step1.

37
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

6.2.3. Calculation:
The above process is followed until the total route is established between source S and destination D.

Neighbor Height Distance Power consumption H+D+P

A 3 8 0.33 + 457.5 = 457.83 3+8+457.83=468.83

F 2 3 0.25 + 457.5 = 457.75 2+3+457.75= 462.75

H 2 5 0.33 + 457.5 = 457.83 2+5+ 457.83=464.83

Node F is selected for routing as we see that the node F has minimum cost. Now, F will be treated as the
source node for the rest nodes in the network.

Now neighbor node of node F are H and G.

Neighbor Height Distance Power consumption H+D+P

H 2 2 0.33 + 457.5 = 457.83 2+2+457.83=461.83

G 1 7 0.33 + 457.5 = 457.83 1+7+457.83= 465.83

Node H is selected for routing. So selected routing path is S-> F -> H. Now, H will be treated as the
source node for the rest nodes in the network.

Now neighbor node of node H are A, B, E, G.

Neighbor Height Distance Power consumption H+D+P

A 3 6 0.33 + 457.5 = 457.83 3 + 6 + 457.83=466.83

B 2 8 1 + 457.5 = 458.5 2 + 8 + 458.5 = 468.5

E 1 6 0.5 + 457.5 = 458 1 + 6 + 458 = 465

G 1 6 0.33 + 457.5 = 457.83 1+6+457.83 = 464.83

Node G is selected for routing. So selected routing path is S-> F -> H ->G. Now, G will be treated as the
source node for the rest nodes in the network.

Now neighbor node of node G are E, C, D.

Neighbor Height Distance Power consumption H+D+P

E 1 6 0.5 + 457.5 = 458 1 + 6 + 458=465

C 1 9 0.25 + 457.5 = 457.75 1+9+457.75= 467.75

D 0 8 0.33 + 457.5 = 457.83 0+8+457.83=465.83

38
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Node E is selected for routing. So selected routing path is S -> F -> H -> G -> E. Now, E will be treated as
the source node for the rest nodes in the network.

Now neighbor node of node E are B, C, D.

Neighbor Height Distance Power consumption H+D+P

B 2 5 1 + 457.5 = 458.5 2 + 5 + 458.5 = 465.5

C 1 5 0.25 + 457.5 = 457.75 1 + 5+ 457.75 = 463.75

D 0 6 0.33 + 457.5 = 457.83 0 + 6 + 457.83 = 463.83

Node C is selected for routing. So selected routing path is S -> F -> H -> G -> E -> C. Now, C will be treated
as the source node for the rest nodes in the network.

Now neighbor node of node C is D, which is the destination node.

So the cost of the node D is 3 + 0.5 + 457.5 = 458.

So the routing path is S -> F -> H -> G -> E -> C -> D.

Now calculate the total routing cost of the above path is


462.75 + 461.83 +464.83 + 465 + 463.75 + 458 = 2776.16.

That is the energy efficient routing cost of the above calculated path.

Shortest path algorithm that is used to set a shortest path to send the packet from S to D.

39
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CHAPTER 7 SIMULATION

7.1. Implementation with OMNET++


7.1.1. Basic Concept:
Discrete-event simulation is a trusted platform for modeling and simulating a variety of systems. We
report results obtained from a new simulator for wireless sensor networks networks that is based on the
discrete event simulation framework called OMNeT++. Work is underway to develop a simulation
platform that allows developers and researchers to investigate topological, phenomenological,
networking, robustness and scaling issues related to wireless sensor networks. As a first step, we have
developed simulations for the 802.11 MAC and the well-known sensor network protocol called Directed
Diffusion. We demonstrate the performance of our simulator by comparing its performance to that of
the well-known simulator NS-2. Our results indicate that our simulator executes at least an order of
magnitude faster than NS-2 and makes more efficient use of the available memory. The ease of
modifying the sensor network and scalability, which is defined as the number of nodes that can be
simulated, are two distinguishing features of our simulator.

NS-2, perhaps the most widely used network simulator, has been extended to include some
basic facilities to simulate Sensor Networks. However, one of the problems of ns2 is its object-oriented
design that introduces much unnecessary interdependency between modules. Such interdependency
sometimes makes the addition of new protocol models extremely difficult, only mastered by those who
have intimate familiarity with the simulator. Being difficult to extend is not a major problem for
simulators targeted at traditional networks, for there the set of popular protocols is relatively small. For
example, Ethernet is widely used for wired LAN, IEEE 802.11 for wireless LAN, TCP for reliable
transmission over unreliable media. For sensor networks, however, the situation is quite different. There
are no such dominant protocols or algorithms and there will unlikely be any, because a sensor network
is often tailored for a particular application with specific features, and it is unlikely that a single
algorithm can always be the optimal one under various circumstances.

Many other publicly available network simulators, such as JavaSim, SSFNet, Glomosim and its
descendant Qualnet, attempted to address problems that were left unsolved by ns2. Among them,
JavaSim developers realized the drawback of object-oriented design and tried to attack this problem by
building a component-oriented architecture. However, they chose Java as the simulation language,
inevitably sacrificing the efficiency of the simulation. SSFNet and Glomosim designers were more
concerned about parallel simulation, with the latter more focused on wireless networks. They are not
superior to ns2 in terms of design and extensibility.”

Objective Modular Network Test-bed in C++ (OMNeT++) is a public-source, component-based,


modular simulation framework [16]. It is has been used to simulate communication networks and other
distributed systems. The OMNeT++ model is a collection of hierarchically nested modules. The top-level
module is also called the System Module or Network. This module contains one or more sub-modules
each of which could contain other sub-modules. The modules can be nested to any depth and hence it is
possible to capture complex system models in OMNeT++. Modules are distinguished as being either

40
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

simple or compound. A simple module is associated with a C++ file that supplies the desired behaviors
that encapsulate algorithms. Simple modules form the lowest level of the module hierarchy. Users
implement simple modules in C++ using the OMNeT++ simulation class library. Compound modules are
aggregates of simple modules and are not directly associated with a C++ file that supplies behaviors.
Modules communicate by exchanging messages. Each message may be a complex data structure.
Messages may be exchanged directly between simple modules (based on their unique ID) or via a series
of gates and connections. Messages represent frames or packets in a computer network. The local
simulation time advances when a module receives messages from another module or from itself. Self-
messages are used by a module to schedule events at a later time. The structure and interface of the
modules are specified using a network description language. They implement the underlying behaviors
of simple modules.. Simulation executions are easily configured via initialization files. It tracks the events
generated and ensures that messages are delivered to the right modules at the right time.

OMNeT++ is an object-oriented modular discrete event simulator. The name itself stands for
Objective Modular Network Testbed in C++. Although this program can be used to simulate everything
what is based on discrete events (communication protocols, computer networks, multi-processor and
distributed systems, games, etc.), it is very easy to learn and use it. The main advantages of OMNeT++
are:
i) Write the program in C++ programming language.
Ii use a graphical user interface.
iii) And the whole simulation is portable between Unix-based systems, Windows (9x and NTs) and
DOS.
iv) Many different structures can be simulated without modifying the source code and rebuilding the
system, using parameters.
v) Write the C++ code to build the modules used in the simulation (objects, gates): The very easy NED
(Network Description Language) compiler does it.
vi) The GUI offers many possibilities to follow and debug the simulation flow.
vii)Use parameter-watching functions and plot diagrams of them.
viii) Use many pre-defined classes (topology support which contains graph algorithms, finite
deterministic state machine support, etc.), and many other implemented modules (TCP/IP, routing
models) under OMNeT++, their number grows dynamically.
ix) OMNeT++ has clear, well-defined, documented and hierarchically nested modules, which are
available in source code, so you can debug and/or extend them.
x) Run the simulation on many machines at the same time using the PVM support.
xi) Only two days are enough to learn the most important things and implement your first simulation.
The basic workflow using the OMNeT++ is the following:
1) Give the network structure to the framework (e.g., using the NED language, may make the
connections parameter-based),
2) implement the modules which stand at the lowest hierarchy level (in C++),
3) compile and link them,
4) afterwards let the framework call your modules and handle all the message queues, etc.
5) In the end you can evaluate results generated by the built-in parameter-watching functions, and the
figures graphically produced by GNU plot.

41
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

7.1.2. Network Topology


Here I have used 10 nodes network and 60 nodes network ned file. And also included in their respective
C++ file for actual energy efficient shortest path routing concepts. The 10 nodes network code are
given below:

//Routing.ned file

simple Routing
gates:
in: in[];
out: out[];
endsimple

//Net10.ned file

import
"routing";
module Net10
submodules:
rte: Routing[9];

display: "i=misc/node_vs,gold";
connections nocheck:
rte[0].out++ --> rte[1].in++;
rte[0].in++ <-- rte[1].out++;

rte[0].out++ --> rte[2].in++;


rte[0].in++ <-- rte[2].out++;

rte[0].out++ --> rte[3].in++;


rte[0].in++ <-- rte[3].out++;

rte[1].out++ --> rte[2].in++;


rte[1].in++ <-- rte[2].out++;

rte[1].out++ --> rte[4].in++;


rte[1].in++ <-- rte[4].out++;

rte[2].out++ --> rte[3].in++;


rte[2].in++ <-- rte[3].out++;

rte[2].out++ --> rte[4].in++;


rte[2].in++ <-- rte[4].out++;

rte[2].out++ --> rte[5].in++;


rte[2].in++ <-- rte[5].out++;

rte[2].out++ --> rte[6].in++;


rte[2].in++ <-- rte[6].out++;

rte[3].out++ --> rte[6].in++;


rte[3].in++ <-- rte[6].out++;

42
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

rte[4].out++ --> rte[5].in++;


rte[4].in++ <-- rte[5].out++;

rte[4].out++ --> rte[7].in++;


rte[4].in++ <-- rte[7].out++;

rte[5].out++ --> rte[6].in++;


rte[5].in++ <-- rte[6].out++;

rte[5].out++ --> rte[7].in++;


rte[5].in++ <-- rte[7].out++;

rte[5].out++ --> rte[8].in++;


rte[5].in++ <-- rte[8].out++;

rte[6].out++ --> rte[7].in++;


rte[6].in++ <-- rte[7].out++;

rte[6].out++ --> rte[8].in++;


rte[6].in++ <-- rte[8].out++;

rte[7].out++ --> rte[8].in++;


rte[7].in++ <-- rte[8].out++;
endmodule

network net10 : Net10


endnetwork

43
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

7.1.3. Execution:

Figure 18: Run from the Command Promt

44
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Figure 19: Runtime Environment

Figure 20: Routing among the 10 nodes

45
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Figure 21: Routing among the 60 nodes

46
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

7.2. Performance Analysis:

Average Energy Consumption vs. Time Period


60

50
Average Energy Consumption (J)

40

30
LEACH
Series2
Series1
20 HDP

10

0
10 20 30 40 50 60 70 80 90
Time Period

Figure 22: Comparision between LEACH and HDP(Avg Energy Consumption)

In the above figure the red line and blue line indicates the avg energy consumption in the LEACH
protocol and the HDP protocol respectively . That means my protocol HDP is more efficient than LEACH
protocol.

47
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

LEACH
Successfully Packet delivered vs No of Nodes HDP

45000

40000

35000
Packet successfully delivared

30000

25000

20000

15000

10000

5000

0
20 40 60 80 100 120 140 160 180 200
No of Nodes

Figure 23: Comparison between LEACH and HDP (successfully packet delivered)

In the above figure shows that how many packets are successfully delivered with the no of nodes of
their respective network topology.

48
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

CONCLUSIONS AND FUTURE WORK

This report presents HDP, an energy efficient routing algorithm based on Height, Distance and Power
Consumption. This algorithm presents a shortest path between source and destination, which ensures
that this algorithm provides low cost communication and low power consumption because transmitted
power, is taken as input and the critical transmission range (CTR) is considered here. As we consider
CTR, it ensures that the network is connected provided that the network is homogeneous.

Our main aim is to reduce the power consumption among the sensor nodes in wireless sensor
network. But when two nodes use one common node to transmit data, there may be hidden terminal
problem, which can be overcome by MAC protocols.

So, an interesting future work is towards combining the routing algorithm HDP with the energy
efficient MAC protocol in WSN, such as SMAC to combine the both MAC layer and network layer for
finding the shortest path without collision where network layer will find the shortest path and MAC
sublayer will avoid the collision.

49
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

Bibliography
[1] Akyildiz, W. Su, Y. Sankarasubramaniam, E. Cayirci, "A Survey on Sensor Networks", IEEE
Communications, August 2002.

*2+ G.J. Pottie and W. Kaiser, “Wireless Sensor Networks”, Comm ACM, vol. 43, 2000

[3] Tubaishat M & Madria S, "Sensor networks: an overview" IEEE Potentials Volume 22, Issue 2, 2003

*4+ C. Toh, H. Cobb, and D. Scott,” Performance evaluation of battery-life-aware routing schemes for
wireless ad hoc networks”, IEEE International Conference on Communications, June 2001, Volume 9

*5+ M. Khan, G. Pandurangan, and B.Bhargava, “Energy-Efficient Routing Schemes for Wireless Sensor
Networks,” Technical Report CSD TR 03-013, Dept. of Computer Science, Purdue University, 2003,

*6+ S. Banerjee and A. Misra, “Minimum energy paths for reliable communication in multi-hop wireless
networks,” Proceedings of the 3rd ACM international symposium on Mobile ad hoc networking &
computing Lausanne, Switzerland, 2002

[7] Sohrabi, K., Gao, J., Ailawadhi, V., Pottie, G., “Protocols for Self-Organization of a Wireless Sensor
Network,” IEEE Personal Communications Mag., Vol.7, No.5, pp.16-27, Oct. 2000.

*8+ Estrin, D., Govindan, R., “Next Century Challenges: Scalable Coordination in Sensor
Networks,”MobiCom’99, Seattle, WA, Aug. 1999.

[9] Curt Schurgers, Mani B. Srivastava,” Energy Efficient Routing In Wireless Sensor Networks”.

*10+ Broch, J., Maltz, D., Johnson, D., Hu, Y. Jetcheva, J., “A performance comparison of multi-hop
wireless adhoc network routing protocols,” Mobicom’98, Dallas, Texas, Oct. 1998.

*11+ Pearlman, M., Haas, Z., “Improving the Performance of Query-Based Routing Protocols through
‘Diversity- Injection’,” WCNC’99, New Orleans, LA, Sept. 1999.

*12+ Rabiner, W., Kulik, J., Balakrishnan, H., “Adaptive Protocols for Information Dissemination in
Wireless Sensor Networks,” MobiCom’99, Seattle, WA, Aug. 1999.

[13] Koen Langendoen, “Medium Access Control In Wireless Sensor Networks”, published in "Medium
Access Control in Wireless Networks, Volume II: Practice and Standards" edited by H.Wu and Y. Pan, to
be published by Nova Science Publishers in 2007,

[14] Changsu Suh and Young-Bae Ko, “A Traffic Aware, Energy Efficient MAC Protocol for Wireless Sensor
Networks”, This work was in part supported by Korea Science & Engineering Foundation, University IT
Research Center Project and a grant of the 21C Frontier R&D Program.

*15+ W. Ye, J. Heidemann, and D. Estrin. “An energy-efficient MAC protocol for wireless sensor
networks,” in IEEE INFOCOM 2002, June 2002.

50
Energy Efficient Routing Mechanism in Wireless Sensor Network 2010

*16+ G. Lu, B. Krishnamachari, C.S. Raghavendra, “An adaptive energyefficient and low-latency MAC for
data gathering in wireless sensor networks”, Proceedings of 18th International Parallel and Distributed
Processing Symposium, April 2004.

*17+ Abdelmalik Bachir, “MAC Protocols for Sensor Networks: a short survey”, IEEE Communications
Magazine, to appear, September 2005.

*18+ V. Tijs and K. Langendoen, “An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor
Networks”, In Proc.of the First ACM Conference on Embedded Networked Sensor Systems, (Nov. 2003)

*19+ A. Tanenbaum, “Computer Networks”, 4th ed., Prentice Hall, 2003.

*20+ J. Schiller, “Mobile Communications”, 2nd Edition. Pearson Education,

51

Вам также может понравиться