1 Introduction

With the rapid development of wireless networks and mobile devices in the last decades, mobile Internet has been widely applied in our daily life. The global mobile data traffic is expected to reach massive 367 exabytes in each year until 2020 [2]. The trend of supporting any one to get any wanted information in any location can bring us much more convenience. Accordingly, it also leads to new challenges for mobility management, which is a critical technique of mobile Internet.

Although mobility management techniques have made some development due to the application and improvement of the widely-accepted mobility protocol, which is Mobile IPv6 (MIPv6) [22]. MIPv6 and its derivatives still have some shortcomings such as non-optimal routing, poor handover performance and high signaling cost [8]. Furthermore, diverse new mobility applications need distinct designs of mobility management processes, which lead to the requirement for better flexibility in network devices [31]. However, the functions of control and data forwarding are tightly coupled in network devices in traditional network. This makes it difficult for these devices to be programmable [30]. This problem not only partially causes the above drawbacks of existing protocols, but also impedes further improvement and deployment of mobility management techniques [33].

To overcome the problems of traditional network, a promising network paradigm named Software Defined Networking (SDN) [20] separates the control plane from the data plane in network devices, and then makes these devices programmable. All the network devices such as routers and switches in data plane can be regarded as SDN switches, which are only responsible for data forwarding according to their flow table. A logically centralized SDN controller has a global view of the network managed by it, and based on which it can make routing decisions. Controller can determine forwarding strategies of all devices by downloading flow entries through south bound interface (SBI), e.g. OpenFlow [16], to SDN switches to update their flow tables. One controller and all the network devices controlled by it constitute a network, and the coverage of the network is usually named control domain or domain.

Due to these characteristics, SDN provides significant improvements in flexibility, scalability, and performance of mobile networks to keep pace with the development of new requirements and technologies [14]. Moreover, proposing mobility management based on SDN architecture will bring the following benefits.

  1. 1.

    By separating control function from data forwarding devices to a controller, data flows can be forwarded by SDN switches along the optimal route instead of detouring to a location maintaining node. This means route optimization can be solved.

  2. 2.

    Centralized control in SDN architecture can reduce complexity of signaling interaction processes. This means signaling cost and even handover delay can be dropped to some extend.

  3. 3.

    Programmability of SDN switches can enable them to have different kinds of mobility management functions. This means most or entire processes can be handled by network devices instead of end hosts.

Despite the above benefits, introducing SDN into mobile networks has unique issues. As we know, SDN originated in campus/enterprise networks and developed in data center networks (DCN) [19]. Most of these networks are in the form of a single control domain. The researches of SDN in mobile Internet are still in the early stage. Since long distance mobility in SDN-based network will across different domains inevitably, mobility networks based on SDN architecture must consider the situation of both single and multiple domains. That is, the handover procedures of mobility management those take place inside one domain and among different domains should be designed simultaneously. The former is defined as an intra-domain handover, and the latter is defined as an inter-domain handover.

Recently, more and more researchers try to provide mobility management schemes in SDN-based network [3, 12, 23, 26,27,28,29]. Although some drawbacks such as non-optimal routing caused by traditional network can be overcome by SDN architecture, existing related researches still have some shortcomings. First, intra-domain and inter-domain handover can not be provided or optimized simultaneously. Second, signaling interaction between different controllers in inter-domain mobility causes extra signaling cost. Third, handover delay still needs to be improved for delay sensitive applications.

In this paper, we present a hierarchical SDN-base mobility management (H-SMM) scheme to improve the inadequacies of related researches. The main contributions of our proposal are listed as follows:

  1. 1.

    A hierarchical architecture in control plane was constructed to provide intra-domain and inter-domain mobility simultaneously.

  2. 2.

    With the help of the hierarchical control plane, we designed the handover and communication procedures of H-SMM. First, we proposed the intra-domain handover procedure and constrained the range of signaling interactions inside one domain to optimize the intra-domain handover performance. Second, in order to optimize the performance (e.g. handover delay and signaling cost) of inter-domain handover, we introduced a global controller in the upper sub-layer of control plane to maintain a binding between the identity and the only locator of each mobile node, and then we designed the signaling interaction procedures among different controllers in detail. Last, the communication initiation procedure was also designed to reduce the end to end delay of the first data packet.

The rest of this paper is organized as follows. In Section 2, we review existing mobility management protocols based on both traditional network and SDN. In Section 3, we present a hierarchical architecture in control plane. Based on this architecture, we propose both intra-domain and inter-domain handover procedures. In addition, communication initiation procedure is also described. Then in Section 4, the characteristics and performance of H-SMM are evaluated and compared with some typical comparatives. Finally, we conclude our paper in Section 5.

2 Related works

In this section, we review two categories of existing typical mobility management protocols according to their basic network architecture, that is, traditional network based mobility protocols and SDN-based mobility schemes.

2.1 Traditional network based mobility protocols

