Abstract
Most of the nodes in a wireless sensor network (WSN) remain idle for the maximum period of their lifetime resulting in underutilization of their resources. There are many ongoing research studies to utilize the resources of sensor nodes in an efficient way. Virtualization of sensor network (VSN) is one of the novel approaches to utilize the physical infrastructure of a WSN. VSN can be simply defined as the virtual version of a WSN over the physical sensor infrastructure. By allowing sensor nodes to coexist on a shared physical substrate, VSN may provide flexibility, cost effectiveness, and manageability. This paper proposes a QoS-aware data classification and scheduling framework for VSN in the health care sector. We develop a tiny virtual machine called VSNware for health care applications, which facilitates QoS-aware forwarding of data packets, maintaining the reliability, delay guarantee, and speed. The simulation results also show that the proposed scheme outperforms the conventional WSN approaches.
1. Introduction
Recent advances in electronics have enabled the development of multifunctional smart sensor nodes that are small in size and communicate in an untethered manner over short distances. A sensor network consists of a large number of tiny sensor nodes that are densely deployed over a specific target area [1–4]. There is a robust deployment of WSNs in the health care sector because of their small size. Today's smart sensor node can efficiently monitor different vital signs such as the cardiac data, temperature, blood pressure, pulse rate, and saturation of peripheral oxygen (SPO2) of a patient. In the health care scenario, applications demand different types of QoS requirements such as reliability, end-to-end delay, speed, and timeliness. There are many ongoing efforts to enhance the QoS issues of WSNs in the existing literature [5–7]. In this age of recession, providing QoS affordably in the WSN-based health care system is a big challenge for the increasing worldwide elderly population, which is the largest demographic group in the developed countries. For this very reason, researchers are searching for cost-effective ways to support QoS in WSNs for the health care sector.
Very recently, network virtualization has created a resonance among the network research community. The concept of sensor virtualization has also attracted a great deal of attention from industry and academia [8–10]. Virtualization of sensor network (VSN) can be defined as the separation of functions for the traditional wireless sensor network (WSN) service provider into two parts: the sensor infrastructure provider (SInP), which manages the physical sensor infrastructure, and the VSN service provider (VSNSP), which develops VSN by aggregating the resources from multiple SInPs and offers services to the application-level users (ALUs).
The WSN virtualization renaissance has originated mainly from the realization that most of the sensor nodes remain idle for most of the time in a WSN. Virtualization is one of the best ways to utilize the physical sensor infrastructure. VSN can provide a platform upon which novel sensor network architectures can be built, experimentally tested, and evaluated. In addition, virtualization in WSNs is expected to provide a clean separation of services and infrastructure and to facilitate new ways of doing business with sensor network resources among multiple service providers and application-level users [8].
In this paper, we propose QoS-aware data classification and a scheduling framework for the health care system in VSN. The sensor node senses parallel data and forwards it to a nearby node or gateway node. The gateway node classifies the data as urgent, suspicious, moderate, or normal. The classified data are passed through the decoding module and are queued up in the VSN queue. Finally, the scheduling module sends data to a specific path based on the priority, reliability, and delay requirements of the data packets.
The main contributions of this paper are as follows.
A business model of the virtualization of sensor network is proposed. A tiny virtual machine called VSNware for health care applications has been developed for QoS-aware data packet forwarding. Packet classification and scheduling mechanisms are suggested. A detailed probabilistic analytical model of the reliability and delay for different traffics is proposed. Finally, the simulation results of the proposed scheme are presented with respect to other approaches.
The remainder of the paper is organized as follows. Section 2 reviews the background related to the conventional WSN, virtual sensor network, VSN, and related works. In Section 3, we discuss the detailed architecture of the sensor nodes and the sensor gateway router. Section 4 describes the VSN network model. Section 5 states the classification and scheduling of data packets. Sections 6 and 7 discuss a detailed mathematical model of the delay and reliability for different data traffics. Section 8 presents the performance evaluations and simulation results. Finally Section 9 concludes the paper.
2. Backgrounds
VSN is a brand-new research approach in the field of WSN. Before proceeding further, we need to clarify few basic concepts and the difference between traditional WSN, virtual sensor network, and VSN. In this paper, VSN means virtualization of a WSN as defined in the Introduction and in Section 2.3. The term VSN in this paper is synonymously used for the process of virtualization of a sensor network and for the network that supports virtualization.
2.1. Traditional WSN Approach
Traditional wireless sensor network consists of a large number of sensor nodes that are densely deployed either inside the phenomenon of interest or very close to it [1]. A sensor node senses its surrounding environment, performs necessary computation and processing, and sends the sensory data through multihop or directly to the coordinator node. The coordinator node may be a fixed node or a mobile node capable of connecting the sensor network to an existing communication infrastructure where a user can access the reported data. By integrating sensing, signal processing, and communication functions, a traditional sensor network provides a natural platform for hierarchical information processing [2–4]. The traditional WSN is dedicated for the monitoring of a particular event. But in VSN environment, the same infrastructure can be used by multiple stack holders.
2.2. Virtual Sensor Network
The virtual sensor network consists of a collaborative wireless sensor network. It is formed by a subset of sensor nodes of a wireless sensor network, with the subset being dedicated to a certain task or an application at a given time [11, 12]. In contrast, the subset of nodes belonging to the virtual sensor network collaborates to carry out a given application at a specific time. A virtual sensor network can be formed by providing logical connectivity among collaborative sensor nodes. Nodes can be grouped into different virtual sensor networks based on the phenomenon they track or the task they perform. The virtual sensor network protocol should provide the functionality for network formation, usage, adaptation, and maintenance of a subset of sensors collaborating on a specific task [13].
2.3. VSN and Its Business Model
Unlike the conventional WSN, the VSN environment has a collection of multiple heterogeneous sensor nodes that coexist in the same physical space. VSN is a type of network that creates a virtual topology on top of the physical topology of a traditional WSN. SInP in Figure 1 deploys different sensor nodes. In the traditional WSN infrastructure, the provider and the service provider are the same entity. VSN differentiates between the infrastructure provider and the service provider, thus providing a business model of true virtualization.

