X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/ThesisAli.git/blobdiff_plain/3d06a5c3f39989cad3f899ea07b088a5e8f3716b..de19a5ef179d0e0b0a56acf7549582147ba4b9c1:/CHAPITRE_03.tex diff --git a/CHAPITRE_03.tex b/CHAPITRE_03.tex index 1c197aa..9a21e09 100644 --- a/CHAPITRE_03.tex +++ b/CHAPITRE_03.tex @@ -11,71 +11,76 @@ %%-------------------------------------------------------------------------------------------------------%% \section{Introduction} -Performance evaluation and optimization solvers are important tools and they are received a great interest by many researchers around the world. In the last few years, several intensive researches have been done about the WSNs, and for a wide range of real-world applications. Therefore, the performance evaluation of algorithms and protocols becomes challenging at various stages of design, development, and implementation. In order to perform an efficient deployment, it is desirable to analyze the performance of the newly designed algorithms and protocols in WSNs. Performance evaluation tools are becoming precious means for evaluating the efficiency of algorithms and protocols in WSNs. -On the other side, the main challenges in the design of WSNs have given rise to a new hard and complex theoretical problems in optimization area. These optimization problems are related to several topics in WSNs such as coverage, topology control, scheduling, routing, mobility, etc. So, the optimization is very important in WSNs because the limited resources of the sensor nodes. For this reason, several proposed optimization problems are mathematically formulated so as to optimize the network lifetime and satisfy the application requirements. Therefore, in order to get the optimal solutions for these mathematical optimization problems, the optimization solver is the best candidate tool to solve them. The optimization solver takes mathematical optimization problem descriptions in a certain file format and calculates their optimal solution. - +Performance evaluation and optimization solvers are important tools and they have received a great interest by many researchers around the world. In the last few years, several intensive researches have been done about the WSNs, and for a wide range of real-world applications. Therefore, the performance evaluation of algorithms and protocols becomes challenging at various stages of design, development, and implementation. In order to perform an efficient deployment, it is desirable to analyze the performance of the newly designed algorithms and protocols in WSNs. Performance evaluation tools are becoming precious means for evaluating the efficiency of algorithms and protocols in WSNs. +On the other side, the main challenges in the design of WSNs handle new hard and complex theoretical problems in optimization. These optimization problems are related to several topics in WSNs such as coverage, topology control, scheduling, routing, mobility, etc. +%So, the optimization is very important in WSNs because the limited resources of the sensor nodes. +For this reason, several problems are modeled by an optimization problem for optimizing the network lifetime and satisfying the application requirements. +%Therefore, in order to get the optimal solutions for these mathematical optimization problems, the optimization solver is the best candidate tool to solve them. The optimization solver takes mathematical optimization problem descriptions in a certain file format and calculates their optimal solution. +While optimization solvers dedicated to specific resolution methods are required linear programming. + \section{Evaluation Tools} -Several proposed works in WSNs require evaluating the power depletion efficiently and accurately for network lifetime prediction. On the other hand, the wrong energy evaluation leads to waste of energy because the sensor nodes might be rendered useless long time before draining their energy. Furthermore, the sensor nodes might die in advance of the expected lifetime. However, evaluation experiments on actually deployed WSN suffer some constraints because the large number of sensor nodes, which are deployed in a hostile and inaccessible environments. Moreover, the analytical (or theoretical) models might be unrealistic for real world systems. -Therefore, the energy consumption results by simulation and testbed evaluations give an alternative on time, precision and cost. In addition, the researchers can also evaluate and test their proposed works with simulation tools as well as testbed devices. +Several proposed works in WSNs require evaluating the power depletion efficiently and accurately for network lifetime prediction. On the other hand, the wrong energy evaluation leads to waste of energy because the sensor nodes might be rendered useless long time before draining their energy. Furthermore, the sensor nodes might die in advance of the expected lifetime. However, evaluation experiments on actually deployed WSN suffer some constraints because of the large number of sensor nodes deployed in hostile and inaccessible environments. Moreover, the analytical (or theoretical) models might be unrealistic for real world systems. +Therefore, the energy consumption results obtained by simulation and testbed evaluations give an alternative on time, precision and cost. Researchers can also evaluate and test their proposed works with simulation tools as well as testbed devices. -Two main evaluation tools for evaluating and validating large-scale wireless sensor networks performance: testbeds and simulations~\cite{ref180}. +Two main evaluation tools are available for evaluating and validating large-scale wireless sensor networks performance: testbeds and simulations~\cite{ref180}. \subsection{Testbed Tools} %~\cite{ref180} -The testbed-based evaluations are necessary before deploying the WSN because it provides more realistic results for the complex physical phenomena constraints of the real world. In this section, only some testbeds are explained. These testbeds enable researchers and programmers to validate the performance of their algorithms and protocols on a physical network. More extensive details about testbeds are available in~\cite{ref178,ref178}. +%The testbed-based evaluations are necessary before deploying the WSN because it provides more realistic results for the complex physical phenomena constraints of the real world. In this section, only some testbeds are explained. +Testbeds enable researchers and programmers to validate the performance of their algorithms and protocols on a physical network. More extensive details about testbeds are available in~\cite{ref178}. \begin{enumerate} [(i)] \item \textbf{MoteLab:} -MoteLab~\cite{ref181,ref182} is a WSN testbed developed at the electrical and computer engineering department of Harvard University. It is a public testbed, researchers can execute their WSN systems using a web-based interface. Authored researchers develop and test their applications and protocols on sensor nodes and visualize sensor nodes output via web-based interface. They are allowed to upload their executable files to run on real mote. Each mote is wall-powered and is connected to a central server that offers scheduling, reprogramming, and data logging. It is composed of 190 TMote Sky wireless sensor nodes. The wireless sensor node specifications are a TI MSP430 processor, 10 KB RAM, 1Mb flash, and Chipcon CC2420 radio. Each node is connected to the Ethernet. The users should be familiar with NesC programming language because the MoteLab only supports the TinyOS operating system. - -\item \textbf{WISBED:} +MoteLab~\cite{ref181,ref182} is a WSN testbed developed at the electrical and computer engineering department of Harvard University. It is a public testbed, researchers can execute their WSN systems using a web-based interface. Researchers develop and test their applications and protocols on sensor nodes and visualize sensor nodes output via web-based interface. They are allowed to upload their executable files to run on real mote. Each mote is wall-powered and is connected to a central server that offers scheduling, reprogramming, and data logging. It is composed of 190 TMote Sky wireless sensor nodes. The wireless sensor node has the following specifications TI MSP430 processor, 10 KB RAM, 1Mb flash, and Chipcon CC2420 radio. Each node is connected to the Ethernet. The users should be familiar with NesC programming language because the MoteLab only supports the TinyOS operating system. -The WISEBED~\cite{ref183} is a large-scale WSN testbed with a hierarchical architecture that consists of four major parts: wireless sensor nodes, gateways, portal server, and overlay network. The lowest level of the hierarchy includes WSN and a set of these sensor nodes are connected to the gateway to provide access to the attached sensor nodes. The gateways are connected to a portal server, which not only supervises the WSN, but it also allows for user interaction with the testbed, where each WISBED site includes separate portal server. The principal objectives of WISEBED are heterogeneous WSN testbed, WSN testbed virtualization, facilitate the system evaluation by end users via a variety of interfaces and software environment. +\item \textbf{WISEBED:} +The WISEBED~\cite{ref183} is a large-scale WSN testbed with a hierarchical architecture that consists of four major parts: wireless sensor nodes, gateways, portal server, and overlay network. The lowest level of the hierarchy includes WSN and a set of these sensor nodes is connected to the gateway to provide access to the attached sensor nodes. The gateways are connected to a portal server, which not only supervises the WSN, but also allows user interactions with the testbed, where each WISBED site includes separate portal server. Several objectives of WISEBED testbed should be provided such as heterogeneity, virtualization, and facilitate the system evaluation by end users via a variety of interfaces and software environment. \item \textbf{IoT-LAB:} -IoT-LAB testbed~\cite{ref184,ref185} supplies a very large scale infrastructure service appropriate for evaluating small wireless sensor devices and heterogeneous communicating objects. IoT-LAB includes more than 2700 wireless sensor nodes deployed in six different regions in France. A different kinds of wireless sensor nodes are available, with different processor architectures (MSP430, STM32, and Cortex-A8) and different wireless chips (802.15.4 PHY @ 800 MHz or 2.4 GHz). Sensor nodes are either mobile or fixed and can be used in different topologies throughout all the regions. -IoT-LAB provides web-based reservation and tooling for protocols and applications development, along with direct command-line access to the platform. Wireless sensor nodes firmware can be constructed from source and deployed on reserved nodes, application activity can be controlled and observed, power consumption or radio interference can be measured using the offered tools. IoT-LAB is part of the FIT experimental platform, a set of supplementary elements that enable experimentation with innovative services for academic and industrial users. +IoT-LAB testbed~\cite{ref184,ref185} supplies a very large scale infrastructure service appropriate for evaluating small wireless sensor devices and heterogeneous communicating objects. IoT-LAB includes more than 2700 wireless sensor nodes deployed in six different regions in France. Different kinds of wireless sensor nodes are available, with different processor architectures (MSP430, STM32, and Cortex-A8) and different wireless chips (802.15.4 PHY @ 800 MHz or 2.4 GHz). Sensor nodes are either mobile or fixed and can be used in different topologies throughout all the regions. +IoT-LAB provides web-based reservation and tools for protocols and applications development, along with direct command-line access to the platform. Wireless sensor nodes firmware can be constructed from source and deployed on reserved nodes, application activity can be controlled and observed, power consumption or radio interference can be measured using the offered tools. IoT-LAB is a part of the FIT experimental platform, a set of supplementary elements that enable experimentation with innovative services for academic and industrial users. \end{enumerate} -A testbed is a large evaluation tool. However, to construct a suitable tool with capable architecture, the information about wanted requirement is required. Many existing testbeds are developed without obvious definition of requirements. Therefore, the research efforts may be halted due to the lack of the precisely defined requirements~\cite{ref186}. The tests and experiments on a large number of sensor nodes lead to a scalability challenge, and a large amount of data for logging, debugging, and measurement output. There are no enough tools so as to deal (semi-)automatically with the amount of data and supporting the researchers to evaluate their systems. For evaluating the systems and protocols on a large sensor networks, the simulation tools are the better choice due to the costs for hardware and maintenance~\cite{ref186}. +A testbed is a large evaluation tool. However, to construct a suitable tool with capable architecture, the information about wanted requirement is required. Many existing testbeds are developed without obvious definition of requirements. Therefore, the research efforts may be halted due to the lack of the precisely defined requirements~\cite{ref186}. The tests and experiments on a large number of sensor nodes lead to a scalability challenge, and a large amount of data for logging, debugging, and measurement output. There are no enough tools so as to deal (semi-)automatically with the amount of data and supporting the researchers to evaluate their systems. -Several sensor nodes testbeds are found in order to support WSNs research efforts, but only a few of them provide common evaluation goals for a large number of users~\cite{ref187,ref181}. However, all the WSN testbeds are shared in general properties, such as the number of sensors are at most hundreds and sometimes only tens of nodes are involved in the typical testbeds; the sensor nodes are placed in a static grid topology; metrics and debug information are obtained via wired connections. Therefore, the WSN testbeds impose strong limitations on the WSNs in terms of size and topology. Moreover, the cost of performing an experiment on a testbed is much higher than on a simulation because setting up the experiments, instrumenting the nodes, gathering the metrics on the performance, and so on are so expensive. Hence, the simulation tools stay the most practical tools to obtain a feedback on the performance of a new solution~\cite{ref180}. +Several sensor nodes testbeds are found in order to support WSNs research efforts, but only a few of them provide common evaluation goals for a large number of users~\cite{ref187,ref181}. However, all the WSN testbeds are shared in general properties, such as the number of sensors are at most hundreds and sometimes only tens of nodes are involved in the typical testbeds; the sensor nodes are placed in a static grid topology; metrics and debug information are obtained via wired connections. Therefore, the WSN testbeds impose strong limitations on the WSNs in terms of size and topology. Moreover, the cost of performing an experiment on a testbed is much higher than on a simulation because setting up the experiments, instrumenting the nodes, gathering the metrics on the performance, and so on are so expensive. For evaluating the systems and protocols on a large sensor networks, the simulation tools are the better choice due to the costs for hardware and maintenance~\cite{ref186}. Hence, the simulation tools stay the most practical tools to obtain a feedback on the performance of a new solution~\cite{ref180}. \subsection{Simulation Tools} % take the simulators from paper "Limitations of simulation tools for large-scale wireless sensor networks" \cite{ref179} -The simulation tools are widely used due to the complexity and difficulty to apply real testbed for WSNs experiments. The simulation tools permit users to evaluate and validate their systems and protocols on WSNs before the deployment. This can reduce the correction actions before operating the WSN. The large-scale evaluation of systems, applications, and protocols are practicable in a flexible environment~\cite{ref180}. -Most of the papers on the wireless sensor networks use the simulation tools to evaluate the performance of their algorithms and protocols. This is a confirmation to consider these tools as predominant techniques used to study and analyze the performance and potency of a wireless sensor networks. Several simulation tools are available for WSNs, which vary in their characteristics and capabilities. So, this section introduces only some of these simulators, and for more details about simulators are available in~\cite{ref188,ref189,ref190}. +The simulation tools are widely used due to the complexity and difficulty to apply real testbed for WSNs experiments. The simulation tools permit users to evaluate and validate their systems and protocols on WSNs before the deployment. This can reduce the correction actions before operating the WSN. +%The large-scale evaluation of systems, applications, and protocols are practicable in a flexible environment~\cite{ref180}. Most of the papers on the wireless sensor networks use the simulation tools to evaluate the performance of their algorithms and protocols. +This is a confirmation to consider these tools as predominant techniques used to study and analyze the performance of WSNs. Several simulation tools are available for WSNs, which vary in their characteristics and capabilities. So, this section introduces only some of these simulators, and more details about simulators are available in~\cite{ref188,ref189,ref190}. \begin{enumerate} [(i)] \item \textbf{NS2:} -The Network Simulator-2 (ns-2)~\cite{ref191,ref192} is an open source, discrete event network simulator. The major goal of ns-2 is to provide a simulation environment to wired as well as wireless networks to simulate different protocols with different network topologies. The ns-2 is constructed using C++, and the simulation interface is provided via OTcl, an object-oriented dialect of Tcl. The network topology is determined by writing OTcl scripts by the users, and then the main program of ns-2 simulates that topology with fixed parameters. ns-2 provides a graphical view of the network by using network animator (NAM). NAM interface includes control features that permit to the researchers to forward, pause, stop, and control the simulation. The ns-2 is the most common and widely used network simulator for scientific research work. +The Network Simulator-2 (ns-2)~\cite{ref191,ref192} is an open source, discrete event network simulator. The major goal of ns-2 is to provide a simulation environment for wired as well as wireless networks to simulate different protocols with different network topologies. The ns-2 is constructed using C++, and the simulation interface is provided via OTcl, an object-oriented dialect of Tcl. The network topology is determined by writing OTcl scripts by the users, and then the main program of ns-2 simulates this topology with fixed parameters. ns-2 provides a graphical view of the network by using network animator (NAM). NAM interface includes control features that allow researchers to forward, pause, stop, and control the simulation. The ns-2 is the most common and widely used network simulator for scientific research work. -The ns-3 is considered a new simulator and a final replacement of ns-2, not an extension~\cite{ref194}. The ns-3 project~\cite{ref193} was started in mid-2006 and is still under intensive development. Like ns-2, ns-3 is an open source, discrete-event network simulator targeted essentially for research and educational use~\cite{ref195}. The ns-3 supports both simulation and emulation using sockets. It also provides a tracing facility in order to help users in debugging. +The ns-3 is considered as a new simulator and a final replacement of ns-2, not an extension~\cite{ref194}. The ns-3 project~\cite{ref193} was started in mid-2006 and is still under intensive development. Like ns-2, ns-3 is an open source, discrete-event network simulator targeted essentially for research and educational use~\cite{ref195}. The ns-3 supports both simulation and emulation using sockets. It also provides a tracing facility in order to help users in debugging. \item \textbf{OMNeT++:} -The OMNeT++ (Objective Modular Network Testbed) is an open-source, free, discrete-event, component-based C++ simulation library, modular simulation framework for building network simulators~\cite{ref158,ref203}. In spite of OMNeT++ is not a network simulator itself, it is obtained a global popularity as a network simulation platform for both scientific and industrial communities. The major goal behind the development of OMNeT++ is to provide a strong simulation tool, which can be used by the academic and commercial researchers for simulating different types of networks in a distributed and parallel way~\cite{ref197}. OMNeT++ has extensive graphical user interface (GUI) and intelligence support. It runs on Windows, Linux, Mac OS X, and other Unix-like systems. It provides a component architecture for models. Components (modules) are programmed in C++, then assembled into larger components and models using a high-level language (NED)~\cite{ref198}. Several simulation frameworks can be used with OMNeT++ such as INET, INETMANET, MiXiM, and Castalia, where each of them provides a set of simulation facilities and can be used for a specific applications. +The OMNeT++ (Objective Modular Network Testbed) is an open-source, free, discrete-event, component-based C++ simulation library, modular simulation framework for building network simulators~\cite{ref158,ref203}. Even if OMNeT++ is not a network simulator itself, it has obtained a global popularity as a network simulation platform for both scientific and industrial communities. The major goal behind the development of OMNeT++ is to provide a strong simulation tool, which can be used by the academic and commercial researchers for simulating different types of networks in a distributed and parallel way~\cite{ref197}. OMNeT++ has extensive graphical user interface (GUI) and intelligence support. It runs on Windows, Linux, Mac OS X, and other Unix-like systems. It provides a component architecture for models. Components (modules) are programmed in C++, then assembled into larger components and models using a high-level language (NED)~\cite{ref198}. Several simulation frameworks can be used with OMNeT++ such as INET, INETMANET, MiXiM, and Castalia, where each of them provides a set of simulation facilities and can be used for specific applications. \item \textbf{OPNET:} -The OPNET (Optimized Network Engineering tool)~\cite{ref192,ref200,ref201} is the first commercial simulation tool that developed in 1987 for communication networks. It is a discrete event, object-oriented, general purpose network simulator, which is widely used in industry. It uses C and Java languages. It provides a comprehensive development environment for the specification, simulation, configuration, and performance analysis of the communication network. The OPNET permits researchers in developing the various models by means of a graphical interface. It provides different types of tools such as Probe Editor, Filter Tool, and Animation Viewer for data collection to the model graph and animate the resulting output. Unlike ns-2, the OPNET provides modeling for different sensor-specific hardware, such as physical-link transceivers and antennas. It includes sensor-specific models such as ad-hoc connectivity, mobility of nodes, node failure models, modeling of power-consumption, etc. The OPNET is commercial simulator and the license is very expensive. Therefore, this represents the main disadvantage of that simulator. +The OPNET (Optimized Network Engineering tool)~\cite{ref192,ref200,ref201} is the first commercial simulation tool developed in 1987 for communication networks. It is a discrete event, object-oriented, general purpose network simulator, which is widely used in industry. It uses C and Java languages. It provides a comprehensive development environment for the specification, simulation, configuration, and performance analysis of the communication network. The OPNET allows researchers to develop various models by means of a graphical interface. It provides different types of tools such as Probe Editor, Filter Tool, and Animation Viewer for data collection to the model graph and animate the resulting output. Unlike ns-2, the OPNET provides modeling for different sensor-specific hardware, such as physical-link transceivers and antennas. It includes sensor-specific models such as ad-hoc connectivity, mobility of nodes, node failure models, modeling of power-consumption, etc. The OPNET is commercial simulator and the license is very expensive. Therefore, this represents the main disadvantage of that simulator. \item \textbf{GloMoSim:}