Representatives of mobility protocols based on traditional network are MIPv6 and its derivatives. MIPv6 is the most famous mobility protocol which has been standardized by the Internet Engineering Task Force (IETF). In MIPv6, a mobile node (MN) uses the home address (HoA) assigned in its home network as its identification. Meanwhile, MN uses the care-of address (CoA), which is a new routable IP address assigned by the current network of MN, as its location. When attached to a new network, MN sends a binding update (BU) message, which contains a binding (i.e mapping) of HoA and CoA, to the home agent (HA) located in its home network to update the binding cache (BC) of HA. BC is a table which maintains the bindings of mobile nodes. After that, a bidirectional tunnel between HA and MN will be established. The communication between MN and the correspondent node (CN) will be performed through this tunnel.

By adopting the basic idea of separating identity and location of MN, MIPv6 can support session continuity of any mobile node when it moves around and changes its point of attachment to the Internet. As can be seen, HA is not only the maintainer of bindings in control plane, but also the forwarder of all packets in data plane. Coupling of both planes in HA leads to the triangle routing problem. All the packets send from CN to MN must detour to HA, which leads to a higher end to end delay. Furthermore, the procedures of address reconfiguration and registration deteriorate handover performance and cause high signaling cost. Although the route optimization mode of MIPv6 and some other relative researches [4, 34] optimize data routing by sending a BU message from MN to CN directly. This so-called correspondent registration mechanism addresses non-optimal routing at the cost of high delay and signaling cost caused by the return routability procedure (RRP), which must be performed to prove the authenticity of CoA [22].

Many extended protocols have been proposed to overcome the above weaknesses of MIPv6. In order to optimize the handover happens inside a small scale network, Hierarchical Mobile IPv6 (HMIPv6) [24] adopts a hierarchical location management mechanism to divides the whole network into several domains and introduces a mobile anchor point (MAP) in each domain to maintain the local binding of MN. Therefore, the signaling exchanging of intra-domain handover inside one domain is constrained to the current domain, which can optimize intra-domain handover performance. However, inter-domain handover was not considered by HMIPv6.

Fast Mobile IPv6 (FMIPv6) [25] improves the handover performance of MIPv6 by proactive handover mode, which handling layer 3 (L3) handover procedures in advance before layer 2 (L2) handover takes place. The complex handover procedure of FMIPv6 leads to higher signaling cost. Furthermore, intra-domain handover is not considered in FMIPv6.

Proxy Mobile IPv6 (PMIPv6) [9] is a network-based mobility scheme. The handover procedure is performed by a new network entity named mobile access gateway (MAG) instead of MN. Thus PMIPv6 has better compatibility. By using a local mobility anchor (LMA) to instead HA, PMIPv6 also can provide intra-domain mobility. Therefore, PMIPv6 has the same drawbacks as HMIPv6.

In recent years, there is a growing trend to provide more dynamic and flexible mobility management in a fully distributed way [13]. Another class of mobility solutions distribute the functionality of signal HA to multiple mobile anchors (MA) [35]. Even though these distributed mobility management (DMM) schemes can alleviate or even avoid some problems of the above protocols, such as heavy overhead of HA and the triangle routing problem, the related functions including anchor discovering and switching, BU distribution and synchronization among multiple mobile anchors will lead to higher protocol complexity, larger handover delay and heavier signaling cost in large scale networks.

2.2 SDN-based mobility management schemes

With the arising of novel SDN architecture and its application in different kinds of networks, many researchers apply SDN in mobile and wireless networks. Most of the early related researches are concentrated on how to utilize SDN to optimize the existing wireless access networks or core networks. For example, OpenRoads [32] aims to improve robustness of Wireless Local Area Networks (WLANs) and Worldwide Interoperability for Microwave Access (WiMAX) networks during handover by using multicast in Openflow networks. Mobileflow [21] tries to apply SDN in mobile carrier networks. Elgendi et al. [6] proposed a three-tiered SDN-based DMM architecture to improve the efficiency of core network in Long Term Evolution (LTE) networks. Some researchers even began to study the application of SDN-based mobility schemes for 5G networks [5, 18]. Mobility management functions including binding management and handover procedure are not considered in these literatures.

More recently, a few researchers began to propose different types of mobility management schemes based on SDN. Al Sabbagh et al. [3] proposed an algorithm based on OpenRoads to optimize controllers for providing efficient packet processing in mobility scenario. Then all sessions can be maintained when users roam among different kinds of access networks. However, binding update mechanism during handover has not been concerned.

As an early mobility management scheme based on OpenFlow, Pupatwibul et al. [23] only focused on the intra-domain mobility. MN has to be involved in handover processes and inter-domain mobility was not considered in this scheme.

According to the idea of DMM, Li, et al. [12] proposed a fully distributed and flat architecture in control plane for supporting inter-domain mobility. Due to this architecture and introducing several kinds of controllers such as default controllers and border controls, the network structure and the handover procedure of this scheme are rather complex. In addition, intra-domain handover has not been mentioned.

Wang et al. [26, 27] proposed a software-defined mobility architecture to solve mobility problems based on SDN. We name their work as SDMA. Although SDMA can support intra-domain mobility, especially the binding placement problem and flow table downloading strategy inside one domain are studied in detail. The scenario of multiple domains was still not considered. The late work of SDMA [28] achieves the improvement to support inter-domain handover by broadcast mechanism. However, broadcasting signaling messages among multiple SDN controllers will lead to higher signaling cost, especially when the number of domain is large or mobility frequency is high.