Business model for VSN.
SInP deploys sensor network resources. It offers resources through programmable interfaces to different VSNSPs. Different interest groups can deploy sensor nodes and can make individual infrastructures, which can be used by the VSNSP to run individual applications. The VSNSP gets resources from multiple SInPs to deploy VSNs by sharing the allocated virtualized network resources to offer end-to-end application user services. The VSNSP can obtain resources from multiple SInPs. ALUs in the VSN model are similar to those of the existing WSN, except that the existence of multiple VSNSPs from competing SInPs provides a wide range of choices. Any end user can connect to multiple VSNSPs from different SInPs to use multiple applications.
2.4. Related Works
Currently there are few approaches in the WSN [5, 11–16] that focus on the virtual and overlay sensor network rather than the purist view of the VSN approach introduced in this paper. Table 1 summarizes a few of the research projects that act as the background of the proposed research approach. It demonstrates the contemporary research direction in the field of virtualization of sensor networks in general.
VSN research-related projects.
Recently, the Federated Secure Sensor Network Laboratory (FRESnel) has aimed to build a large-scale sensor framework. The goal of this project is to offer an environment that can support multiple applications running on each sensor node [14–16]. It provides an execution environment that hides the system details from the running applications. The system operates in a shared environment. The key characteristics of this approach are a virtualization layer that is running on each sensor node and provides abstracts access to sensor resources, which allows the management of these resources through policies expressed by the infrastructure owner. A runtime environment on each node allows multiple applications to run inside the sensor node. It also provides policy-based application deployment that enables multiple applications to be deployed over the shared infrastructure. In MMSPEED [5], a novel packet delivery mechanism for QoS provisioning was proposed. It provides QoS differentiation in terms of two qualities, such as timeliness and reliability. This approach is based on multiple logical speed layers over a physical sensor network that is based on the conventional virtual sensor network. Based on the speed, it considers different virtual overlays. For virtual layering, it employs virtual isolation among the speed layers. This is accomplished by classifying the incoming packets according to their speed classes and then placing them into the appropriate priority queues. SenShare [15] is another platform that attempts to address the technical challenge of supporting multiple corunning applications in the sensor node. Here each application operates in an isolated environment consisting of an in-node hardware abstraction layer and a dedicated overlay sensor network. Instead of using a virtual machine, SenShare uses a hardware abstraction layer. It is a set of routines in software that emulates some platform-specific details, thereby giving programs direct access to the hardware. The Mate [17] and Melete [18] systems are based on the virtual machine approach that provides reliable storage and enables the execution of concurrent applications on a single sensor node. The VSN approach proposed in this paper is based on the Mate and Melete systems. This modified version of virtual machine is called VSNware. VSNware provides an environment to support different applications for health care systems such as cardiac data, blood pressure, blood sugar, and temperature sensing. VSNware helps to provide the purist view of the virtualization concept. It does so by separating the SInP and VSNSP as discussed in the previous sections. By applying the purist view of virtualization in VSN, this scheme can be efficiently used in the health care system, which is the main contribution of this paper. To the best of our knowledge, no previous research article has explored the VSN approach to design a ubiquitous health care system for the QoS-based vital data classifications and scheduling scheme.
3. Architecture of VSN
In this section we are going to introduce the detail architectural design of the proposed VSN approach and the description of its individual components elaborately.
3.1. System Architecture
Here we briefly describe the detailed system architecture and the software architecture of the sensor node and sensor gateway router (SGR). In the following sections we will explain the architecture in detail. The system architecture consists of three layers: the SInP, VSNSP, and ALU. The software architecture describes the virtualization of the individual sensor nodes and gateway router.
3.1.1. SInP
SInP consists of different sensor nodes. These sensor nodes sense different vital signs of the patient, such as the temperature, heart rate, blood pressure, and blood sugar. To sense the patient body in the VSN environment, we consider two types of sensor node: the fully functional device (FFD) and the reduced functional device (RFD) sensor nodes. SInP deploys sensor nodes in the hospital in a distributed manner. Each group of sensor nodes is divided into different logical areas, which are identified by circles to indicate the SGR domain. Each SGR domain may consist of one or more SGRs, which is an FFD sensor node. Each SGR supports sensor virtualization. In each domain there are many RFD sensor nodes that sense vital signs. The RFD is more resource-constrained than the SGR/FFD.
3.1.2. VSNSP
The VSNSP consists of many virtual SGRs (VSGRs), which are the virtual representations of the processing, storage, and other resources of the SGRs. The links between the VSGRs are the dynamically allocated channels between the SGRs. Since the VSN scheme is based on the IEEE 802.15.4 radio specification, it has 16 channels. Each channel is considered to be an individual path that consists of multiple links between SGRs. Each VSN provides a specific application service to the users. In Figure 2, we depict up to a maximum of 16 VSNs provided by a specific VSNSP as the underlying SInPs can support.

