6

Click here to load reader

[IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

  • Upload
    bachar

  • View
    213

  • Download
    1

Embed Size (px)

Citation preview

Page 1: [IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

Mobile wireless sensor networks using MDSAP, Model for a Hospital Application

Samir El-Haddad Marc Girod Genet Bachar El-Hassan Institut National de Télécommunications Institut National de Télécommunications Lebanese University

91011 Évry cedex France 91011 Évry cedex France Tripoli, Lebanon [email protected] [email protected] [email protected]

Abstract—This paper covers Sensor Networks, their different

applications and problems encountered and in particular the

routing problem which constitutes a major constraint in sensor

networks today. The Modified Directional Source Aware routing

Protocol (DSAP) is presented. The goals intended were to build on

the work already started on the modified DSAP algorithm for

routing in a WSN network, try to find the right structure for each

component in the model based on its properties, then combining all

of the elements in one complete structure that serves fixed and

mobile users. The ideas were inspired by the GSM and TCP/IP

technologies, and tend to apply some of their concepts in the model of the hospital.

Key words: Bluetooth, Directional Value (DV), DSAP, Energy,

Gateway, Metric, Power, Protocol, Routing, Sensor Network,

Shortest Path, Source, Topology, WPAN, ZigBee.

I. INTRODUCTION

Sensor networks are dense wireless networks of small low-cost sensor nodes, which collect and disseminate environmental data. Wireless sensor networks facilitate monitoring and controlling of physical environments from remote locations. Unlike traditional networks, they depend on dense deployment and coordination to carry out their data.

Each sensor node is capable of only a limited amount of processing. But when coordinated with the information from a large number of other nodes, they have the ability to measure a given physical environment in detail. Thus, a sensor network can be described as a collection of sensor nodes which co-ordinate to perform some specific action. Unlike traditional networks, sensor networks depend on dense deployment and co-ordination to carry out their tasks.

Wireless sensor networks are complex distributed systems of nodes with sensing, data processing and storage capability, wireless-communication interfaces and, in general, limited power [1],[5].

Sensor networks have a variety of applications. Examples include environmental monitoring – which involves monitoring air soil and water, condition based maintenance, habitat monitoring (determining the plant and animal species population and behavior), seismic detection, military surveillance, inventory tracking, smart spaces etc[6]. In fact, due to the pervasive nature of micro-sensors, sensor networks have the potential to revolutionize the very way we understand and construct complex physical system [5].

This paper is organized as follows. After a brief introduction, the major problems of sensor networks will be discussed in section 2. The existing routing mechanisms will be briefly introduced afterwards. Section 4 will review the considered routing protocol that will be used on the fixed nodes in the hospital. In section 5, we will be detailing the model for the hospital application and proposing an algorithm for fixed and mobile node that will use the MDSAP algorithm. Finally, section 6 goes over the main points and outlines our future research.

II. PROBLEMS IN SENSOR NETWORKS

Previously, sensor networks consisted of small number of sensor nodes that were wired to a central processing station. However, nowadays, the focus is more on wireless, distributed, sensing nodes. But, why distributed, wireless sensing? When the exact location of a particular phenomenon is unknown, distributed sensing allows for closer placement to the phenomenon than a single sensor would permit. Also, in many cases, multiple sensor nodes are required to overcome environmental obstacles like obstructions, line of sight constraints etc. In most cases, the environment to be monitored does not have an existing infrastructure for either energy or communication. It becomes imperative for sensor nodes to survive on small, finite sources of energy and to communicate through a wireless communication channel.

Another requirement for sensor networks would be distributed processing capability. This is necessary since communication is a major consumer of energy. A centralized system would mean that some of the sensors would need to communicate over long distances that lead to even more energy depletion. Hence, it would be a good idea to process locally as much information as possible in order to minimize the total number of bits transmitted.

Here is a brief description of Sensor Networks problems [6]:

Energy Efficiency: Energy efficiency is a dominant consideration. This is because sensor nodes only have a small and finite source of energy. Many solutions, both hardware and software related, have been proposed to optimize energy usage.

Localization: In most of the cases, sensor nodes are deployed in an ad hoc manner. It is up to the nodes to identify themselves in some spatial co-ordinate system. This problem is referred to as localization.

978-1-4244-2108-4/08/$25.00 © 2008 IEEE 1

Page 2: [IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

Routing: The routing technique to be used in sensor networks is an important issue to consider. The essential minimum routing has to be done in order to save energy.

In conclusion, sensor nodes have various energy and computational constraints because of their inexpensive nature and ad-hoc method of deployment. Considerable research has been focused at overcoming these deficiencies through more energy efficient routing, localization algorithms and system design.

III. ROUTING PROTOCOLS

Traditional routing techniques and algorithms used in ad-hoc networks cannot be usually used in sensor networks. One of the challenges of designing a routing protocol for wireless sensor networks is to find the final destination and path that will be the most reliable for delivering the packets without retransmitting or discovering a new path.

A. Routing Protocols categories

Most of the existing routing protocols can be classified into three categories [10]: proactive, reactive, and a hybrid of proactive and reactive.

Proactive Routing algorithms: Each node calculates proactively consistent and up-to-date routing information to all nodes and stores that information in routing tables, which are periodically or on-demand exchanged between the nodes. When the network topology changes, the nodes propagate update messages throughout the network to update the network image.

Reactive Routing algorithms: Each node calculates routing information only when data is ready to be transmitted adopting a lazy routing approach. The calculated path is considered valid as long as the destination is reachable or until the route is no longer needed.

Hybrid Routing algorithms: The third category maintains partial topology information of local hosts. Routing decisions are made either proactively or reactively..

B. Current criteria’s for building a routing algorithm

Several Routing protocols were proposed based on the following criteria [8]:

Maximum Power Available route: the route that has maximum total power available is preferred. The total power available is calculated by adding the power of each node along the route.

Minimum Energy route: the route that consumes minimum energy to transmit the data packets between the sink and the sensor node is chosen.

Minimum Hop route: the route that makes the minimum hop to reach the sink is preferred.

Another important issue is that routing may be based on the Data-Centric approach [4]. In data-centric routing, interest dissemination is performed to assign the sensing tasks to the sensor nodes. There are two approaches used for interest dissemination:

• Sinks broadcast the interest,

• Sensor nodes broadcast an advertisement for the available data and wait for a request from the interested nodes.

Data-centric routing requires attribute-based naming. For attribute based naming, the users are more interested in querying an attribute of the phenomenon, rather than querying an individual node. For instance "the area where the temperature is over 70 degree F is a more common query than the temperature read by a certain node. Attribute-based naming is used to carry out queries by using the attributes of the phenomenon. Attribute-based naming also makes broadcasting, attribute-based multicasting, geocasting, and anycasting important for sensor networks.

IV. DIRECTIONAL SOURCE AWARE ROUTING PROTOCOL

(DSAP)

DSAP is a routing protocol that depends on the local information available from the neighbors of the transmitting node [1]. The idea is to collect the information from the neighbors and based on this information, the routing protocol decides which neighbor should receive the packet [9]. This protocol is based on directional routing. In directional routing, each node needs to know the direction of the destination so it can forward the packet in that direction. The only routing operation that is performed by a node is to forward the packet to the nearest neighbor that will be capable of transmitting the packet one hop closer to the final destination. Then the responsibility will be on the new node to find one of its neighbors that can forward the packet toward the final destination.

The notion of Directional Value (DV) system was introduced and this DV helps in solving the problems of routing and maintaining the paths to forward the packets.

A. Directional Value (DV)

A unique identification system for the networks that we are using has been developed in order to solve the problem of routing. The idea behind this identification system is to identify the location of each node in the network, which will help in the routing of the packets. The system has the following properties:

• Each node has a unique ID.

• Each ID gives how far the node is from the network perimeter in each direction.

• Each node can compute the relative direction of another node from its ID.

The Topology of the system has also to be known.

A general topology is described in fig. 1 where each node has 8 directions that he can pass the information through.

To construct the directional value, each node in each topology has a fixed number of neighbors. Each neighbor represents a direction that the node can route through it, as shown in fig. 1. How far the node is from the edge of the network in each direction represents the directional value of each node. This number is unique for each node and can be

978-1-4244-2108-4/08/$25.00 © 2008 IEEE 2

Page 3: [IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

used as the ID number for each node for the purposes of routing. Each topology is constructed from fig. 1 by eliminating the directions that are not used in that topology.

Figure 1. Directional 8 Neighbor node

Let’s take the case of the four-neighbor topology with 12 nodes distributed in a matrix of 4 columns and 3 rows as depicted in fig. 2:

Figure 2. 2D Topology with up to 4 Neighbors

For instance, node 5 would have an identifier of (1, 1, 2, 1). This means that there is 1 node to the edge in direction 0 (left), 1 in direction 1 (up), 2 in direction 2 (right), and 1 in direction 3 (down). Since we have control over the placement of the nodes, as well as a fixed topology, we can easily hard-code this information into each node. In the case of a random topology we have to discover the directional values of each node in the network. From this directional value, the Directional Source-Aware routing Protocol (DSAP) was developed by Salhieh, Weinmann, Kochhal, and Schwiebert in 2001[9].

B. Current DSAP Limitations

The two existing types of the DSAP algorithm present many disadvantages: in the power aware case, sometimes the source chooses the path with the maximum power even if it’s not the shortest path.

On the other hand, the power of the sensor will decrease while passing through it. This can lead to an unacceptable situation because some nodes will lose their power faster than other nodes. Taking the same path multiple times can cause the nodes of this path to lose their power, leaving other nodes intact. Also, sometimes we are not obliged to take the path with maximum power. We can take the shortest path and leave the path with maximum power available and ready for use in case an urgent event happens.

The goal is to find a more reliable protocol i.e. a modified version of the DSAP protocol making a compromise between the shortest path and the maximum power.

C. Maximum Power utilization in Sensor Networks

We can divide the messages exchanged between the different sensor network nodes into three categories:

We can have the messages with Low priority, messages with High Priority (urgent messages) and messages with Medium Priority noting that the priority is going to be decided based on the application to be monitored, e.g. based on the temperature variation, the priority can be set.

Each type of messages will be treated and routed differently. Low priority messages will take the shortest path, without considering the power of the nodes. High Priority messages will take the path with maximum power even if it’s not the shortest. The goal is to reach the destination no matter what.

We can also think that the urgent message should reach the destination very fast, thus taking the shortest path. But this minimum path can have the minimum power and the message can be easily lost. In some scenarios we prefer reaching the destination, with little latency, than not reaching it at all.

With Medium Priority messages, we can still use the shortest path as long as the power is over a certain threshold noting that the threshold is also going to be decided based on the amount of data that will be transmitted each time an event will occurs. When the power decreases under this threshold, then the path can be changed. We can then take the second shortest path and check its power as well. We always mean by “power” the power of the next expected source, or the power of the neighbor to whom we are planning to the send the message.

At a certain time, the power of the different neighbors for whom we can send the message decreases under the threshold. In that case, the message will be treated as urgent message and the path with maximum power will be chosen.

In all scenarios, after a certain time, the power of a node can be zero meaning that the node lost its functionality and became down. After all, every sensor network has a finite life time. This algorithm was simulated in OMNeT++ and showed interesting results [2],[3],[7],[11].

978-1-4244-2108-4/08/$25.00 © 2008 IEEE 3

Page 4: [IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

V. MODEL FOR THE HOSPITAL APPLICATION

A. Geometric Structure

The geometric structure is in 3D in the real model, but we will considerate it for simplicity in the 2D plane. This plane is regularly implanted by fixed Zigbee nodes as in fig. 3.

Figure 3. Geometric structure for fixed and mobile nodes

The big blue nodes are fixed nodes; let’s call them beacons or B-Nodes. The mobile nodes are the orange tiny nodes and let’s call them mobiles or M-Nodes.

B. B-Nodes

The very basic role of B-Nodes is the routing of data that does not require mobility. In our application, the hospital responsible staff wants to monitor some vital signs in the hospital, e.g. temperature, humidity, smoke, pollution, noise… this data contain a lot of duplicated information, so we need to treat the data aggregation in it. The sinks for this data are known: they are data servers with Zigbee interfaces that analyse the incoming data and throw alarms in case of danger, i.e. threshold overflow, and that can be queried for status of these vital signs. As a result, these data servers should be constantly powered up to be able to serve all of the time. Of course replicates can be created for load balancing and more security.

Let us consider the addressing of B-Nodes. If we want to use the modified DSAP algorithm, the addressing will be formed of 4 numbers in the 2D case, and of 6 numbers in the 3D case. Those numbers represent the geometric location of B-Nodes and are called the directional values (DVs), e.g. the address of the top left B-Node in the preceding figure is 0.0.2.2.

The second important role of these nodes is to serve as beacons to M-Nodes, and to route their traffic. This way we maximize the autonomy of mobile nodes. This means that M-Nodes register their location with the B-Node they have around. The M-Nodes send and receive data through this B-Node.

An important issue to discuss here is the routing. The routing for the static data we talked about can use DSAP, but should take in consideration the idea of an already fixed node and data aggregation. The traffic that is caused by the M-Nodes can use the DSAP as it is, which means that all the traffic of the

M-Nodes is routed on the infrastructure of the B-Nodes. This increases efficiently the autonomy of M-Nodes in terms of power consumption.

C. M-Nodes

The identity of each M-Node is very important because it represents a patient or a doctor or a responsible. So each M-Node is characterized by a record of a serial number, a name, and an address. The serial number is affected by the hospital to individuals. The address is composed by the visited B-Node address plus an additional number that identify the M-Node in the corresponding B-Node.

The M-Node is responsible for processing and transferring data related to the person carrying the node. For example, a node on a patient can measure the heart beat rate, temperature, breathing pattern, blood pressure… and transfer it on demand or periodically to the corresponding doctor or nurse…

There are different classes of M-Nodes, depending on the type of mobility of the node and on its average velocity. A doctor is faster than a patient, and this affects the rate of refreshing the location.

Only one type of M-Nodes requires attention. This is the type carried by doctors, nurses and whoever wants to check for information via his PDA. We know that data is exchanged with the PDA over the Bluetooth technology. For making this data readable by our B-Nodes infrastructure, we should create a device that translates data between Bluetooth and Zigbee (802.14.5). This device will be carried by the doctor, nurse… and will be physically completely independent of the M-Node.

The update of location is based on several possible criteria, for example the best strength signal, the B-Node with maximum energy or with minimum load, where each B-Node supports several M-Node.

D. Communication between mobile nodes and scenarios

One scenario is the following: M-Node 1 (bottom right corner) wants to speak with M-Node 2 (top left corner). 1 and 2 is the nodes serial number. M-Node 1 is registered with B-Node 2.2.0.0 on some logical channel, e.g. channel 3, and M-Node 2 is registered with B-Node 0.0.2.2 on the logical channel 5. M-Node 1 wants to send a message to M-Node 2. It queries a central database that plays a role similar to DNS for asking information about the place of M-Node 2, i.e. about the B-Node responsible for it. The response of the query will be 0.0.2.2.5. So, knowing this information, B-Node 2.2.0.0 starts the normal DSAP routing to reach M-Node 2. This is done by delivering the data to 0.0.2.2, and then this node reads the last tag in the address, here is 5, and delivers the data to the corresponding M-Node.

Another Scenario is the data exchange between M-Nodes that are registered with the same B-Node, which should not require the query of the central database. However, the B-Node should have somehow a cache that reduces the queries overhead.

Another scenario is changing the B-Node. For example, the preceding M-Node 1 was registered with B-Node 2.2.0.0 and

978-1-4244-2108-4/08/$25.00 © 2008 IEEE 4

Page 5: [IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

moves in space, e.g. one step upward. The new B-Node is 2.1.0.1. A process of un-registering with the previous one and registering with the new one is started. More precisely, each B-Node sends a signal repeatedly to every M-Node that can listen i.e. broadcast. That signal carries information about the B-Node such as its ID (i.e. DV), its power level, its number of registered M-Nodes… The M-Node, periodically and with the same rate, detects the different signals and analyzes them to decide if a new process of deregistering and registering is necessary, and in which direction, i.e. which B-Node we should move to.

A possible unpleasant scenario exists: a node is sending data to a certain M-Node that has changed position and has not yet updated its position in the central database. We can however tolerate this scenario by providing a simple solution to it/ when we look for a node and we don’t find it, we just look again. This creates a delay but finally the destination node is reached.

E. Parameters and factors

There are a lot of parameters that affect the dimensioning of the model and its optimization. Some of them are imposed by the real hospital model, and some are to be conveniently chosen. They are mainly the following:

• Density of B-nodes and density of M-nodes

• Traffic of M-nodes

• Refreshing location rate for M-nodes

• Maximum number of M-nodes per B-node

• Probability of being out of reach

• Rate of measuring the vital signs

F. Remarks and final words

In the transport layer, we should make a distinction between data related to B-Nodes, e.g. temperature, and data caused by the traffic of the M-Nodes. For data related to B-Nodes, we don’t care about liability. So we use UDP, we calculate somewhere the mean average of temperature and we don’t care about some mistaken measurements… On the contrary, data coming from M-Nodes should be treated carefully. So we prefer to use TCP, because an erroneous heart beat rate can cause a critical problem and this is not tolerable.

We should well understand that we are manipulating the third layer in the Zigbee technology, i.e. the network layer responsible for routing. So we only need he first two layers specified within 802.14.5, not all the protocol stack of the Zigbee technology.

G. Algorithms

We will make the following assumptions:

• The geometry is in 2D

• The directional values of the central database that plays the role of name and location resolution are 10.10.10.10

• The directional values of the database that store data coming from B-nodes are 5.10.15.10

• We use DSAP_route(DestinationDV, Priority, Data) to route data to the destination node using the modified DSAP algorithm. If we want to use DSAP with aggregation, we use DSAP_route_aggregate(DestinationDV, Priority, Data)

1) M-Nodes The algorithm for sending data or a request to some

destination is a simple request to the corresponding B-Node, e.g. the M-Node 3.6.7.4.2 wants to send data to the M-Node 1.2.9.8.3. It uses the following command:

Send(1.2.9.8.3, data).

This command is directly sent to the B-Node 3.6.7.4 that start the routing of the message based on DSAP.

Periodically, the M-Node executes the following routine responsible for updating location:

void update_routine()

{

for (i=0; i<Neighbors_Number; i++)

{

score[i] = 0.8 * Signal[i].Strength +0.2 * Signal[i].Power;

iselected = i where score[i] is minimum;

If ( HomeNode != signal[iselected].ID)

{

Deregister(HomeNode);

HomeNode = signal[iselected].ID

Register(HomeNode)

}

}

}

The M-Node:

• captures the signal of different B-Nodes in the neighborhood, computes a score for each one based on the strength of the signal measured by the current M-node and the power remaining in the B-node,

• and elects the best B-Node to register with. In case it finds a better B-Node, the M-Node initiates a deregistration with the old B-Node and then performs a registration with the new B-Node.

2) B-Nodes First of all, we will consider the algorithm for routing data,

if they are issued from an M-Node. The B-Node receives the command Send (1.2.9.8.3, data), so it starts the routing. It first

978-1-4244-2108-4/08/$25.00 © 2008 IEEE 5

Page 6: [IEEE 2008 4th International Conference on Wireless Communications, Networking and Mobile Computing (WiCOM) - Dalian, China (2008.10.12-2008.10.14)] 2008 4th International Conference

separates the destination node number (here 3) from the destination address and concatenates this node number with the data in some predefined structure called 3-data. Then, the B-Node queries the central database for retrieving the location of the M-Node called e.g. “Samir Haddad” (located as 1.2.9.8.3). So it executes the following command:

DSAP_route(10.10.10.10, 2, “where is Samir Haddad?”)

and then waits for answer. It receives the answer, here 1.2.9.8.3, and sends the actual data to this node using the following command:

DSAP_route(1.2.9.8, 3, 3-data)

Notice that “3” is added to the beginning of data in order that the B-Node 1.2.8.9 delivers data to the M-Node 3. The priority is here the highest i.e. 3.

When the B-Node receives the data, it checks the header of this data, in our example 3.

One importing duty of a B-Node is sending its own data to the central database. A recurrent routine is launched on the B-node with a period that depends on the variation speed of the parameter that the node is measuring. This is achieved through the following publishing routine:

void publish_routine()

{

DSAP_route_aggregate(5.10.15.10,1, Temperature)

}

One final thing we must mention is that the B-Node should periodically emit a signal containing information about the node itself, like how much power left on it, how many M-Node are registered with it.

VI. CONCLUSION

In this paper, we talked about sensor networks, their problems and applications. We have then reviewed the DSAP and MDSAP routing algorithms. Then we proposed a new algorithm for the hospital application based on the mobility and the type of messages exchanged between the sensor nodes: the message can have a low, a medium or a high priority.

The flexibility, low cost, and rapid deployment characteristics of sensor networks create many new and exciting application areas for remote sensing. In the future, this wide range of application areas will make sensor networks an integral part of our lives. However, realization of sensor networks needs to satisfy the constraints introduced by factors such as fault tolerance, scalability, cost, hardware, topology change, environment and power consumption.

REFERENCES

[1] Ayad Salhieh, “Efficient Communication in Stationary Wireless Sensor Networks,” Dissertation Submitted to the Graduate School of Wayne State University, Detroit, Michigan in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY, 2004.

[2] Andras Varga. OMNeT++- Discrete Event Simulation System. User Manual. March 29th, 2005.

[3] C. MAllanda, A. Suri, V. Kunvhakarra, S.S. IUyengar, R. Kannan and A. Durresi, “Simulating Wireless Sensor Networks with Omnet++,” January 24th, 2005.

[4] Bhaskar Krishnamachari, Deborah Estrin, Stephen Wicker. “Modeling Data-Centric Routing in Wireless Sensor Networks”.IEEE INFOCOM 2002.

[5] G. Pottie and W. Kaiser, “Wireless integrated network sensors,” Communication ACM, 43(5):51–58, May 2000.

[6] Archana Bharathidasan, Vijay Anand Say Ponduru. “Sensor Networks: an Overview”.

[7] Samir El-Haddad, Marc Girod-Genet, and Bachar El-Hassan, “Simulation and refinement of Directional Source Aware routing Protocol for wireless sensor networks,” ICTTA’06, April 2006.

[8] W. R. Heinzelman, A. Chandrakasan, and H. Balakrishnan, “Energy-Efficient Communication Protocol for Wireless Microsensor Networks,” In Proceedings of Hawaiian Int’l Conference on Systems Science, January 2000.

[9] A. Salhieh, J. Weinmann, M. Kochhal, and L. Schwiebert., “Power Efficient Topologies forWireless Sensor Networks,” International Conference on Parallel Processing, pages 156– 163, Sep 2001.

[10] Niklas Steinleitner. "Efficient Routing in PAN and Sensor Networks," Center for Informatics, University of Göttingen, Lotzestrasse 16-18, 37083 Göttingen, Germany.

[11] Samir El-Haddad, Marc Girod-Genet, and Bachar El-Hassan, “DSAP for wireless Sensor Networks- Modified Algorithm and Simulation using OMNeT++,” SETIT, March 2007.

978-1-4244-2108-4/08/$25.00 © 2008 IEEE 6