UbiFlow [29] still adopts a fully distributed architecture in control plane to provide inter-domain mobility in urban-scale software defined networks. UbiFlow constructs a distributed hashing structure (i.e. a chord ring of controllers of different domains) and introduces a supervisory controller to maintain the binding of the controllers of MN before and after handover. With the high efficiency of chord ring lookup algorithm, UbiFlow can reduce the signaling cost during searching and updating binding information. In UbiFlow, the request message for querying the binding of MN needs through (log ND + 1) hops among controllers on average. Note that ND is the number of domains. If ND is a large number, the above query procedure leads to high end to end delay. Furthermore, UbiFlow still does not provide intra-domain handover mechanism.

3 Proposed H-SMM scheme

In this section, we propose a hierarchical architecture in control plane of SDN. Then we represent the intra-domain and inter-domain handover procedure, and the communication initiation procedure of our scheme.

3.1 Architecture of H-SMM

Since SDN is mainly deployed in DCN, most existing SDN-based networks are composed of single control domain with one or more SDN controllers which are only responsible for data transmission. However, it is more complex in mobile networks because controllers are not only responsible for making routing decision of their own control domain as they are in DCN, but also responsible for maintaining the binding information of MN. Moreover, if MN moves across different domains, the selection of binding maintainer and binding information interaction between different controllers must be considered carefully.

Similar to the classic SDN architecture defined in the white paper [20] given by the Open Networking Foundation (ONF), all the control functions of H-SMM are realized in the control plane, which lies in the core of SDN architecture. Controllers in the control plane connect to SDN switches in the data plane with SBI, and interact with mobility applications in the application plane with northbound interfaces (NBI). SDN switches still retain the basic data forwarding function.

In order to support inter-domain handover and optimize intra-domain handover, we use the main ideas of the HMIPv6 [24], i.e. hierarchical location management mechanism, to propose a hierarchical architecture in control plane to realize binding maintenance and signaling exchange between different domains. But unlike HMIPv6, we further optimize inter-domain handover in the following procedure design to ensure that our scheme can support and optimize both types of handovers at the same time. The architecture of H-SMM is illustrated in Fig. 1.

Fig. 1
figure 1

Architecture of H-SMM

As shown in Fig. 1, the control plane of H-SMM is divided into two sub-layers, that is, the up sub-layer named global control layer which contains one global controller (GC) and the below sub-layer named local control layer which contains multiple local controllers (LC). LC is an ordinary controllers of each domain which has a local view of network status of their respective domain. Besides managing flow tables of SDN switches, each LC is also responsible for both generating a location identifier for each mobile node which has moved into its domain and maintaining bindings of these mobile nodes. Besides, we introduce GC into control plane to support and optimize intra-domain and inter-domain mobility. GC has a global view of the whole network. Then GC will responsible for routing decision of the network among domains if this network is still based on SDN architecture. Furthermore, GC always maintains a binding of each MN for controllers of other domains to query if some correspondent nodes of these domains want to communicate with MN.

3.2 Network topology

If only single domain is considered for mobility management, the procedures of handover and communication are relatively simple since MN and CN are always in the same domain. The related descriptions can be seen in literatures [26, 27]. We will only consider the situation that MN and CN are located in different domains in our design.

In order to facilitate the designation and analysis of our proposal, a typical topology of mobile networks based on SDN architecture is presented in Fig. 2. As shown in this figure, the whole network is divided into several control domains. Each domain is assumed to be circular in shape. There are at most three domains can be involved in handover procedures, i.e. the previous domain, the new domain and the correspondent domain. The local controllers of the above three domains are named PC, NC and CC respectively. For realizing the hierarchical architecture shown in Fig. 1, we introduce a global controller named GC into the network. GC can be placed in any location designated by system. S1, S2, S3 and S8 are access switches which are the first hop SDN switched of end nodes. S5, S6 and S7 are border switches which can connect their respective domain and the Internet. MN is connected to its access switch via a wireless link and the other parts in the network are connected with wired links. The CN is expected to be stationary in the correspondent domain. MN is movable and will perform an intra-domain handover from S1 to S2, and perform an inter-domain handover from S2 to S3.

Fig. 2
figure 2

Typical Topology of Mobile Networks based on SDN

Instead of two kinds of location identifier defined in HMIPv6 [24], we use a new routable IP address assigned by the local controller of MNs current domain as the location identifier of MN. For example, we assume that the location identifiers of MN when MN is in the previous domain and the new domain are PIP_MN and NIP_MN respectively. Defining single locator of MN can simplify handover procedures of our scheme. We still use the original IP address of MN (e.g. the IP address obtained in MNs home network) as its identity identification, which can be represented by IP_MN.

All the following analysis including scheme designation and performance evaluation is presented in Fig. 2.

3.3 Handover procedure

In this section, we design the handover procedures of both intra-domain and inter-domain handover, and the communication initiation procedure after MN has finished handover.

3.3.1 Intra-domain handover