VSN architecture.
3.1.3. ALU
This layer consists of different application level users such as doctors, nurses, patients, or any other specialized users. Based on the application requirements, the ALU sends a request to the VSNSP. The VSNSP then maps the particular VSN according to the request of the specific application. Individual applications may use multiple VSNSP resources. The user may be a machine in the case of machine-to-machine communication, which can involve individual computers and any other smart device.
3.2. Software Architecture for Sensor Node and SGR
Figure 3 depicts the software architecture of a sensor node. It senses vital signs from patients in a health care system. A single sensor node performs multiple sensing tasks by using physical infrastructure virtualization as a service. The typical sensor node architecture consists of a physical layer, an operating system (OS) layer, a virtualization layer, and multiple sensing service layers. The lower layer consists of the physical sensor resources such as a central processing unit (CPU), USB module, RF module, and storage module. Layer 2 consists of a typical multitasking sensor network operating system. We use Embedded Linux in this case. Embedded Linux provides the environment to host the virtualization layer. The virtualization layer supports concurrent service execution. The virtualization layer includes the input/output and application management modules. Finally, the application layer runs multiple services over the virtualization layer, such as the sensing of temperature, cardiac data, blood pressure, and blood sugar.

Architecture of sensor node.
Figure 4 depicts the detailed architecture of the SGR. The SGR is one of the key components in the overall VSN architecture for the health care system. An SGR is a fully functional sensor node that supports the concurrent processing of multiple applications. It also consists of a physical layer, sensor network operating system layer, VSNware layer, and application layer. The lower layer consists of the physical sensor resources, such as the central processing unit (CPU), RF module, and storage module. The sensor operating system layer consists of a typical multitasking sensor network operating system. In this model we use Embedded Linux as it is used in the individual sensor nodes. It provides the environment to run the VSNware. VSNware supports concurrent execution of the applications. VSNware consists of different modules such as forwarding/routing in VSN, input/output, and application management. Finally, the application layer provides the classified data, such as urgent, suspicious, moderate, and normal, over different VSNs based on the reliability and delay requirements.

