1 Introduction

Typical service architecture of a wireless sensor network consists of users, a sink, and a number of sensor nodes [1], as shown of Fig. 1a. In the service architecture, users are remote from a wireless sensor network and connect with a sink through legacy networks, e.g. Internet or Satellite. The sink gathers data from the many sensor nodes in data-centric multi-hop communication and forwards the data to the users via legacy networks. In other words, the sink functions as the gateway between the wireless sensor network and users. However, in practical sensor network applications, there are the traditional remote users as well mobile users [27] such as firefighters and soldiers. The mobile users move around sensor fields to perform their own missions like saving life of victims in disaster areas and might not have any direct communication through legacy networks. In other words, wireless sensor networks are the only communication channel between the mobile users and the sink in practical sensor fields. Therefore, in wireless sensor networks without legacy networks, supporting both the remote users and the mobile users is an important issue.

Fig. 1
figure 1

Service architectures of wireless sensor networks: (a) typical sensor network architecture, (b) service architecture based on single static sink with legacy networks, (c) service architecture based on mobile sink, (d) service architecture based on dynamic sink, (e) service architecture based on singe static sink with sensor network, and (f) service architecture based on multiple static sinks

Recently, many protocols for supporting the mobile users on wireless sensor networks have been proposed [211]. The proposed protocols usually take into account temporary structures to deliver data to mobile users. Since the mobile users is able to only communicate with a wireless sensor network, a mobile users temporarily constructs its own structure to obtain data from the wireless sensor network. When a mobile user needs data from the wireless sensor network, the mobile user globally floods a query to establish a temporary tree structure on the whole wireless sensor network. The root of the temporary tree structure gathers data from the wireless sensor network. Then, the mobile user requests and obtains the collected data to the root via the temporary tree structure. On the other hand, some of the existing protocols consider temporary source-based structures by which mobile sinks can derive data from each source nodes. If a sensor node perceives an event such as targeted object and high temperature, the sensor node becomes the source node and then the source node establishes a source-based structure on the whole sensor network. Mobile users ask data to each source node via each source-based structure and then they gather data from each source.

However, the temporary structures do not contain the static sink that performs as the gateway between a wireless sensor network and legacy networks. In other words, the traditional remote users cannot gather data from the wireless sensor network. It is because the existing protocols for supporting mobile users are designed in new communication manners that merely focus on data delivery to the mobile users except considering the traditional communication manner with the remote users. Also, the temporary structures are constructed per either each mobile user or each source node so that too many structures could be established in proportion to the number of mobile users or source nodes on a wireless sensor networks. Namely, the temporary structures lead to a large amount of energy consumption of sensor nodes in the wireless sensor network and network lifetime of the sensor network would be dramatically shortened. Moreover, in case of protocols exploiting the source-based structures, since the structures are constructed per each source node, the protocols cannot support collective information gathering such as object detection [12, 13] and mean temperature. If a sensor node detects an object like a tank or a victim, the sensor node becomes a source node and reports data to the mobile users. Because the object is detected by many sensor nodes, too many source-base structures could be established to deliver data to the mobile users. If there are a large number of targeted objects, the wireless sensor network would be dying quickly.

In this paper, we introduce a novel service protocol that solves the disconnection problem of both remote and mobile users, the temporary structure construction overhead, and the collective information gathering problem, named the multiple static sinks based service protocol as shown in Fig. 1f. The proposed protocol relies on the traditional service architecture of wireless sensor networks. In the architecture, multiple static sinks connect with legacy networks and each other by the legacy networks, i.e., they exist as gateways between legacy networks and a wireless sensor network. The wireless sensor network is divided to the multiple static sinks; then, they distributively gather data from their own allocated area. The distributively collected data could be aggregated and shared among the multiple static sinks and then the data would be delivered to remote users. When a mobile user moves around the sensor network, the mobile user requests/gathers interested data to/from the nearest one of the multiple static sinks. In other words, the proposed protocol based multiple static sinks can energy-efficiently support both the remote users and the mobile users with low data delivery latency and high data delivery ratio. Simulation results show that the proposed protocol based multiple static sinks is more efficient in terms of energy consumption, data delivery ratio, and delay than the existing temporary structure based protocols.

The rest of this paper is organized as follows. In Sect. 2, we survey related works for supporting remote and mobile users. Section 3 explains a novel service architecture proposed for supporting remote and mobile users and Sect. 4 describes a service protocol for supporting mobile users in our service architecture. Simulation results are presented in Sect. 5 to evaluate the effectiveness of the proposed protocol, and analyze the impact of important parameters. Section 6 concludes the paper.

2 Related works

In this section, we explain and discuss the existing studies on service protocols for supporting remote and mobile users. We first examine service protocols based on single static sink. Second, we examine service protocols based on mobile sinks. We third examine service protocol based on a dynamic sink. Last, we examine service protocol based on multiple static sinks.

2.1 Service protocols based on single static sink