As shown in Fig. 2, when MN moves from AP1 to AP2, a typical intra-domain handover is taken place since the access switches of MN before and after this handover (i.e. S1 and S2) are both inside the previous domain. The intra-domain handover procedure of our scheme, which is shown in Fig. 3, is depicted as follows.

  1. 1.

    MN leaves AP1 and performs Layer 2 (L2) handover. After attaching to AP2, MN sends a Router Solicitation (RS) message defined in the Neighbor Discovery Protocol [17] to its new access switch, i.e. S2. Note that before this handover, the location identifier of MN is PIP_MN. The controller of the current domain (i.e. PC) maintains a binding cache entry (in form of tuple <IP_MN, PIP_MN>) of MN in its binding cache.

  2. 2.

    S2 detects the attachment of MN when it has received the RS message. Then S2 generates an extended Port-Status (Ext-PS) message which contains IP_MN and sends the Ext-PS message to the PC to report the attachment event.

  3. 3.

    After receiving Ext-PS, PC looks up its binding cache with IP_MN extracted from Ext-PS. If there is a banding cache entry related to MN was found, PC can determine this handover is an intra-domain one. After that, PC will calculate the new optimal routing from S5 to S2. PC can determine the fork switch is S4, which lies on both the previous and the new optimal routing, and locates nearest to the current location of MN. Note that the algorithm for locating fork switch can be seen in literature [26]. Meanwhile, PC sends Flow Modification (Flow-Mod) messages to all the switches from the fork switch to the access switch (i.e. from S4 to S2 in Fig. 2) to update their flow tables.

  4. 4.

    After receiving the Flow-Mod message, S4 updates its flow table (FT). All the packets sent from CN to MN are replaced the destination address with PIP_MN by S8 and delivered to S4. This procedure is the same as that happened before handover took place. Since S4 is the fork switch, S4 redirects these packets to MNs new access switch according to its updated flow table.

  5. 5.

    After receiving the Flow-Mod message from PC, S2 will update its flow table. When data packets have arrived S2, it looks up flow table with PIP_MN and replacing the destination address with IP_MN. Then these data packets return to the original packets send by CN and delivered to MN by S2 ultimately.

Fig. 3
figure 3

Intra-domain handover procedure of H-SMM

3.3.2 Inter-domain handover

Assume that the MN leaves AP2 in the previous domain and attaches to AP3 in the new domain. Therefore, a typical inter-domain handover takes place since the access switches before and after this handover (i.e. S2 and S3) are in different domains. The procedure of the inter-domain handover of H-SMM, which is shown in Fig. 4, is listed as follows.

  1. 1.

    When MN has finished L2 handover and attaches to the AP3, it sends a RS message to its new access switch, i.e. S3.

  2. 2.

    After receiving the RS message, S3 detects the attachment of MN and then sends an Ext-PS message containing IP_MN to NC, which is the controller of the new domain, to report this attachment event.

  3. 3.

    NC generates a new IP address (i.e. NIP_MN) for MN as its location identifier in the new domain. Then NC generates a BU message which contains IP_MN and NIP_MN. After that, NC updates its BC according to this BU. Furthermore, NC sends a BU message to GC, CC and PC respectively. Simultaneously, NC calculates the optimal route from the border switch (i.e. S6) to S3, and then sends Flow-Mod messages to all the nodes in the optimal route to update their flow tables.

  4. 4.

    PC updates its BC after receiving the BU message. Then PC downloads flow entry to S5 for redirecting the packets destined for MNs previous location to the new location, that is, S5 rewrites the packets, which destination address is PIP_MN, to NIP_MN and forwards them to the new domain. PC will delete the binding about MN in BC after a certain life-time.

  5. 5.

    After receiving the BU message from NC, CC updates its BC and downloads a flow entry to the access switch of CN (i.e. S8) using Flow-Mod message. Then S8 will rewrite the destination address of data packet send by CN to NIP_MN. These packets will be routed to the border switch (i.e. S7) along the optimal route and then continue to be forwarded to S6.

  6. 6.

    GC updates its BC after receiving the BU message form NC. Note that the step 4, 5, 6 can be performed at the same time.

  7. 7.

    When receiving the packets which destination is NIP_MN, S6 and the intermediate switches alone the optimal route will forward them to S3 according to their flow tables.

  8. 8.

    Finally, S3 rewrites the destination address of these packets to IP_MN and then deliver them to MN.

Fig. 4
figure 4

Inter-domain handover procedure of H-SMM

After the above inter-domain handover procedure is implemented, the communications between MN and CN can be recovered. It should be explained that the above procedures are under the assumption of the stationary CN. If CN is mobile too, CN can also be treated as MN, and the handover procedures of CN are the same to that of MN mentioned above.

3.4 Communication initiation procedure