Architecture of SGR.
4. Network Model of VSN
In this section we propose the network model of VSN based on graph theory. We consider a densely deployed large-scale and heterogeneous wireless sensor network in which N sensor nodes and M sensor gateway routers are uniformly distributed. The nodes and SGRs may determine their geographical locations. In fact, networking in such a WSN is very dynamic and differs from a traditional wired network. A node in a WSN is very tiny and consists of a small processing and storage unit. Since VSN is based on the existing SInP, it inherits most of the properties of a WSN. A link in VSN is the different channels used in a WSN. We use IEEE 802.15.4, which has 16 channels. We describe the network model of a WSN by using the graph theory that follows the procedure discussed in [19, 20]. We also discuss the VSN node and VSN link embedding. Virtual node embedding in VSN is like the conventional network embedding, but link embedding is quite different from the conventional approach. In this case, link embedding is done by dynamically using different channels that consist of multiple links.
4.1. SInP
We model the S network as a weighted undirected graph and denote it by
4.2. VSN Request by ALU
As we discuss the graph-based description of SInP, we also model the VSN request as weighted undirected graphs and denote a VN request in terms of the service request as
4.3. SInP Network Resources Measurement
To measure the different types of resource usage of the SInP, we use the notion of utility. The substrate SInP node utility
The substrate SInP link utility
The substrate SInP storage or memory utility
The total utility of the processing power, link, and storage can be calculated by summing up (1), (2), and (3). Here α, β, and γ are the weighted values to express the node, link, and storage capacity, respectively, by a single utility:
4.4. Residual Resource Measurement
Residual resource management is performed by measuring the available resources remaining after utilization. In this section we have given the mathematical formulation of the remaining resources of the SInP sensor node, corresponding link, and storage only. The residual capacity of the SInP sensor nodes is defined as the total processing capacity of the sensor nodes, which is explained in (5):
In a wireless sensor network, the communication is performed by wireless links. By a link, we mean a wireless link between different SGR nodes. We allocate different channels of a particular wireless link to particular applications in the virtualization of the sensor network. Equation (6) represents the residual channel capacity in the underlying SInP:
There are two types of storage in the underlying SInP node: flash memory and SDRAM. In this mathematical model we only consider the SDRAM, which is only physical memory shared by different applications in the VSN applications. Equation (7) shows the total remaining residual storage for further applications:
4.5. VSN Node and Link Embedding
In this work, the VSN node and link embedding are very much restricted to the SGR and the wireless link between different SGRs. Different VSNSP nodes share the same or different SGRs of the SInP. The typical sharing depends on the storage limit of the SGR. For wireless link embedding, we consider the efficient channel utilization. Individual VSNSPs provide particular services. For example, VSN-1 may provide urgent data services and use channel-1, while VSN-2 may provide suspicious data services and use channel-2 of the specific VSNSP. In this way, the same SInP can be used by different VSNSPs.
5. Packets Classification and Scheduling in VSN
This section discusses the packet classification and scheduling in VSN. Figure 5 depicts the packet classification and scheduling module of the SGR in a VSN environment. It consists of different components such as the traffic classifier, scheduling, channel allocation, and link estimator. Brief descriptions of the mechanisms are given below.
The data packet is received by the IEEE 802.15.4 interface. Then the data is sent to the MAC reception module. All of the data from the MAC reception passes through the traffic classifier module. Based on the information provided in the data packet, such as reliability, delay deadline, and priority information from the application layer, the data are classified as urgent, suspicious, moderate, and normal. The classified data are passed through the 4-to-16 decoder module. Based on the availability of the VSN queues, the data are queued up. The scheduling module sends the data to a specific path based on the priority and other requirements of the data packet and VSN queue. The channel allocation is based on the link estimator information and scheduling requirements. The link estimator module depends on the PRR, RSSI, and LQI for link quality measurements. Finally, the data packets are transmitted to the next VSN gateway.