In wireless sensor networks, a number of service protocols [1416] have been proposed to gather data from sensor fields through single static sink. Each of them presents their own network structures (for example, flat- or hierarchical-based structure) and protocol operations (for example, negotiation-, multipath-, query-, QoS-, or coherent-based operation) to achieve their own performance goals. Please refer to the survey papers [14, 15] for more information about them. Directed diffusion [16] is the best well-known protocol on studies for data gathering by single static sink. Directed diffusion [16] exploits data-centric routing algorithm based on a query advertisement of a sink. In directed diffusion, a query about the application is expressed as interest consisting of attribute and value. The Interest is started from the sink and it is distributed to the entire network. And, the gradient to transmit the data which correspond in query is set to node requesting data. At this time, the data is transmitted to the requesting node through multiple paths. And the best paths are reinforced to prevent further flooding according to a local rule. These single static sink-based protocols including Directed Diffusion do not consider mobile users which move freely within the sensor field. As shown in Fig. 1b, if the sensor field can have legacy networks such as Internet or satellite, the mobile users can receive data from the single static sink via the legacy networks. We compare the proposed protocol with DD, which supports the mobile users via the legacy networks, through simulation.

However, in the sensor field such as the disaster areas and the war zones, single static sink cannot directly communicate with the mobile users via legacy networks. In this situation, the mobile user must receive data from the single static sink via multi-hops communication by sensor nodes of sensor network. To address this issue, IGAP [7] was proposed based on Directed Diffusion. In IGPA, if single static sink receives a query from a remote user via legacy networks or from a mobile user via sensor nodes, it gathers data from the sensor field by using Directed Diffusion. Then, as shown in Fig. 1e, the single static sink sends data to the remote user via legacy network and to the mobile user via multi-hops communication of sensor nodes. In simulation, we compare the proposed protocol with IGAP.

Since service protocols related to single static sink have hot spot problem [30] of sensor nodes near the sink, it reduces network lifetime. The death of all neighbor sensor nodes around the single static sink also induces the disconnection between the single static sink and the sensor network, and thus it cannot support both remote and mobile users. Furthermore, if size of network increases a distance from a sink to sensor node increases. So failure and delivery time of packets increases. In order to make up for the weak points of single static sink, researches related to multiple static sink have proposed [1720].

2.2 Service protocols based on Mobile Sinks

In wireless sensor networks, many routing protocols [24, 811] have been proposed to support mobile sinks which move freely within the sensor field. They identify a user with a sink as shown in Fig. 1c. Many of them exploit virtual infrastructures such as rendezvous area (with position awareness) or backbone (without position awareness) for data dissemination from sources to sinks. As virtual infrastructures with position, TTDD [2] exploits a grid structure, SEAD [3] exploits a tree structure, HDDS [4] exploits a hierarchical quads structure, LBDD [8] exploits a line structure, and RailRoad [9] exploits a circle structure. As virtual infrastructure without position, DDB [10] exploits single-level cluster structure and HCDD [11] exploits multiple-level cluster structure. However, if the sensor field cannot have legacy networks, the mobile sink cannot deliver data from the sensor field to remote users. Furthermore, for supporting mobile users, the mobile sink based protocols have a problem that the data gathering place for the mobile sink changes often due to sink mobility. This problem requires frequent part or full reconstruction of dissemination structures.

Since we compare the proposed protocol with TTDD through simulation, here we explain TTDD in detail. TTDD [6] exploits local flooding of a query by a mobile sink within a local cell of a grid constructed by each source proactively. The dissemination node on the grid, which receives the query, disseminates the query to the source through the grid. Then, the source disseminates data along the reverse path of the query on the grid line to the sink. In TTDD, when the mobile sink moves within a grid cell, it updates its location to the dissemination node, and whenever the mobile sink moves out of a grid cell, they renew and recreate their entire paths to each source through local flooding in new cell.

2.3 Service protocol based on dynamic sink

In [6], as shown in Fig. 1d, Park et al. proposed a protocol, USHER for supporting mobile users based on a dynamic sink in order to solve the hot spot problem of single static sink and the long foot-print chaining of mobile sink. In USHER, a mobile user selects a sensor node near its current location as a dynamic sink. The dynamic sink gathers data for sensor node and delivers the data to the mobile user when the mobile user requests the data. In new location, if the mobile user wants again to collect data from sensor nodes, then it selects a new dynamic sink in its new location. Since the protocol changes dynamic sinks which gather data from sensor nodes, it solves a hot spot problem of single static sink. Also, since the protocol selects dynamic sinks in its current location, it receives fast data from them. However, since the protocol uses only a dynamic sink during query duration, it takes much time for gathering data from sensor nodes. Also, because dynamic sinks are general sensor nodes, they cannot generally connect with legacy networks such that they cannot deliver data to remote users in the outside of sensor networks.

2.4 Service protocols based on multiple static sinks

Several service protocols [1720] have been proposed for data gathering based on multiple static sinks in wireless sensor networks. In [17], the authors proposed an algorithm called Voronoi scoping to constrain the dissemination of queries from multiple static sinks. Queries originated by all sinks will be forwarded only to the sensor nodes for which that sinks is the closest such that the queries are disseminated fast to all sensor nodes. In [18], the authors exploited multiple static sinks unlike a way proposed in [17]. They proposed a solution for simultaneously deploying multiple static sinks within a single sensor network. They assumed that all sinks can communicate directly with each other and remote server (Remote user in this paper) and can share a query. So, every sink simultaneously diffuses the same query in sensor network. Through this simultaneous query diffusion, they construct a logical-graph model using a single virtual sink, which is a graph including all sensor nodes and all multiple static sinks. In the protocol, each sensor could choose to disseminate its data toward its closest sink. In [19], the author divided a sensor network into clusters through multiple static sink to manage energy of sensor nodes. They proposed a way to determine the optimal number of clusters, namely the number of sinks, and the location of sinks, in order to efficiently manage energy of sensor nodes. They exploited a simulation for determining the number of clusters. In [20], Baek et al. proposed a simplified hierarchical model for a sensor network including multiple sinks, compressors/aggregation nodes, and sensors. They studied how to optimize this hierarchy to minimize the overall energy consumption for aggregation. These protocols assume that multiple static sinks can directly communicate with each other via legacy networks. So, data gathered from each sink can be shared by the other sinks and thus can be delivered to remote users. However, they do not consider mobile users which move freely within the sensor field without legacy networks.