After the illustration of handover procedures, we will present the communication initiation procedure when MN has finished handover and in a stationary state. Take the communication initiated by CN for example. If the controller of the correspondent domain (i.e. CC) has maintained a binding cache entry for MN, then the packets send from CN to MN will be routed along the optimal route determined by the controller of respective domain. This procedure is similar to that of single control domain defined in the white paper of ONF [20]. If CC has no binding information about MN, for example CC is just start up, the communication initiation procedure is much more complex than the above condition. The procedure of communication initiation shown by Fig. 5 is presented as follows.

  1. 1.

    Similar to the communication of traditional wire network, the destination IP address and the source IP address (represented by dst and src respectively in Fig. 5) of the original packets send from CN to MN is IP_MN and IP_CN. These packets will be delivered to the access switch of CN (i.e. S8).

  2. 2.

    Since there is no flow entry about MN in S8’s flow table, S8 have no information about the current location of S8. S8 will send a Packet-in message, which contains the data packet, to its controller CC for querying flow entry to forward these packets.

  3. 3.

    In the proposed scheme, MN can move among different domains, which makes CC do not know the exact location of MN. Hence, CC sends a Request message to the global controller (i.e. GC) to get binding information of MN.

  4. 4.

    GC queries its binding cache with IP_MN and gets the binding cache entry of MN. Then GC generates a reply message containing the BU of MN and returns it to CC.

  5. 5.

    After receiving the BU of MN from GC, CC updates its binding cache. Then CC calculates the optimal routing form S8 to the border switch (i.e. S7) and downloads flow entry into all related SDN switches with Flow-Mod messages.

  6. 6.

    S8 updates its flow table according to the Flow-Mod message send by CC. After that, S8 replaces destination address of the original data packets send by CN with the current location identifier of MN, i.e. replaces the destination address from IP_MN to NIP_MN and forward the packet according to the action field in its flow table. Since CC has updated related SDN switches in the correspondent domain, all data packets will be routed to S7 alone the optimal route.

  7. 7.

    Data forwarding methods during the inter-domain route from S7 to S6 depends on the architecture of the network between two different SDN control domains. If the network between different domains is still based on SDN, the GC will make routing decision according its global view of the whole network and downloads flow entry to related switches in the optimal route form S7 to S6. If the network between different domains is a traditional network, GC can set up a tunnel between S7 and S5 in advance to forward data packet in an IP-in-IP way. We assume that the latter is more accordance with reality. The communication solutions of SDN and traditional mixed network are not the key of our proposal.

  8. 8.

    After arriving the border switch of the new domain (i.e. S6), all the packets still can be forward to S3 along the optimal route since NC has made routing decision and downloaded flow entry to the related switches between S6 and S3 after MN attached to S3.

  9. 9.

    Ultimately, S3 rewrites the destination address of these packets from NIP_MN to ID_MN and then delivers packets to MN.

Fig. 5
figure 5

Communication Initiation Procedure of H-SMM

Note that data forwarding procedure from MN to CN is similar to the above, and we won’t describe it in detail any more.

4 Performance evaluation

In this chapter, the characteristic and performances of H-SMM are evaluated and compared. In qualitative analysis, we compared H-SMM with some classic mobility protocols based on traditional network, such as MIPv6 and PMIPv6. The former has been an extended protocol of the IPv6; the latter is the only network-based mobility protocol that has been support by LET. For fair comparison and comprehensive analysis, two typical SDN-based mobility management schemes are also selected as contrasts in both qualitative and quantitative analysis. SDMA [28] is a representative of intra-domain mobility schemes, which gives a simple inter-domain handover procedure with a broadcast way. UbiFlow [29] is a representative of inter-domain mobility scheme which does not involved in intra-domain scenario.

4.1 Qualitative analysis

First we present a qualitative analysis and comparison of the characteristics of H-SMM and the other four comparative schemes in Table 1.

Table 1 Qualitative analysis and comparison

As illustrated in Section 3, H-SMM can support both intra-domain handover and intra-domain handover, which makes it an overall and completed mobility scheme. There is no need to modify end hosts protocol stacks in H-SMM. This is because SDN controllers and switches perform all the mobility management operations.

Like other SDN-based schemes, H-SMM separates control function from data plane. All data packets can be transferred by SDN switches alone the optimal route, instead of being detoured to some kind of anchor point.

Unlike two other SDN-based mobility schemes, H-SMM adopts a hierarchical control plane and improved procedures to optimize both inter-domain and inter-domain handover. The intra-domain handover of H-SMM was simplified because MN does not have to reconfigure a location identifier. The inter-domain handover was also optimized by using a request-reply method for BU exchanging. Furthermore, the packet routing of H-SMM needs rewriting of destination address by the access switches of both MN and CN.

4.2 Calculative analysis of signaling cost

We will present a theoretical evaluation and comparison of H-SMM and the other two SDN-based mobility schemes, SDMA and UbiFlow, according to their signaling cost. Note that intra-domain handover procedure has not been considered in UbiFlow. Accordingly, only H-SMM and SDMA are considered in the performance analysis of inter-domain handover.

Our performance evaluation is based on the network topology shown in Fig. 2. The whole network is composed of several control domains, and the domain number ND is variable. In each domain, there will be one SDN controller and several SDN switches. The average hop counts between two border switches of different domains is defined as a variable β. We assume that unit transmission cost in a wireless link is 5 times of that in a wire link, and every SDN switch connects directly to the controller in one domain. The explanations and values of the other perimeters of our calculative analysis are listed in Table 2. Some of these values are referred to literature [10].