Protocol architecture of SGR.
In the following sections we describe the individual components in detail.
5.1. Traffic Classifier
The traffic classifier receives different types of data packets from the MAC reception module. A specific VSN may carry particular types of data packets or a combination of different types of data based on the application requirement. The data packets consist of different vital signs of the patient, such as the cardiac data, glucose level, blood pressure, pulse rate, and temperature. The packet received from the sensor nodes includes the data type, deadline, delay, and reliability requirements. Based on the information in the packet, the data are classified as urgent, suspicious, moderate, or normal. The traffic classification is context dependent.
Urgent Data. This includes emergency traffic or other data types specified by the applications. These types of traffic require approximately 100% reliability and a hard delay guarantee. It is usually event-triggered traffic and is generated whenever a life-threatening situation appears. For instance, when the heart rate and blood pressure of a patient exceed the danger limit, an emergency action is needed, which requires urgent transmission with the highest reliability and lowest delay.
Suspicious Data. This type of data requires a strict reliability requirement (>90%) but can tolerate a delay up to a certain limit, such as a medical image like an X-ray or ultrasonography. On the other hand, some data, such as a telemedicine video transmission, must meet a strict delay deadline but can tolerate some packet loss.
Moderate Data. Both delay and reliability guarantees are required. However, moderate data requires soft QoS rather than hard QoS. In this case, the reliability requirement is more than 80%. Different types of medical applications, such as heart rate and SPO2 continuously generate data that must be delivered with moderate reliability and delay requirements.
Normal Data. This type of traffic does not require any strict delay or reliability constraints. It consists of the regular data for patients such as the temperature, blood pressure, and glucose level. For normal data, less than 70% percent reliability is maintained during transmission.
The classified data are transmitted over different VSNs according to their priority, reliability, and delay requirements. Data over different VSNs are forwarded to different users and applications through the dynamically allocated channels.
5.2. VSNs
From a technical point of view, all of the VSNs are the logical combination of the CPU resources, storage, and the link of the SInP. A VSN is formed dynamically based on the requirement of the application level requests provided by different users. However, a typical VSNSP consists of 16 VSNs, due to the dedicated and available channels in the physical layer. These 16 channels of the particular VSNSP can be allocated based on the priority, reliability, and end-to-end delay requirements of the traffic. A particular application may use more than one VSN to ensure guaranteed service. In a specific VSN, there are multiple communication paths by which the data may be transmitted.
5.3. Scheduling
The data scheduling is performed based on the information provided by different components, such as the traffic classifier, VSN priority, and channel allocation module. The goal of this module is to ensure application-specific reliability and end-to-end delay. Different applications have different reliability and end-to-end delay requirements.
5.4. Link Estimator
Link estimation is based on three parameters: the packet reception rate (PRR), received signal strength indicator (RSSI), and link quality indicator (LQI). Based on these parameters, the link estimator provides quality information regarding the particular link. The detailed mathematical derivations of these parameters are given below.
We estimate the current path state by using the link quality information, including the link quality indicator (LQI) and the received signal strength indicator (RSSI) [20, 21]. The RSSI is a function of the distance between two nodes and can be computed as follows:
In (8),
The IEEE 802.15.4 specification ensures that each incoming frame contains a link quality indicator (LQI) value. The LQI indicates the quality of the link at the time of the frame reception. According to the standard, the LQI value must be an integer that is uniformly distributed between 0 and 255, with 255 indicating the highest signal quality. The LQI is measured as follows:
Here,
To calculate the packet reception rate (PRR), each node estimates the link loss rate for every outgoing link using the weighted average loss interval method discussed in [6]. It uses the interval between loss events to estimate the loss rate of a link. We denote the interval between the mth and
The communication nature of VSN enables the measurement of the success rate of a path by using passive information exchange. When a node forwards a packet in a path, it includes the success rate of the path in the packet. The success rate of the ith path of a node,
5.5. Channel Allocation
Channel allocation is a dynamic process by which the system allocates a particular channel to the specific VSN. There are 16 channels in the 802.15.4 PHY layer specification, starting at 2.4 GHz. Based on the link status from the link estimator, this module allocates the channels. The channel quality is computed by the following equation:
With the help of the channel quality computation, the channel allocator selects the channel as follows.
Step 1.
Periodically measure the channel quality with the
Step 2.
Define the scheduling probability
We measure the probability ranges for the channels using the scheduling probability,
Step 3.
We use the probability ranges to follow the data to the channel in each interval of time. A priority is assigned to the channel, referring to its
The channel allocation module selects a particular channel according to a generated random number between 0 and 1. The value of the random number falls into the range defined in (15). Thus the channel with index i related to the selected range is chosen to send the data packet. The probability range is used as the priority. Lower-priority channels have a smaller chance than higher-priority channels to follow data.
6. QoS Model in Delay Domain
This section provides a mathematical model for delay analysis for different types of packets and VSN. Different types of traffic require a certain delay guarantee. Here, we introduce the QoS differentiation model for urgent, suspicious, moderate, and normal data in the delay domain.
Little's law [22, 23] gives us a good approximation regarding the queue behavior and a basis for predicting the performance of the individual queues:
Urgent Packet Processing. Urgent packets have the highest priority. For their processing, there are dedicated VSNs. This ensures almost negligible delay, which includes the short queuing delay.
Suspicious Packet Processing. For delay-guaranteed suspicious packets, the processing is done using the same method used for urgent packets. The packets that are not delay guaranteed face a longer queuing delay. The mean delay of such a packet depends on
Moderate Packet Processing. This type of packet has to wait for any suspicious packets in service and the moderate packets in the ready queue. The delay can be calculated as follows:
Normal Packet Processing. A normal packet has to wait for the suspicious and moderate packets in service and also for the normal packet in the queue. The delay can be calculated as follows:
7. QoS Model in Reliability Domain
This section provides a mathematical model for reliability analysis for different types of packets and VSN. Reliability is a unitless quantity that can be defined as the ratio of the number of unique packets received by the gateway node to the number of unique packets sent by the source node. In this paper, we consider both the link layer reliability and the network layer reliability. In a wireless network, MAC layer retransmission is used to improve the reliability. However, retransmission increases the delay at each hop. Moreover, MAC layer retransmission does not efficiently increase the reliability in a densely deployed WSN due to its increased medium contention. Here we consider a VSN-based approach to achieve the required reliability. For urgent traffic, the VSN approach provides around 100% reliability by using dedicated paths over multiple VSNs. Suspicious data with a reliability requirement of more than 90% are transmitted over multiple paths of multiple VSNs. Moderate data with a reliability requirement of more than 80% are transmitted over multiple paths of a specific VSN. Finally, normal traffic with reliability of less than 70% is transmitted over the available paths. This reliability-differentiated traffic is transmitted with the help of the scheduling module of the network layer and the channel allocation module of the link layer.
Let us assume that the number of unique data traffic sent by the source node is
Now we will address the probabilistic model of reliability [5–7, 23] for different cases, such as multiple paths over multiple VSNs, multiple paths over a single VSN, and a single path over a specific VSN.
Multipath over multi-VSN: in multipath over multi-VSN packet forwarding, if there are m paths in n VSNs, the probability that at least one copy of a packet is successfully received by the SGR is
Multipath over single VSN: in multipath over single VSN packet forwarding, if there are m paths over a VSN, the probability that at least one copy of a packet is successfully received by the SGR is
Single path over single VSN: in a single path over single VSN packet forwarding, to get the required reliability level, packets must be retransmitted since the failure probability is high. The probability denoted as
8. Performance Evaluations
In this section, we discuss the simulation environment and evaluation results. We have implemented and evaluated the VSNware on the Imote2 sensor node. The Imote2 sensor node has a Marvel PXA27x ARM processor with 400 MHz clock speed, 32 MB Flash, and 32 MB SDRAM. We have selected Imote2 as the sensor node for its advanced features such as its memory size and CPU speed. In this evaluation, the sensor node runs Embedded Linux as its operating system. The detailed system specifications are given in Table 2.
System specifications.
We develop a virtual machine for wireless sensor network called “VSNware.” It is based on Embedded Linux. The VSNware environment restricts access to all of the physical resources on the node, thus ensuring that applications are only allowed to access the hardware through the VSNware. VSNware is available in all SGR nodes. VSNware supports concurrent application execution and dynamic application deployment. The VSNware supports applications implemented in high-level language, thereby enabling different applications from health care scenarios to be executed and run in the VSN environment. We compare the proposed VSN approach with MMSPEED [5] and the traditional WSN approach. MMSPEED provides a virtual network of multiple speed layers for a network-wide speed guarantee in terms of the reliability and timeliness. The traditional WSN approach in this performance evaluation process is used to emulate the exact scenario in the conventional method that is provided by the proposed VSN approach. In the following scenarios, utilization of VSNware is the technical point of a VSN-based system evaluation. Here, we focus on different issues such as the memory utilization, CPU utilization, and execution times of individual applications. Efficient memory and CPU utilization are the main concern of the VSN approach. The execution time and CPU utilization are related to each other. We have compared the memory and CPU utilization of our proposed VSN scheme to those of the MMSPEED and traditional approaches.
In Figure 6, we plot the memory usage of the traditional, MMSPEED, and VSN approaches. The sensor virtualization version includes the overhead of the applications due to the additional memory usage of a single sensor node. However, the overhead is linear and increases slowly based on the number of applications being deployed. In comparison to the MMSPEED and traditional approaches, the proposed VSN approach provides better performance. The performance evaluation shows that the proposed VSN approach reduces the average memory utilization by 53% and 56% as compared to the MMSPEED and traditional approaches, respectively.