3 Service architecture design

Service architectures influence considerably in network performances such as energy consumption, data delivery ratio, and delay by how to design them. Hence, they are designed adequately according to applications of sensor networks. In this section, we first define two users: a remote user and a mobile user, and next introduce a service architecture based on multiple static sinks to support the two users.

3.1 Definition of remote and mobile users

Figure 1a shows typical service architecture in wireless sensor networks [1]. A user with task manger node in the outside of the sensor field can communicate directly with a static sink in the outskirts of the sensor field via legacy networks such as Internet and satellite. In this paper, we call the user as a remote user. The remote user can gathers data from sensor nodes through the static sink via the legacy networks. Like this, the static sink conducts a gateway function between sensor networks and legacy networks. Hence, if a remote user can be connected with legacy networks, whenever and wherever it can communicate with sensor networks, it can collect data from sensor nodes via the static sink.

In these typical wireless sensor networks, we introduce a mobile user which can move freely inside the sensor networks but cannot connect with legacy networks [5, 6]. This situation happens when the legacy networks do not exist inside the sensor networks because it is damaged due to the result of the war or the disaster in the sensor field such as disaster areas or war zones or when the mobile user cannot have a device for communicating with the legacy networks. Accordingly, the mobile user should communicate with the static sink only via multi-hops communication through sensor nodes. Thus, the mobile user has a device for communicating with sensor nodes. Therefore, by multi-hops communications through sensor nodes, the mobile user requests data collection to the static sink and receives data from the static sink. However, to the mobile user inside the sensor networks, protocols on the mobile sinks [24] and the dynamic sink [6] cannot perform a gateway function between sensor networks and remote users when the mobile sink cannot connect with legacy networks. Furthermore, the mobility and dynamic of sink in the protocols raises frequent topology changes and hence much overhead for data dissemination of sensor nodes. Hence, the protocols on mobile sinks and dynamic sink architecture are not suitable for applications presented in this paper.

Therefore, in these service architectures of typical wireless sensor network including remote users and static sinks, a sensor network architecture which adds mobile users inside sensor fields is the most practical service architecture.

3.2 Introduction of service architecture based on multiple static sinks

In this paper, we use multiple static sinks for supporting efficiently mobile users. As shown in Fig. 1f, static sinks in the outskirts of sensor networks can exist multiple. There are many studies [1720] on multiple static sinks to solve problems of single static sink. The first problem is reduction of network lifetime due to fast energy exhaustion of sensor nodes near the sink; the second problem is long delay and low data delivery ratio about query and data dissemination due to long path from the static sink. However, since multiple static sinks can be located in the places connected with legacy networks in the outskirts of sensor field, they can communicate directly with each other via the legacy networks. The multiple static sinks divide the sensor network and dispersively collect data, which can solve the problems of single static sink.

Additionally, multiple static sinks can support effectively the mobility of user inside the sensor field. The mobile user sends queries to the nearest sink from its location and multiples static sinks propagates fast the queries inside the sensor network through sharing the queries via legacy networks. Multiples static sinks also share the collected data from sensor nodes via legacy networks and the nearest sink from the mobile user delivers fast the sharing data to the mobile user. In this manner, through short hops communications, the mobile user sends queries to the nearest sink from its location and receives data from the nearest sink from its location. This reduces energy consumption of sensor nodes, increases data delivery ratio, and decreases delay.

4 Service protocol design

In this section, we describe a service protocol that supports mobile users in wireless sensor networks based on multiple static sinks. The proposed protocol consists of three phases. The first one is a networks initialization phase which allocates multiple static sinks and divides a sensor network by them. The second one is a phase of data gathering of mobile user which allows mobile users to gather effectively data from the sensor network through the multiple static sinks. The other one is a user mobility support phase which guarantees data delivery to a moving user through mobility management.

4.1 Network initialization

4.1.1 Allocation of multiple static sinks

The proposed protocol exploits multiple static sinks for supporting user mobility in wireless sensor networks. We assume that a sensor network has k multiple static sinks and m locations connecting with legacy networks such as Internet and satellite in the outskirts of the sensor field and \(k \leq m\). Then, a designer in the sensor network determine k ones among the m locations in order to locate the k multiple static sinks and locates them in the k locations. Via the legacy networks, the multiple static sinks can communicate with each other for sharing information and can communicate with remote users for performing gateway functions between remote users and the sensor network. Various papers [1720] related on multiple static sinks also assume the direct communication between sinks and legacy networks and the direct communication via the legacy networks between all sinks.

4.1.2 Network division by multiple static sinks