Table 2 Parameters of calculative analysis

Signaling exchanges between different nodes will result in an additional waste of bandwidth and a reduction of bandwidth utilization [7], especially when handover happens frequently or the number of mobile nodes is numerous. This kind of cost caused by signaling is called signaling cost, which is an important performance metric to measure the cost and effectiveness of a mobility scheme.

The signaling cost of messages x sent from the source node A to the source node B can be calculated as the product of the length of messages x (defined as Lx) and the hop distance from A to B (defined as HAB) [11]. The signaling cost of messages x is represented as \(C_{A - B}^{x}\), which can be calculated as follows:

$$ C_{A - B}^{x} = L_{x} \times H_{A - B} $$
(1)

Overall signaling cost of a handover procedure can be calculated by summing up all cost of each signaling message. We will analyze and compare the overall signaling cost during once handover or once communication initiation procedure of the above mentioned SDN-based mobility schemes.

4.2.1 Signaling cost of intra-domain handover

As can be seen in Fig. 3, the location identifier of MN is generated by the controller of the current domain, which will not regenerate a new one after MN moves inside of this domain. Then registration of new binding among different controllers still can be avoided. The overall signaling cost during once intra-domain handover in H-SMM is calculated as follows:

$$ {{\begin{array}{llllllll} C_{Intra - HO}^{H - SMM} &=& C_{MN - S2}^{RS} + C_{S2 - PC}^{Ext - PS} + C_{PC - S2}^{Flow - Mod} + C_{PC - S4}^{Flow - Mod}\\ &=& L_{RS} (H_{w} + H_{wl} ) + L_{Ext - PS} H_{w} + 2L_{Flow - Mod} H_{w} \end{array}}} $$
(2)

As for the SDMA, location identifier of MN is generated by the access switch, which leads to reconfiguring address by MNs new access switch and broadcasting BU messages by the controller even if MN moves inside of the same domain. The overall signaling cost of intra-domain handover in SDMA is calculated as follows:

$$\begin{array}{@{}rcl@{}} {{\begin{array}{llllllll} C_{Intra - HO}^{SDMA} &=&C_{MN - S2}^{RS} + C_{S2 - PC}^{BU} + 3C_{PC - S}^{Flow - Mod}\\ && +(N_{D} - 1)C_{PC - CC}^{BU} + 3C_{CC - S}^{Flow - Mod}\\ &=& L_{RS} (H_{w} + H_{wl} ) + 6L_{Flow - Mod} H_{w}\\ &&+ (N_{D} - 1)L_{BU} (H_{Inter} + 2H_{w} ) + L_{BU} H_{w} \end{array}}} \end{array} $$
(3)

After substituting the parameters in Table 2 into formulas (2) and (3), the comparison of signaling costs of intra-domain handover in H-SMM and SDMA is shown in Fig. 6. We can see that the signaling cost of H-SMM is a constant. This means the value will not increase with the rise of either ND or β. In contrast to H-SMM, SDMA has higher signaling cost during intra-domain handover. This trend will become more pronounced with the increase of ND and β. The cost value of SDMA rises drastically when ND and β increasing at the same time. We can conclude that H-SMM can keep lower signaling cost, which will not change with the varying of ND and β.

Fig. 6
figure 6

Signaling cost of single intra-domain handover versus ND and β

4.2.2 Signaling cost of inter-domain handover

According to the procedure designed in Fig. 4, BU message will be send from NC to other three controllers, i.e. GC, PC and CC. The overall signaling cost of H-SMM during inter-domain handover is calculated as follows:

$$ {{\begin{array}{llllllll} C_{Inter - HO}^{H - SMM} &=& C_{MN - S3}^{RS} + C_{S3 - NC}^{Ext - PS} + C_{NC - PC}^{BU} + C_{NC - S3}^{Flow - Mod}\\ &&+ C_{NC - S6}^{Flow - Mod} + C_{PC - S5}^{Flow - Mod} + C_{CC - S8}^{Flow - Mod}\\ &=& L_{RS} (H_{w} + H_{wl} ) + L_{Ext - PS} H_{w} + 4L_{Flow - Mod} H_{w}\\ &&+ 3L_{BU} (H_{Inter} + 2H_{w} ) \end{array}}} $$
(4)

During inter-domain handover of SDMA, the controller in the current domain of MN will broadcast BU messages to all the other controllers, which will leads to large number of signaling transmitted among different domains. The overall signaling cost of inter-domain handover in SDMA can be calculated as follows:

$$ {{\begin{array}{llllllll} C_{Inter - HO}^{SDMA} &=& C_{MN - S3}^{RS} + C_{S3 - NC}^{Ext - PS} + (N_{D} - 1) C_{Ctl - Ctl}^{BU}\\ &&+ 3C_{NC - S}^{Flow - Mod} + 3C_{CC - S}^{Flow - Mod} + C_{PC - S5}^{Flow - Mod}\\ &=& L_{RS} (H_{wl} + H_{w} ) + L_{Ext - PS} H_{w} + 7L_{Flow - Mod} H_{w}\\ &&+ (N_{D} - 1)L_{BU} (H_{Inter} + 2H_{w} ) \end{array}}} $$
(5)