Comparative memory usage in VSN approach.
In Figure 7, we plot the execution times of different applications for different numbers of virtualized sensor nodes. The figure shows the execution times of 3, 5, and 7 vital sign-sensing applications based on the virtualization of sensor network methodology. The execution time increases linearly based on the number of applications in a sensor node.

Execution time versus number of nodes.
In Figure 8, we plot the CPU utilization versus the number of applications in the traditional approach, MMSPEED approach, and in the virtualization of sensor network scenario. The CPU utilization increases linearly in all of the cases. In this scenario, the VSN approach uses CPU resources efficiently, since it executes different applications on the same sensor node. The performance evaluation result shows that the proposed VSN approach has average CPU utilization that is 56% and 60% lower than that of the MMSPEED and traditional approaches, respectively.

Comparative CPU usage in VSN approach.
In Figure 9, we depict the memory usage of different typical applications, such as medical imaging, cardiac, blood sugar, blood pressure, and temperature. Medical image applications use more memory than other applications. Since the total memory in the Imote2 sensor node is 32 MB, it can provide the environment for the execution and running of the typical applications. The figure also demonstrates the memory usage of different applications in terms of the MMSPEED scheme and the traditional WSN and proposed VSN approaches.

Comparative memory usage by applications.
In Figure 10, we have presented the end-to-end delays of different data flows. It shows that the average delay for the four classes of data packets increases with the increasing number of sensor nodes. It clearly shows that the average end-to-end delay of an urgent packet is significantly lower than that of the suspicious, moderate, and normal data packets.