If the allocation of multiple static sinks is finished, every sink flood a Sink_Annoncement packet including its ID in the whole sensor field for informing its existence and constructing paths from sensor nodes to it. As a result of flooding a Sink_Annoncement packet at each sink, every sensor node has known hop counts and next hop neighbor sensor node toward each sink. Every sensor node has also known the nearest sink from its location through capering hop counts to each sink. Hence, as shown in Fig. 2, every sensor node in the sensor field belongs to a domain of a sink which is closest from its location.

Fig. 2
figure 2

Multiple static sinks divide a sensor network into domains

However, static sinks induce hot spot problems around them. Due to the hot spot problems, sensor nodes around sinks consume much energy and eventually die fast. The death of such sensor nodes around sinks causes the disconnection between sinks and sensor networks and makes sensing around sinks be not possible. Thus, in the proposed protocol, if any neighbor sensor node around a sink has energy under threshold, it informs the sink of the fact and the sink is located in other place which is in the outskirts of sensor field and can connect with legacy networks. However, if the sink is randomly located in other place, the network division by sinks may not balance. Thus, the proposed protocol makes the sink be located in the place by which the distance difference between neighbor sinks is smallest. The sink which is located in new place floods a Sink_Announcement packet to the whole sensor field, and sensor nodes update new routing information to sinks in their routing table.

In the proposed protocol, sinks may be added or removed under the necessity. When sinks are added, they flood Sink_Announcement packets including their ID and when removed, they also flood Sink_Remove packets including their ID. By receiving these packets, every sensor node can be aware of addition and remove of sinks. They can also learn hop counts and a next hop node toward each sink. Hence, they can calculate the new nearest sink from their location.

4.2 Data gathering of mobile user

4.2.1 Querying of mobile user

If a remote user makes a query for gathering data from sensor nodes, it sends the query to any sink via legacy networks. If a mobile user makes a query with its ID for gathering data from sensor nodes, it selects a sensor node nearest from its location as its primary agent (PA) and sends the query to the PA as shown in Fig. 3. The PA received the query sends it to a next hop node toward a sink which is nearest (smallest hop counts) from its location. The next hop node also sends it to a next hop node toward the sink. If the next hop node such as G receives same queries from different mobile users, it only sends one query with all IDs of the mobile users to its next hop node toward the sink. This process progresses to the sink and hence the sink receives the queries of the mobile users. The sink saves the query and the IDs of the mobile users in its mobile user management table.

Fig. 3
figure 3

The sink1 receives queries from mobile users and shares the query with other sinks via legacy networks. Multiple static sinks disseminate distributedly the query to the sensor field

The sink received the query of the mobile user must disseminate it to the sensor field. Instead of disseminating the query to the whole sensor field by the sink, in the proposed protocol, the sink shares it with the other sinks via legacy networks and they disseminate it to only sensor nodes within their own domain as shown in Fig. 3. In other words, each sink disseminates the shared query to sensor nodes which have smaller hop counts from it than hop counts from the other sinks. Hence, with sharing of the query, the proposed protocol can distributedly disseminate it within the whole sensor field by multiple static sinks. The distributed query dissemination by multiple static sinks has two advantages. Firstly, the distributed query dissemination by multiple static sinks can reduce the number of transmitting and receiving than the query dissemination by one sink and hence reducing the energy consumption. Secondly, the distributed query dissemination by multiple static sinks can reduce query receiving times of sensor nodes and hence enabling faster data responses from them.

The proposed protocol can allow each sink to disseminate a query of a mobile user to only its domain. In other words, this can allow the sensor field to be partitioned into small sensor networks with single static sink. In these small sensor networks with single static sink, it needs a data dissemination protocol that disseminates the query and gathers data by single static sink.

4.2.2 Data gathering, sharing, disseminating of sinks

If every sensor node receives a query from the sink in its domain, the sensor network is composed to trees which are rooted at each sink and include sensor nodes in its domain. As shown in Fig. 4, every sensor node generates its data about the query and sends it to its parent node on the tree rooted at its sink. In order to reduce the energy consumption for data transmissions, in the data gathering approach based on tree, parent nodes can receive data from their children nodes, aggregate the data with their data, and send the aggregated data to their parent nodes. Many aggregation schemes based on tree have been proposed [21, 22]. Parent nodes in the proposed protocol aggregates their data and data of their children nodes by exploiting one among the data aggregation schemes based on tree. However, the tree-based data aggregation brings about much delay because parent nodes wait to receive data from all their children [21, 22]. Accordingly, in case of applications requesting emergency of date delivery, the proposed protocol does not execute the tree-based data aggregation.

Fig. 4
figure 4

Multiple static sinks distributedly gather data from sensor nodes in their domains and share the data via legacy networks. The sink1 delivers information data to the mobile users

According to applications of sensor networks, the number of sensor nodes that become source nodes and generate data is different. For example, applications such as target tracking [2, 23] are that one or a few sensor nodes become source nodes, applications such as event detection [12] are that many sensor nodes inside a specific surrounding area of a event become source nodes, and applications such as environment monitoring [24, 25] are that all sensor nodes in the sensor field become source nodes. Since these applications such as event detection and environment monitoring make a lot of data traffic be generated and flowed toward sinks, they could suffer from data traffic congestion and hence reducing throughput of data. In order to solve data throughput reduction due to the data congestion problem, the proposed protocol proposes a scheme that can achieve data delivery by getting away from data congestion areas. When a sensor node sends data toward the sink in its domain, if it detects data congestion, it sends the data to a next sensor node toward the second nearest sink from it. Because, in the allocation phase of multiple static sinks, every sensor node can be aware of hop counts and a next hop node toward each sink by receiving its Sink_Announcement packet.