In UbiFlow, it is necessary to obtain the address of pervious access switch by querying a chord ring, which is constructed by controllers, for redirecting the data flow. The overall signaling cost of inter-domain handover in UbiFlow is calculated as follows:

$$ {{\begin{array}{llllllll} C_{Inter - HO}^{UbiFlow} &=& C_{MN - PC}^{RS} + (\log N_{D} + 1) \times C_{Ctl - Ctl}^{Request} + C_{Ctl - Ctl}^{BU}\\ &&+ C_{NC - PC}^{Notify} + C_{PC - S5}^{Flow - Mod} + C_{S6 - NC}^{Packet - In} + 3C_{NC - S}^{Flow - Mod}\\ &= & ((\log N_{D} + 1)L_{Request} + L_{BU} + L_{Notify} )(T_{Inter} + 2H_{w} )\\ &&+ L_{RS} (H_{w} + H_{wl} ) + L_{Packet - In} H_{w} + 4L_{Flow - Mod} H_{w} \end{array}}} $$
(6)

By substituting related parameters, the comparison of signaling costs during inter-domain handover is shown as Fig. 7.

Fig. 7
figure 7

Signaling cost of single inter-domain handover versus ND and β

In Fig. 7, the signaling cost of SDMA is significant higher than the other two schemes and the value rises with ND and β obviously. This is caused by broadcasting binding information to all the other controllers in SDMA. UbiFlow has lower signaling cost by using a more efficient chord ring lookup algorithm. The signaling cost of H-SMM is the lowest one among three schemes. This is because there are only three BU messages send between domains during inter-domain handover in H-SMM.

4.2.3 Signaling cost of inter-domain handover

In H-SMM, CC requests BU message from GC and then downloads flow entries to related switch for forwarding data packet. The overall signaling cost of H-SMM during communication initiation is calculated as follows:

$$ {{\begin{array}{llllllll} C_{Commu}^{H - SMM} &=& C_{S8 - CC}^{Packet - In} + C_{CC - GC}^{Request} + C_{GC - CC}^{BU} + 3 \times C_{CC - S}^{Flow - Mod}\\ &=& L_{Packet - In} H_{w} + 3L_{Flow - Mod} H_{w}\\ &&+ (L_{Request} + L_{BU} )(H_{Inter} + 2H_{w} ) \end{array}}} $$
(7)

In SDMA, BU message only contains the IP address of the controller of the domain where MN resides. Then CC has to query the location of MN from NC. The overall signaling cost of H-SMM during communication initiation is calculated as follows:

$$ {{\begin{array}{llllllll} C_{Commu}^{SDMA} &=& C_{S8 - CC}^{Packet - In} + (N_{D} - 1)C_{CC - PC}^{Request} + C_{PC - CC}^{BU} \\ &&+ 3C_{CC - S}^{Flow - Mod} + C_{S6 - NC}^{Packet - In} + 3C_{NC - S}^{Flow - Mod} \\ &=& ((N_{D} - 1)L_{Request} + L_{BU} )(\beta + 2)\\ &&+ 2L_{Packet - In} + 6L_{Flow - Mod} \end{array}}} $$
(8)

UbiFlow still has to perform chord ring lookup algorithm for relaying data flow. The overall signaling cost of H-SMM during communication initiation is calculated as follows:

$$ {{\begin{array}{llllllll} C_{Commu}^{UbiFlow} &=& C_{S8 - CC}^{Packet - In} + (\log N_{D} + 1) \times C_{Ctl - Ctl}^{Request} + C_{Ctl - Ctl}^{BU}\\ &&+ 3C_{CC - S}^{Flow - Mod} + C_{S6 - NC}^{Packet - In} + 3C_{NC - S}^{Flow - Mod}\\ &=& ((\log N_{D} + 1)L_{Request} + L_{BU} )(T_{inter} + 2H_{w} )\\ &&+(2L_{Packet - In} + 6L_{Flow - Mod} )H_{w} \end{array}}} $$
(9)

The comparison of signaling costs during communication initiation stage is shown as Fig. 8.

Fig. 8
figure 8

Signaling cost of communication initiation versus ND and β

In Fig. 8, SDMA has the highest signaling cost, which is raise obviously with ND and β. This is because CC still needs to perform a broadcast for querying the binding of MN. The signaling cost of UbiFlow is lower and raises more gently. This is owing to the high efficiency of the chord ring look up algorithm of UbiFlow. H-SMM still has the lowest signaling cost. The reason is that the signaling interaction between CC and GC can be realized by a request and a reply message.

4.3 Simulation and result

We evaluated the performance advantages of our proposed H-SMM and compared with SDMA and UbiFlow by implementing the above schemes based on the most famous SDN simulator, i.e. Mininet [1]. In order to configure our simulation environment, we installed virtual machine (VM) image of Mininet version 2.2.1, which has integrated Ubuntu 14.04, in Virtual Box hypervisor. All the virtual SDN switches have been built by Open vSwitch (OvS) and all the SDN controllers are based on POX. We used Iperf as the performance testing tool to obtain the time related metrics of each message.