End-to-end delay versus number of nodes.
In Figure 11, we have presented the end-to-end delays of different data flows with respect to the data rate. The data rate varies according to the priorities assigned to different data flows. Since the highest priority is assigned to the urgent class, it experiences the lowest delay with respect to the other classes of data packets. Suspicious and moderate data also experience minimum delay due to their priority and the VSN approach used in this scheme.

Delay versus data rate.
Figure 12 shows the reliability of different data packets with respect to the number of nodes. We focused on designing our scheme to ensure 100% percent reliability, but, practically, it ensures an average of approximately 98% reliability. The reliability levels of the suspicious and moderate data are also significantly higher than that of the normal data.

Reliability versus number of nodes.
In Figure 13, we demonstrate the packet dropping probability versus the arrival rate. Packet dropping depends on the packet arrival rate at the queues. The figure shows that the urgent data has the lowest loss, followed by the suspicious, moderate, and normal traffic.

Packet dropping probability versus arrival rate.
9. Conclusions
In this paper, we propose a novel approach of a VSN-based packet delivery mechanism to provide service differentiation and probabilistic QoS assurance in the delay and reliability domains. It also explores QoS-based data classification and scheduling schemes for health care applications in a VSN environment. For the delay domain, we use multiple layers based on VSN so that different data packets can dynamically choose the appropriate layers according to the delay requirements of individual data traffic. For the reliability domain, we use multiple virtual layers as well as different paths within the corresponding VSN. The performance evaluations show that the VSN scheme provides low end-to-end delay and high reliability for the urgent data. It also significantly increases the performance for the other data classifications. Our future interest is to emphasize the large-scale and federated sensor network platform with multiple applications sharing the same physical resources that will facilitate the rapid deployment of the ubiquitous health care system.
Footnotes
Acknowledgments
This research was supported by the MSIP (Ministry of Science, ICT and Future Planning), Republic of Korea, under the ITRC (Information Technology Research Center) support program supervised by the NIPA (National IT Industry Promotion Agency) (NIPA-2013-(H0301-13-2001)).