When multiple static sinks have gathered data from all sensor nodes in their domains, they aggregate the data. In the proposed protocol, we assume that multiple static sinks are located at places connected to legacy networks in the outskirts of sensor fields. Accordingly, all sinks share data from sensor nodes in their domain with each other via the legacy networks and make information data for the user by aggregating the shared data. Hence, all sinks have the same information data about the sensor network. Then, if a static sink received the query for the same information data for a remote user, it sends the information data to the remote user via legacy networks. Also, as shown in Fig. 4, the sink received the query from the mobile user deliver the information data to a downstream node toward the PAs of the users. If the downstream node such as G receives queries of users from several downstream nodes, it sends the aggregated data to both of them. This process progresses to the PAs. Since, the mobile users can move out the radio range of their PA, we describe in detail how to guarantee the information data delivery to the moving users in the next Sect. 4.3.

4.3 User mobility support

IIn order to deliver the shared information data to the mobile user, the sink received firstly its query sends the information data toward the reverse of path traveled the query. The information data arrive at the PA of the mobile user. The PA sends the information data to the mobile user. However, since the user can move freely to any places inside the sensor field, the mobility management of user is needed for guaranteeing the information data delivery to the moving user. We support user mobility in terms of two mobility managements. One is a local mobility management which supports user mobility inside the domain of a sink. The other one is a global mobility which supports user mobility between the domains of sinks. We present the two mobility managements in next two subsections, respectively.

4.3.1 Local mobility management

We use a footprint-chaining scheme [26] for local mobility management of a user inside the domain of a sink. To support the scheme, when the mobile user selects its PA, it requests and receives neighbors’ information of the PA from the PA. If the mobile user moves out the radio range of its PA, it collects neighbors’ information in its radio range. Then, among sensor nodes included in both neighbors of the user and neighbors of the PA, the mobile user selects the nearest (the strongest signal strength) one from its location as first relay (FR) node. The mobile user informs the sensor node of the selection as FR node and the information of PA, and also requests and receives neighbor’s information of the FR node. In next, if the mobile user moves out the radio range of the FR node, it also selects second relay (SR) node by the above mentioned process. As shown in Fig. 5a, with the consecutive chaining of relay nodes, the proposed protocol manages user mobility inside the domain of a sink.

Fig. 5
figure 5

Data dissemination to a mobile user through user mobility management. (a) Local mobility management and (b) global mobility management

However, although a mobile user gets near to a static sink which send data to the mobile user because this footprint-chaining scheme connects continuously relay nodes, it has a problem of long path length from the sink to the mobile user. Thus, to solve the long path length problem of the footprint-chaining scheme, when a mobile user selects a relay node, if a distance from the relay node to the sink is equal or shorter than that from the PA to the sink, we allow the mobile user to select the relay node as new PA. So, our local mobility management reduces path length for data delivery from the sink to the mobile user. To enable this method, when a mobile user selects PAs or RAs we allow the mobile user to acquire hop-count information to sinks in their domains from them. So, when the mobile user selects a relay node the mobile user acquires hop-count information to its sink from it. If the hop-count is equal or smaller than that of PA, the mobile user selects the relay nodes as new PA and sends a User_Subscription packet with its ID to the new PA, and then, the new PA sends the User_Subscription packet to its sink as shown in Fig. 5a. Then, the new PA requests data to the sink. If the sink receives the data request, from this point of time, it delivers data to the new PA. So, as shown in Fig. 5a, before the selection of the new PA, data from the sink are delivered to the mobile user via connected paths of old PA, relay nodes, and new PA and, after the selection of the new PA, data from the sink are delivered to the mobile user through short path via the new PA. Hence, by the footprint-chaining scheme with this function for selecting the nearest PA from a sink, our local mobility management enables a mobile user to receive data from the sink inside its domain through short path.

4.3.2 Global mobility management

A mobile user can move from a domain of a sink (old sink) into a domain of another sink (new sink). To reduce the energy consumption of delivering the information data, the proposed protocol should allow the mobile user to receive the information data from the new sink with shorter hops. To address this issue, we exploit the handoff concept of Mobile IP [27] in Internet for Global Mobility Management of user between domains of sinks.

When a mobile user moves out the radio range of last relay node and then selects a sensor node as a next relay node, it can be aware of the movement into a domain of new sink by checking ID information of the sink where the next relay node belongs to. Then, as shown in Fig. 5b, the mobile user also selects the next relay node as a PA in the domain of the new sink and sends a User_Subscribtion packet with its ID toward the sink for receiving the information data from the sink. By receiving the packet, the new sink is acquainted with a fact that the mobile user moves into its domain. Then, the new sink saves the ID of the mobile user in its mobile user management table, informs the fact of the old sink, and takes charge of the role for delivering the information data to the mobile user. Then, the old sink deletes the ID of the mobile user in its mobile user management table. Accordingly, the new sink sends the information data toward the reverse of path travelled the User_Subscribtion packet from the PA in its domain. If the PA in the domain of new sink receives the information data, it delivers the data to the mobile user. Before the interdomain movement of mobile user from the new sink to the old sink is informed to the old sink, the information data delivered from the old sink are reached to the PA in its domain and next arrived to the PA in the domain of the new sink by the consecutive chaining of relay nodes. The PA in the domain of the new sink delivers the information data to the mobile user. Hence, with the dual paths management from both the old and new sinks, the mobile user in the proposed protocol can seamlessly receive the information data via short hops from sinks in spite of its interdomain mobility.