In simulations, the network topology was still constructed as shown in Fig. 2. Handover procedures of MN were simulated by detaching MN from one SDN switch and then attaching it to another. We have implemented handover and communication related functions in different controllers according to the above mentioned designation.

In order to verify the performances of the three schemes in different scale of SDN-based networks, we set two scenarios according to the different value of ND.

  • Scenario 1: ND = 10. This scenario has a characteristic of smaller number of domains, which means the scale of the whole network is also small.

  • Scenario 2: ND = 100. This scenario has a characteristic of larger number of domains, which means the scale of the whole network is also large.

For convenient of experiment, we assume that CN sends data packets to MN continuously during the whole simulation time, and all packets will not be lost in wired and wireless links and will reach the destination without failure. Note that we ignore the processing delay of data and signaling message in our experiment. The parameters required for simulations are shown in Table 3. The settings of these parameters are referred to literature [15].

Table 3 Parameters of simulations

Handover delay is one of the most important metrics to measure the performance of a mobility management scheme, especially for delay sensitive applications. Handover delay can directly reflect the length of communication interruption during handover procedure. In order to obtain handover delay in our experiment, we recorded the simulation time T1 of the last packet received by MN before the interruption, and the simulation time T2 of the first packet received by MN after the interruption. The difference between T2 and T1 is the delay of single handover. In order to reduce the error, we ran each scheme three times and counted the average value of handover delay.

4.3.1 Intra-domain handover delay

First we analyze the handover delay during an intra-domain handover in SDMA and H-SMM. Variety of handover delay with the change of β in the two scenarios is shown in Fig. 9.

Fig. 9
figure 9

Average delay of single intra-domain handover versus β

It can be seen from Fig. 9 that intra-domain handover delay of H-SMM is lower and the values will not increase with the rise of β. The phenomenon and reason are both similar to signaling cost shown in Fig. 6. On the contrary, SDMA will change location identifier and perform binding update with broadcast by the current controller of MN. This leads to higher intra-domain handover delay, and this disadvantage will be more evident with the rise of β. By comparing Figs. 9a and b, we can see that SDMA has similar handover delay in both scenarios. This is because the average one way delay of broadcast messages has nothing to do with ND.

4.3.2 Inter-domain handover delay

Then we analyze the handover delay of a single inter-domain handover of different schemes which were shown in Fig. 10.

Fig. 10
figure 10

Average delay of single inter-domain handover versus β

As shown in Fig. 10, inter-domain handover delay of all three SDN-based schemes will increase with the rise of β, the reason is that inter-domain interaction for propagate binding information is inevitable. UbiFlow has to perform (log ND + 1) steps lookup on the chord ring constructed by controllers to get the binding information before handover, which leads to obviously rising of handover delay with the raise of ND and β. H-SMM and SDMA gain slower rising trend of handover delay by using a request and response mechanism to get related binding information. By downloading flow entry to the related switches beforehand during the handover procedure, H-SMM has lowest handover delay. Even though this advantage is not obvious when the value of β is small, it will be more pronounced with the increase of β.

4.3.3 End to end delay of communication initiation

Last, we evaluate the end to end delay of the first data packet in communication initiation. This performance parameter is critical to time-sensitive applications. Most of existing SDN-based mobility schemes can obtain optimal route. But during the routing of the first data packet from end to end in SDN-based mobile network, the procedures of flow table updating and binding query procedure are necessary for routing decision. These processes will cause extra delay and then reduce the real-time performance of proposed schemes.

We tested and compared the end to end delay from CN to MN during communication initiation of different mobility schemes. As we can see the results shown in Fig. 11, the end to end delay of the first packet of all these schemes will raise with increase of β. This is due to the binding query procedure among different domains of these schemes. By optimizing the handover procedure, H-SMM still has the advantage of having lowest delay, which rises gently with the extending of β. SDMA lacks of updating flow table of related switches in advance, which leads to weak inferiority. By comparing Fig. 11a and b, we can see that the end to end delay of UbiFlow rises quickly with both β and ND. This disadvantage is due to the chord ring lookup process in each communication initiation.

Fig. 11
figure 11

Average end to end delay in communication initiation versus β

5 Conclusion

In this paper, we proposed an H-SMM mobility management scheme based on SDN paradigm. Characteristic analysis demonstrates that H-SMM is an overall mobility scheme which can support intra-domain and inter-domain handover. Hosts involvement in mobility management can be avoided. Calculative analysis validates that H-SMM has lower signaling cost in handover and communication procedures. Simulation results illustrated that both intra-domain and inter-domain handover delay of H-SMM is smaller. End to end delay of communication initiation is still lower than the contrast schemes. The advantages of both the above delay make H-SMM more appropriate to delay sensitive applications. Evaluation also indicated that all the above performance advantages of H-SMM are more evident with rising of domain numbers and average hops between different domains. Moreover, we can conclude from the single handover experiment that H-SMM will be more dominant when mobility frequency is higher.