In handoff concept of Mobile IP, it is a difficult problem for Ping-Pong to deal with, which a mobile user comes and goes boundary lines between the domains of sinks. To relieve this Ping-Pong problem, in the proposed protocol, we use time or distance threshold. Even though the mobile user moves into the domain of a new sink, if it does not stay during a predefined time threshold or reach a predefined hop counts threshold, it does not select a PA in the domain of the sink. Instead of, the mobile user selects a next relay node for extension of the consecutive chaining of relay nodes connected from the domain of the old sink. For the predefined time threshold, when the mobile user enters the domain of the new sink, it starts its timer. If the mobile user stays in the domain up to the predefined time threshold, it then selects a PA in the new domain. For the predefined hop counts threshold, when the mobile user enters the domain of the new sink, it stores hop counts to the new sink from the node. When the mobile user selects a next relay node for its mobility, if a decrease between the stored hop counts and the hop counts of the next relay node is bigger than the predefined distance threshold, it then selects a PA in the new domain. Hence, with these schemes, the proposed protocol can solve frequent user subscription process due to the Ping-Pong problem.

5 Performance evaluation

In this subsection, through simulation results, we compare the proposed protocol with four protocols for supporting mobile users presented in related works. The first compared protocol is Directed Diffusion [16] which has a single static sink and supports a mobile user via a legacy network such as Internet. The second compared protocol is IGAP [7] which has a single static sink and supports the mobile user only via the sensor network without legacy networks. The third compared protocol is TTDD [2] which identifies a user with a sink. The fourth compared protocol is USHER [6] which supports a mobile user via a dynamic sink. We first describe our simulation model and performance evaluation metrics. We next evaluate the performance of the five protocols for supporting mobile users though simulation results.

5.1 Simulation model and performance evaluation metrics

We implement the five protocols in the Qualnet simulator ver.3.8 [28]. The network is 500 m × 500 m area which is randomly deployed by 500 sensor nodes. The energy model of sensor nodes follows the MICA specification [29]. The radio range of sensor nodes is omnidirectionally 100 m. A sensor node’s transmitting and receiving power consumption rate are 0.66 and 0.39 W, respectively. We use IEEE 802.11 DCF as MAC protocol. Each query and data packets are 36 and 64 bytes, respectively. A mobile user moves with random way point model and its speed is 10 m/s. A mobile user disseminates a query at an interval of 1 s. If sensor nodes receive the query and become source nodes, they generate only one reporting data for the query and disseminate the data to the sink. We set 50 as the number of source nodes. The source nodes are randomly selected among the sensor nodes of 500. In the proposed protocol, four multiple static sinks are located in the outskirts of sensor fields and can directly communicate with each others via legacy networks. In TTDD, the grid size is 50 m. In USHER, the mobile user requests data to the dynamic sink after 0.3 s from query dissemination time. We lasts the simulation for 100 s.

We use three metrics to evaluate the performance of the proposed protocol. The energy consumption is defined as the communication (transmitting and receiving) energy the network consumes. The data delivery ratio is the ratio of the number of successfully received data packets at a user to the total number of data packets generated by every sensor node. The delay is defined as the average time between the time a sensor node transmits a data packet and the time a user receives the data packet.

5.2 Simulation results for network size

We compare performance of the five protocols for the network size. We vary the network size from 100 m × 100 m to 700 m × 700 m with interval 100 × 100.

Figure 6a shows the energy consumption for the network size. As the network size increases, all protocols increase the energy consumption. Because both Directed Diffusion and IGAP make depth of the tree from single sink for data gathering deeper, they rapidly increase the energy consumption due to data delivery via more multi-hops. In addition, IGAP consumes more energy than Directed Diffusion because it delivers aggregated data from the single sink to a mobile user via sensor nodes. USEHR also makes the depth of tree from a dynamic sink deeper. Since the dynamic sink locates inside the sensor network, tree depth in USHER is not deeper than that in Directed Diffusion and IGAP. However, since the dynamic sink in USHER may not be located in the center of sensor network, its average tree depth is deeper than that of the proposed protocol. TTDD increases the energy consumption because its gird is getting bigger according to the expansion of the network size. However, though the network size increases, the proposed protocol does not increase the tree depth much due to the distribution through four multiple static sinks. Moreover, through information sharing via Internet, the mobile user in the proposed protocol receives the aggregated data via short hops from the nearest sink in it location such that it consumes less energy than the above four protocols.

Fig. 6
figure 6

Simulation results for network size. (a) Energy consumption, (b) data delivery ratio, and (b) delay

Figure 6b shows the data delivery ratio for network size. Each source in TTDD sends its data to a mobile sink via only its grid such that TTDD has better data delivery ratio. However, as the network size increases, the grid size also expands such that each source must send its data to the mobile sink via more hops on the expanded grid. On the other hand, because the three tree based protocols, Directed Diffusion, IGAP, and USHER gathers data from sources through single tree with long depth, they reduces sharply the data delivery ratio as the network size increases. Besides, IGAP and USHER falls much more the data delivery due to additional communications from the sink to the user via sensor nodes. The proposed protocol also decreases as the networks size increases. However, through information sharing by multiple static sinks, the proposed protocol distributes data gathering and delivers the aggregated data from the sink to the user via short hops such that it does not decreases much.

Figure 6c shows the delay for the network size. As the network size increases, the delay of all protocols decreases. Especially, the three tree based protocols, Directed Diffusion, IGAP, and USHER induce more delay due to data delivery via many hops communications because they have deeper data gathering trees. Moreover, both IGAP and USHER have additional delay because they must deliver the aggregated data from the sink to the mobile user via sensor nodes. Only, since dynamic sink in USHER does not disseminate data to the mobile user until the mobile user requests them, USHER has large delay. However, the proposed protocol allows the depth of data gathering tree and the data delivery hops from the sink to the mobile user to be distributed such that it increases delay much. Since each source in TTDD delivers its data via its grid to mobile sinks so that TTDD has few data congestion, TTDD has basically low delay. However, if the network size increases, TTDD has more hop counts from each source to the mobile sink such that the delay in TTDD increases.

5.3 Simulation results for user speed

In this subsection, we compare the five protocols for user speed. We vary the user speed 1–19 m/s at an interval of 2 m/s.

Figure 7a shows the energy consumption for the user speed. Basically, TTDD consumes much energy because it constructs many grids as the number of sources as. Moreover, if the user speed increases, a mobile user in TTDD changes frequently cells that it locates. The mobile user performs frequent local flooding for connecting itself in the grid and hence increasing the energy consumption. As the user speed increases, both IGAP and USHER also increase the energy consumption because they request more relay nodes for supporting faster speed of the user. However, because Directed Diffusion sends the aggregated data from a sink to a mobile user via Internet, it does not consume any energy in relation to the user speed. On the other hand, although the proposed protocol also has more relay node according to the increase of the user speed, if the mobile user enters into the domain of a new sink, it receives data from the new sink via short hops. So, the proposed protocol does not raise highly the increment of the energy consumption.

Fig. 7
figure 7

Simulation results for user speed. (a) Energy consumption, (b) data delivery ratio, and (b) delay

Figure 7b shows the data delivery ratio for the user speed. In sensor networks with low link quality, the increase of hop counts for data delivery reduces the data delivery ratio. As the user speed increases, Directed Diffusion does not have any additional relay because it supports data delivery for user mobility through direct communication via legacy network such as Internet. Accordingly, the data delivery ratio in Directed Diffusion has same values regardless of user speed. On the other hand, the other four protocols decrease the data delivery ratio as the user speed increases because they request more relay nodes about the increment of user speed for supporting data delivery to the user. However, whenever the mobile user in the proposed protocol enters into the domains of new nearest sinks, it receives data from the sink via short hops. So, the proposed protocol does not decrease the data delivery ratio much.

Figure 7c shows the delay for the user speed. Basically, as the user speed is low, sources in TTDD send their data to a sink via their won girds. So, TTDD deliver data without data congestions and hence achieving lower delay. However, as the user speed increases, a mobile user in TTDD needs more reconnection with the grids in the network due to frequent movements into new cells and hence increasing the delay in TTDD. Both Directed Diffusion and IGAP have high delay because they gather data from sources by single sink. However, Directed Diffusion does not have any additional delay in relation to the user speed since the sink sends directly the aggregated data to the mobile user via legacy network. In contrast, since the sink in IGAP sends the aggregated data to the mobile user via only the sensor network. So, as the user speed increases, IGAP requests more relay nodes for communicating with the mobile user and hence increasing the delay. Since dynamic sink in USHER does not disseminate data to the mobile user until the mobile user requests them, USHER has larger delay than Directed Diffusion and IGAP. Furthermore, as the user speed increases, USHER also requests more relay nodes for communicating with the mobile user and hence increasing the delay. On the other hand, the delay in the proposed protocol is faster than that in all tree based protocols because it distributes data gathering through multiple static sinks. The user speed increases, the proposed protocol also requests additional relay nodes. However, if the mobile user enters into new domains of nearest sinks, it receives data from the new sinks by short hops. Accordingly, the proposed protocol does not increase the delay much.

5.4 Simulation results for the number of sources

We compare performances of the above five protocols for the number of sources. We vary the number of sources from 50 to 500 with interval 50.

Figure 8a shows the energy consumption for the number of sources. When the number of sources is small, TTDD consumes less energy because it uses small number of sensor nodes for constructing girds of sources. But, as the number of sources increases, the number of grids increases in portion to the number of sources such that TTDD consumes much energy for constructing the grids. On the other hand, although the number of sources is small, all four tree based protocols consume more energy than TTDD because all sensor nodes participates in the trees. However, in spite of addition of the number of sources, they do not construct additional trees and hence have any additional cost. They consume only small amount of energy for delivering data of the additional sources on the trees. But, through information sharing via multiple static sinks, the proposed protocol among them enables the data gathering and data delivery with smaller hops and hence consumes less energy.

Fig. 8
figure 8

Simulation results for the number of sources. (a) Energy consumption, (b) data delivery ratio, and (b) delay

Figure 8b shows the data delivery ratio for the number of sources. As the number of sources is small, all protocols have high data delivery ratio. Specially, TTDD allows each source to have its grid for delivering its data such that it have better data delivery ratio. However, as the number of sources increases, TTDD constructs many grids in the network. So, TTDD raises many data congestions and hence reducing the data delivery ratio. As the number of sources increases, the three tree based protocols, Directed Diffusion, IGAP, and USHER deliver data of all sources to a mobile sink via single tree. So, they also raise many data congestion in the tree and hence reducing the data delivery ratio. However, through information sharing of multiple static sinks, the proposed protocol distributes data gathering through them. So, it distributes data congestions and hence improving the data delivery ratio.

Figure 8c show the delay for the number of sources. As the number of sources is small, because TTDD makes each source have its grid and send its data via its grid, TTDD has low delay. But, as the number of sources increase, TTDD makes all sources construct their grids and have many signals flow in the network such that TTDD reduces rapidly delay. As the number of sources increases, the three tree based protocols, Directed Diffusion, IGAP, and USHER also deliver data of all sources via single tree and hence raise many data congestion. So, they increase delay. Only, since dynamic sink in USHER does not disseminate data to the mobile user until the mobile user requests them, USHER has large delay. But, the proposed protocol gathers and delivers distributedly through multiple static sinks. So, it distributes data congestion and hence does not increase the delay much.

5.5 Performance evaluation of the proposed protocol for the number of multiple static sinks

In this subsection, through simulation results, we examine how the performance of the proposed protocol is affected by the number of multiple static sinks. We vary the number of multiple static sinks from 1 to 10 at an interval of 1.

Figure 9a shows the energy consumption for the number of multiple static sinks. As the number of sinks is one, the proposed protocol consumes much energy. Because the proposed protocol has one tree rooted at single sink for including all sensor nodes, depths (hop-counts) from sources to the sink are long and consuming much energy. Moreover, the hop-counts from the sink to a mobile user are long and hence consuming much energy. If the number of multiple static sink is increases, the sensor network is divided by the sinks such that the hop-counts from sensor nodes to the sinks are reduced. Accordingly, the energy consumption for the data gathering from sensor nodes and the data delivery to the mobile user decreases. However, as the number of sinks is more than six, the energy consumption rather increases in dribs and drabs. Because the sinks are located in the outskirts of sensor network, although the number of sinks increases, the proposed protocol almost never reduces the hop-counts from sensor nodes to sinks. Instead of, if the number of sinks increases, the mobile user moves frequently into the domain of new sinks. It increases the energy consumption for performing the interdomain handoffs of the mobile user.

Fig. 9
figure 9

Simulation results of the proposed protocol for the number of multiple static sinks. (a) Energy consumption, (b) data delivery ratio, and (b) delay

Figure 9b shows the data delivery ratio for the number of multiple static sinks. As the number of sinks is one, the data delivery ratio is low value of 91%. It is because single sink gathers data from all sources in a sensor network through one tree rooted at it such that many data congestion and collision are generated in the network. In addition, because data delivery to a mobile user is executed toward inverse path of data gathering, it also happens to data congestion and collision. As the number of sinks increases, they gather distributedly data of sources through trees of themselves. Accordingly, it reduces data congestion and collision and hence increasing the data delivery ratio. However, as the number of multiple static sinks is more than six, the proposed protocol scarcely increases the decentralization rate of data gathering and hence almost never improves the data delivery ratio.

Figure 9c shows the delay for the number of multiple static sinks. As the number of sinks is one, the delay of the proposed protocol is high value of 0.5 ms. It is because single tree by one sink makes sources have longer depths to the sink and hence increasing hop counts for data gathering. In addition, since many data from sources are delivered from the sources to the sink and from the sink to the mobile user, data congestion raises. As the number of sinks increases, the sensor network is divided by them such that depths from the sources to the sinks are reduced. It reduces hop counts for the data gathering and delivering and hence decreasing the delay in the proposed protocol. However, as the number of multiple static sinks is more than seven, because the proposed protocol has hardly any effect of network distribution by sinks such that hop counts for data gathering and delivering are never almost reduced. On the contrary, since the proposed protocol should perform frequent handoffs of the mobile user into the domains of new sinks, it increases slightly the delay.

6 Conclusion

In this paper, we address service architectures and protocols for remote users connecting with legacy networks in the outside of sensor field and mobile users disconnecting with legacy networks in the inside of sensor field in wireless sensor networks. For providing information service both to the remote users and the mobile users, we introduce a novel service architecture based on multiple static sinks in wireless sensor networks. In our service architecture, the multiple static sinks can be located at places with legacy networks in the outskirts of sensor network and communicate directly with each other via the legacy networks. Our service architecture allows the multiple static sinks to perform the function as gateways for the remote users in other networks via the legacy networks. We also propose a service protocol for supporting the mobile users in our service architecture. In our service protocol, a mobile user sends queries to the nearest static sink and receives data from the nearest static sink. Through sharing queries and data by the multiple static sinks, our service protocol provides high data delivery ratio through distributed data gathering and low delay through data delivery with short hops. Our service protocol solves hot spot problems by the multiple static sinks, and hence reduces the energy consumption and prolongs the network lifetime. Simulation results show that our service architecture and protocol achieves better performance than the existing service architectures and protocols for supporting mobile users in terms of the energy consumption, the data delivery ratio, and the delay.