Dynamic Anchor Points Selection for Mobility Management in
Transcription
Dynamic Anchor Points Selection for Mobility Management in
Dynamic Anchor Points Selection for Mobility Management in Software Defined Networks Abbas Bradai, Kamal D. Singh, Abderrahim Benslimane and Toufik Ahmed Abstract — Today consumers want to stay connected to networking services anywhere and at anytime. Managing consumers' mobility to ensure session and service continuity in efficient and effective manner is more and more challenging due to the increasing number of mobile devices and their high mobility pattern. Different solutions have been proposed in the literature to tackle this problem. They are based on a single mobility management point, called mobility anchor. Unfortunately, most of these solutions suffer from long packets delivery delay and high overhead ratio. In this work, we propose a new mobility management called Software Defined Mobility Management (SDMM) based on the Software Defined network (SDN) paradigm. The proposed solution is network based, where the mobility is managed by network entities. In opposite to existing approaches, the anchor point is dynamically selected for each flow by a virtual function implemented at the top of the SDN controller which has a global view of the network. The main advantages of our approach are threefold: first reducing packet delivery delay, second reducing the handover latency and third minimizing the tunneling overhead1. convergence of networks to all-IP is inevitable due to several benefits of all-IP such as reduced cost, efficiency, network resilience, natural integration with Internet, etc. The above scenarios and evolutions have also given rise to new challenges that need to be tackled by the research community. Challenges include QoS management when using all-IP for different services such as VoIP and IPTV, mobility management due to users wanting to remain connected anywhere and at anytime and increasing network complexity due to multitudes of services and growing number of network equipment. A. Motivations In this paper we focus on mobility management, improving performance in terms of packet delivery delay experienced by the consumers and tackling network complexity to ensure seamless user mobility from a network to another. Mobility management focuses on assuring service continuity and connectivity even when the user is mobile and changes networks (Figure 1). Index Terms — Mobility management, Handover, Latency, Software Defined Network I. INTRODUCTION Today people want to remain connected to network services anywhere and at anytime. This has led to explosive growth of traffic in mobile and wireless networks. Moreover, this has induced the convergence of network and services as all kinds of services VoIP, IPTV, data, etc. are expected these days from telecom as well as data networks. Figure 1: Example of mobility management problem Network infrastructures are evolving as well and all networks are converging towards an all-IP network. The Many mobility management mechanisms have been proposed in the literature [1]. Some mechanisms have been proposed by IETF such as Mobile IP (MIP), Mobile IPv6 (MIPv6), Proxy-Mobile IPv6 (PMIPv6), etc. These mechanisms utilize IP tunneling and mobility anchors to assure session continuity. The mobile user is able to keep its IP address as the IP packet having the original IP address, often called Home Address (HoA) is tunneled to the new IP address which is often called the Care of address (CoA). However, the use of mobility anchor means that all the traffic related to corresponding mobile consumer has to pass through same network equipment which leads to sub optimal routing, 1 Abbas Bradai is with the Grenoble Computer Science Laboratory (LIG), 38041 Grenoble, France (e-mail: [email protected]). Kamal D. Singh is with Telecom Saint Etienne / Université Jean Monnet, Saint Etienne, France (e-mail: [email protected]) Abderrahim Benslimane is with CERI – University of Avignon, 84911 Avignon Cedex 9, France (email: [email protected]) Toufik Ahmed is with CNRS-LaBRI University of Bordeaux, 33400 Talence, France (e-mail: [email protected]) 1 knowledge, we are the first to introduce the dynamic anchor points’ selection for mobility management. increased delays experienced by the consumers and creation of a networking bottleneck. Moreover, the increasing number of mobile devices and their increasing mobility behavior are making the management of mobility as well as management of related network devices more and more complex and challenging. 3) We prove that the problem of assigning switches to different flows is NP hard and we propose a heuristic algorithm to resolve it. Unlike traditional approaches, our solution avoids single bottlenecks and does not suffer from sub-optimal routing. This leads to improved packet forwarding and load balancing which results in improved performance experienced by the user. This central approach significantly reduces the effort required to configure a complex network and at the same time improves upon the performance of traditional mobility management mechanisms. B. Contributions In this work, we propose a mobility management scheme, based on Software Defined Networking (SDN), to tackle the today’s mobility management protocols problems. The philosophy of software defined networking is to separate the control and the data plane. The control plane is logically centralized which controls the data forwarding elements in the network using an open interface. SDN originated from the need to solve the problem of increasing complexity of today's networks which are hard to evolve and manage. The key to solve the above problem is through the virtualization of the network by hiding the detailed configuration process from the network control. SDN is one of the ways towards the network virtualization and it provides a flexible and centralized way to configure the network elements. C. Paper Organization This paper is organized as follows. Section II provides the state of the art, Section III provides the details of the proposed SDN based mobility management solution, Section IV uses simulation to provide the results and Section V concludes this paper. II. RELATED WORKS AND BACKGROUND Our SDN based mobility management solution takes optimal decisions related to establishing tunneling points in the network. Thus, we propose Virtual Mobility Anchor (VMA) functions and we use the SDN controller for optimal creation of IP tunneling points in the network. SDN capability is used to compile the above optimal configuration decisions into network forwarding rules. The SDN controller sends these rules to SDN switches which in turn implement them. Mobility management is important for ensuring session continuity when a mobile node changes its network attachment point during handover. Various mobility management mechanisms are implemented in different protocol layers to target different functionalities [2]. In the physical layer, mobility management carries out the procedures of detach and attach to different access points during handover. In the network layer, mobility support deals with the change of the sub-network. Mobility support in this layer may be based on routing (for example used in Cellular IP [3]) or mapping (used in Mobile IP (MIP) [4] and Proxy Mobile IP (PMIP) [5]). In the transport layer, mobility management focuses on keeping the on-going TCP connection, even though the IP address changes (for example used in Mobile Stream Control Transmission Protocol (M-SCTP) [6]). In the application layer, different mobility management approaches are used which can be specific to each application type (used e.g., in the Session Initiation Protocol (SIP) [7]), or a middle-ware may be implemented between applications of two nodes to manage mobility, such as WiSwitch [8]. The network layer based scheme is the most popular one offering transparent mobility support to all kinds of applications. MIP [9], PMIP [10], and 3GPP mobility management [11], are examples of such scheme. In this work, we takes advantage of the global view of the network provided by the SDN controller to optimally decide the placement of tunneling points in the network, as a function of optimal route to the mobile node and as a function of load on prospective tunneling point routers for load balancing. Our main contributions in this paper are as follows: 1) We propose a new architecture for user mobility management. The proposed architecture relies on the SDN paradigm, where the traditional mobility management equipment, such as the mobility anchor and the mobility access gateway, are virtualized. Toward this goal, we introduce a set of virtual mobility management functions implemented on top of the SDN controller. These virtual functions, combined with SDN switches, play the role of the different mobility management equipment. 2) We model the problem of mobility management in SDN based architectures as a problem of dynamic selection of a set of switches, which will play the role of anchor points, for a given set of flows. The selection of anchor points should be optimal in such a way which minimizes the packets delay and leads to load balancing between the switches. To the best of our In the network layer, the Internet Engineering Task Force (IETF) has defined some IP mobility support protocols. In general there are host based mobility management protocols and network based mobility management protocols. 2 mobility management makes it more complex for deployment. For host based mobility protocols, Mobile IPv6 (MIPv6) [11] [1] has been proposed for a single node mobility support. In order to support mobility of a set of nodes Network Mobility protocol (NEMO) [13] has been proposed by extending MIPv6. With MIPv6 when a mobile node (MN) changes its network during handover, it registers its new address with a mobility anchor, home agent (HA). Then a bidirectional tunnel between the MN and the HA is established for forwarding packets to the new location of MN. However, the signaling cost between MN and HA is high, mostly has to be done over the last mile wireless link and significantly adds to the handover delay as HA can be far from MN. Recently, many research works aiming to tackle the limitations in centralized mobility management have been proposed such as Distributed Mobility Anchoring (DMA) [18], Double NAT (D-NAT) [19], Inter-domain DMM, Local IP Access (LIPA)/Selected IP Traffic Offload (SIPTO) [20]. In this context, Software Defined Networking (SDN)/OpenFlow based approaches have been shown to outperform existing solutions. Thus, some approaches have been proposed to implement existing mobility management protocols using software defined networking framework. PMIPv6 implementation using SDN is proposed in [21]. In this work, authors implement the standardized mobility management PMIPv6 using SDN, where the PMIPv6 components are implemented as virtual functions in the control plane, on the top of the SDN controller. Indeed, the proposed mobility management framework is composed of one switch which plays the role of the Local Mobility Anchor (LMA) and several border switches which play the role of the Mobility Access Gateways (MAGs). Each one of these switches is associated to its corresponding virtual function in the control plane. The protocol executed in the control plane is the same executed in the classic PMIPv6. If a mobile node moves from a switch (SW1) domain to another switch (SW2) domain, the virtual function MAG2 is notified by SW2 and handover procedure is initiated. MAG2 sends a Proxy Binding Update (PBU) message to the LMA which updates its binding cache, where the mobile node becomes associated with MAG2. These modifications are translated to forwarding rules pushed to SW1. Thus a tunnel is created between SW1 and the LMA switch and between the LMA and SW2. We note that authors in this work do not take advantage of the global view offered by the controller to enhance the performance of PMIPv6 performance. They only translate the protocol to the SDN domain. Thus, the proposed solution suffers from the same drawbacks of PMIPv6. They consider a single mobility anchor which suffers from scalability problem as all control and data traffic has to pass through a single point. The single anchor becomes the performance bottleneck and single point of failure. In addition the proposed solution suffers from the problem of non-optimal routing. Moreover, an approach using cloud computing to process the massive mobility management data is left for future work. To reduce the long delay of signaling messages exchanged between a MN and a HA, Hierarchical Mobile IPv6 (HMIPv6) was proposed and standardized by IETF [25]. HMIPv6 sets up a local HA called Mobility Anchor Point (MAP), to handle MN mobility while the MN is still in the local region. In addition, in HMIPv6, a hierarchy of MAPs is set up in the form of tree. If the MN leaves the domain of a local MAP, then it will be assigned to the MAP’s parent in the tree hierarchy and so forth. In this way HMIPv6 reduces the handover delay and efficiently use the resources. In more recent works, the distributed mobility management [1] aims to reduce the distance between the MN and the mobility anchor point. However, the selection of the mobility anchor stays rigid and fixed while the MN moves continually. This results in non-optimal routing, known as “triangle routing” problem, as packets always have to pass through the mobility anchor irrespective of the optimal route. The network based mobility management approaches, such as Proxy Mobile IPv6 (PMIPv6) [14]-[17] do not require a signaling directly from the mobile nodes to a mobility anchor. With PMIPv6, a MN does not register its location information to a mobility anchor, called as a Local Mobility Anchor (LMA), but the registration is done by a network element called Mobility Access Gateway (MAG). MAG may be implemented in an access router (AR). When the MN changes its network then its movement is detected by the MAG belonging to the new network. The MAG belonging to the new network then sends the signaling message to the Localized Mobility Anchor (LMA) to update the location of the MN. LMA in turn establishes the bidirectional tunnel with the MAG for forwarding the packets related to MN. Note that here the tunnel terminates at MAG, instead to going till the MN in the case of host based mobility management. Compared to the host-based mobility support protocols, PMIPv6 provides a better performance in terms of handover latency and signaling cost [16]. Another work [22] uses SDN to implement PMIPv6. However it only implements the MAG on the top of SDN controller and other mobility management elements are not considered. This paper just shows that the mobility management can be done using the SDN paradigm without any in depth study, and practical solution. Nevertheless, the above mobility management approaches are difficult to be deployed in real networks [16]. They usually require new functions to be implemented or updated on several network devices such as routers, servers and mobile nodes. Additionally the signaling and overhead related to Compared to the above two SDN based solutions for mobility management, our proposed framework takes advantage of the main feature of the SDN paradigm, namely 3 the programmability of the forwarding devices, and the global view provided by the SDN controller. Indeed, the anchor points in our solution are allocated dynamically in such a way to respect the capacity of the different switches and to avoid the non-optimal routing problem. We note that in our solution one or more flows are assigned to a switch which plays the role of anchor point for this (these) flow(s). In addition, depending on the traffic load in the network, a flow assignment to a switch can be dynamically shifted from one switch to another to ensure low delay for the user and load balancing between the different switches. interface. In this work, we are interested into specific network functionality, namely Mobility Management (MM). We investigate an SDN based solution to manage the mobility of a Mobile Node (MN) and how to ensure the session continuity while reducing the deployment complexity, reducing the handoff delay and optimizing the resource utilization. In this context, if we take the cellular network as a case study, the mobility management methods such as PMIPv6 [14], can be implemented by using SDN to establish tunnels between the FEs. These tunnels are driven by the network application which interacts with the Mobility Database (MD). In order to manage MNs mobility binding and status information, the MD needs to be centralized with a well-defined interface between the mobility management network application and the MD. We call this model a fully-separated mobile SDN with a single controller. This approach allows high flexibility for data flow management, rapid detection of network events and rapid network response by enforcing and updating the relevant rules in the FEs. In the following section, we present in detail our architecture for mobility management using SDN paradigm. III. HOW SDN ARCHITECTURE COULD BE USED TO ENHANCE IP MOBILITY? Software Defined Network (SDN) is a new promising network paradigm where control plane is decoupled from forwarding plane, making the network forwarding elements programmable and allowing a good abstraction of the infrastructure [23]. A simplified SDN architecture is presented in Figure 2, which is composed of virtual network applications, a centralized control entity (Controller or CE) and forwarding entities (switches or FEs). A. System overview: Fully separated control plane architecture Figure 3 provides an overview of the proposed mobility management framework based on the SDN paradigm. The network topology in the figure corresponds to a single Mobility Management domain which in turn corresponds to a SDN domain. At the application layer, virtual machines are running the mobility management protocol. Two virtual functions are defined: the V_LMA function which, associated with a FE, plays the role of Localized Mobility Anchor (LMA), and the V_MAG function which, associated with another FE, plays the role of Mobile Access Gateway (MAG). In the example of Figure 3, V_MAG is mapped to two FEs, MAG1 which is the initial point of attachment of the MN and MAG2 which is the point of attachment of the MN after movement. We call MAG1 as Home MAG and MAG2 as Foreign MAG. SDN is one of the first steps toward network virtualization. Different network functions such as routing, Authentication Authorization Accounting (AAA) and security functions can be implemented as software functions. These functions use the centralized controller to configure the programmable FEs according to the needs of applications and network services. We note that all the network switches are Openflow enabled. OpenFlow is used to monitor the state of the network and manage the network resources by enforcing the relevant rules on the FEs involved in the packet forwarding of the flow. In our solution, the Mobility Anchor point is flexibly determined by the V_LMA based on routing optimality and network load conditions of the forwarding elements. At the end of this operation, an IP tunnel is established between the LMA and the foreign MAG of the MN, in order to ensure the continuity of the session for the MN even in its new position (the MN keeps its initial IP address). Furthermore, thanks to the Openflow protocol, link failure between the forwarding elements can be rapidly detected and instantly reported to the controller, and thus an alternative route and tunnel can be set up. Figure 2: SDN Architecture The standard communication protocol in SDN is OpenFlow [23], which allows communication between the network applications and the controller through the interface known as Northbound interface, and between the controller and the FEs through the interface known as Southbound 4 Table I illustrates a simple example of flow tables in the FEs to support mobility of the MN visiting the SW4’s area as shown in Figure 3. If a packet is received at SW6 with destination address as MN, SW6 encapsulates and forwards the packet to MAG2 through port 2 (Rule 1 of SW6). When receiving the packet, SW4 decapsulates it and forwards the packet to the MN through port 2 (Rule 2 of SW4). A packet sent by MN arriving at port 2 of SW4, is encapsulated and forwarded to SW6 through port 1 (Rule 1 of SW4). When an encapsulated packet arrives from SW4, SW6 decapsulates it and forwards the packet through the packet path specified by the routing protocol, through port 1 (Rule 2 of SW6). TABLE I EXAMPLE OF FLOW TABLES IN FORWARDING ELEMENTS Flow table in SW6/LMA Rule 1 Action IP destination = MN, incoming port = P2 stat Encapsulate packet (From LMA to MAG2) Forward packet to port P1 Figure 3: System architecture overview 2 Packet encapsulated (From MAG2 to LMA) Decapsulate packet Forward to port P2 IP source = MN B. SDN Mobility Management protocol … In this work, we propose network based mobility management mechanism using SDN, inspired from the PMIPv6. Initially a MN, when connected for the first time to the network via SDN switch (SW2 in the example of Figure 3), sends an ICMP router solicitation (RS) message to the switch (SW2). This message is delivered to the V_MAG function, which updates the Mobility Database (MD) and associates the MN with the concerned switch (SW2). This latter plays the role of the home MAG (MAG1). Flow table in SW4/MAG2 Rule 1 IP source = MN, incoming port = P2 Action stat Encapsulate packet (From MAG2 to LMA) Forward packet to port P1 When the MN moves from the area of the initial switch (SW2) to a new switch (SW4) area, the MN sends a RS message to the new switch, called foreign MAG (SW4) which delivers it to the V_MAG function. V_MAG updates the MD and detects that the MN is in mobility. V_MAG sends then, a mobility alert message to V_LMA, which selects the FE which will play the role of the mobility anchor point, and sets up a tunnel between the selected mobility anchor point and the foreign MAG. We note that the mobility anchor point is selected among the SDN domain’s FEs in the optimal path from the source node to the home MAG, in order to intercept the packets destined to the MN and forward them to foreign MAG through a tunnel. The foreign MAG receiving the encapsulated packets, decapsulates and forwards them to the port from which the MN is connected. 2 Packet encapsulated (From LMA to MAG2) Decapsulate packet Forward to port P2 IP destination = MN … In the following section, we detail our proposed mobility anchor selection mechanism. C. Mobility anchor selection Mobility anchor selection is the main issue in mobility management since it affects the handover performance and network resource utilization. In contrast, our SDN-based solution for mobility management proposes flexible anchor selection and control as a function of optimal route, MN mobility and varying network conditions. The V_LMA’s instructions are translated, by the controller, into OpenFlow rules. These rules are immediately installed to the new LMA (SW6) and the foreign MAG (SW4) through OpenFlow protocol. In our solution, as mentioned in section III.A, the anchor point (LMA) is selected among the FEs situated in the optimal 5 path between the corresponding node (CN) and the home MAG (Figure 4), in order to intercept the packets destined to the MN, encapsulate and forward them to the foreign MAG. Besides, the mobility anchor point is selected in such a way to balance the load between the FEs and reduce the packets delivery delay between the MN and the CN. In the next section, we detail the mobility anchor selection mechanism in our solution, ensured by the V_LMA function that we propose. , a Boolean variable that indicates whether the switch i is the anchor point for the flow j: 1 0 if switch is anchor point for flow , otherwise. We also define the variable which represents the delivery cost of a packet from the tunneled flow j, when switch i is the anchor point. In IP networks, the packet delivery cost is the sum of the transmission cost and the processing cost. The transmission cost is related to the hop distance from the source node to the destination node. While the processing cost is related to the packet processing, such as routing table look up, routes calculation, etc. In the context of SDN based networks, the routing algorithm is executed at the application level and forwarding rules are mapped into the forwarding elements which are layer 2 equipment. Thus the routing table lookup and route calculation cost in FEs is insubstantial. We can argue then, that the packet delivery cost in SDN based architectures can be approximated by the packet transmission cost. Figure 4: Example of anchor point selection problem Thus, we can set: D. Problem formulation and modelling (1) The V_LMA function is responsible for establishing LMA for each tunneled flow in the network. The function of V_LMA is to select a set of switches in the network to play the role of a mobility anchor and perform the tunneling of the flow to the MNs. This function is called each time when a new anchor node is requested in the network. Then, V_LMA dynamically selects the optimal anchor point. We note that the anchor point for a certain flow can change dynamically after each selection round. Where: : The packet transmission cost from the source to the anchor point in the flow j using the anchor point i. : The packet transmission cost from the anchor point i to the destination, which is the number of hops from the anchor point to the MN’s foreign MAG. The path to the foreign MAG is already computed using the routing protocol adopted in the network. The anchor nodes are selected in such a way to reduce the overall packet delivery cost while considering optimal routes as well as the processing and bandwidth capacity of the switches. We now present the core of our anchor points’ selection heuristic. Using as defined in (1), we propose the aggregate priority Π of the network as follow: In this work, we assume that an admission control mechanism is performed at the foreign MAG, in such a way that the MAG is able to process all the encapsulated packets and its bandwidth is sufficient to support the accepted mobile nodes. This way the problem lies solely in the selection of LMA nodes. We also assume a routing protocol running in the network, which provides the optimal route and performs load balancing in order to avoid bottlenecks and avoid the packets loss. Thus the problem of mobility anchor node selection can be reduced to an assignment of a set of LMAs jobs (tunneling functions) to a set of switches while taking into consideration the processing capacity (encapsulation) and the available bandwidth of the different switches. The main goal is to optimize the over-all packet delivery delay and reduce the packet loss rate. % Π " !! #$ #$ (2) Subject to: " !& #$ ' ( , ∀ ∈ +1, ,- (3) and % ! For our mobility anchor point selection solution, we define 6 #$ ' 1 , ∀ ∈ +1, .- (4) knapsack capacity as the switches capacity and the item set as the set of flows (Figure 5). Also and & can be regarded as the profit and weight of items, respectively. Therefore, for each switch (knapsack) a set of flows (items) should be assigned with regards to the switch capacity and the flow size, while maximizing the profit, i.e. reduce the overall packet cost. In MMKP all the components of the problem including knapsack capacity, items, profits, etc. are known and the question is which items to put in the knapsack. Similarly in the SDMM, the only unknown in equations (2)-(4) is the decision variable . & is the flow capacity in terms of processing and bandwidth, which is in turn known, ( is the capacity of the switch and it is also known, and is computed as in (1). Therefore, SDMM is a type of Multi-choice Multidimensional Knapsack Problem and its NP-hardness of it follows by a trivial transformation from the MMKP. Where: - S is the number of switches available in the network - F represents the number of flows generated by mobile nodes & represents the processing capacity allocated from the switch i to the flow j if the switch i is selected as anchor point for the flow - - Pi represents the switch i processing capacity, in term of packets encapsulation, per time unit. The condition (3) ensures that the processing capacity of each switch is not violated, while the condition (4) ensures that each flow is processed by at most one anchor point. We note that =∞ if the switch i is not an anchor point candidate for the flow j. We remember that a switch i can be an anchor point for the flow j if it is in the initial path from the CN to the home MAG of the MN (see Figure 4). Flow Flow1 Switch E $ … … … … ;<= Subject to @ ?= @ … ! ! >0 50 ' 1 #$ 0#$ ?= ! >0 0#$ A … BC A … DC >0 A E E … E ?G$ … E ? … Flowm-1 Flowm FG$ $ FG$ E … FG$ ?G$ FG$ ? F $ F E … F ?G$ F ? Figure 5: SDMM modeled as MMKP problem IV. SEARCH ALGORITHM FOR ANCHOR POINTS’ SELECTION To solve MMKP there exist two approaches: exact and heuristic. Exact solution is based on branch-and-bound [25]. The computational complexity of these algorithms is J H(27 @ ). Therefore, branch-and-bound linear programming approach (BBLP) is often too slow to be useful [28]. An alternative is to use heuristic approach. There are some heuristic algorithms in the literature like the ones in [29] and [30]. In this paper we propose a sub-optimal heuristic algorithm based on [30], with reasonable computational complexity. In [30] it has also been shown that in almost all trials the achieved solution is very close to the optimal solution. By introducing Lagrange multipliers, authors in [31] show that the solution for the optimization problem (2) under the constraint (3) is equivalent to the solution of the following problem: (6) C $ ? SWn (5) #$ 0#$ $ ?G$ SWn-1 ?= ! ! >0 /0 $ E SW2 Proof: We show that the anchor points’ selection can be modelled as the Multi-choice Multidimensional Knapsack Problem (MMKP), which is known to be NP-hard [27]. An MMKP is the problem where there is an M-dimensional knapsack with M total allowable volumes of Wl, W2, ..., WM and there are N groups of items. Group j has nj items. Each item has a value and M volumes corresponding to knapsack’s M dimensions. The objective of the MMKP is to pick up exactly one item from each group while maximizing the total value of the selected items, subject to volume constraints of knapsack’s dimensions. In mathematical representation, let 22230 /0 be the value of the kth item of the Jth group, 1 th (50 $ … 50 7 ) be the required volume of the k item of the 2223 jth group corresponding to M dimensions, and 1 (1$ … 17 ) be the volume constraints of different knapsack’s dimensions. Then the problem is: … $ $ SW1 Theorem: The anchor points’ selection in Software Defined Mobility Management (SDMM) is NP-hard. Flow2 % " K! ! #$ #$ (7) SDMM can be mapped to MMKP by regarding the 7 % % " − ! λ0 ! ! & 0#$ #$ #$ N (8) Subject to: % " !!& #$ #$ ∗ % " '!!& ∗ #$ #$ are satisfied. Since each flow always has an item whose value and M-dimension volume are zero the solution is always feasible. (9) After completion of the Progress phase, there may be some space left in the switches. This space may be utilized to improve the solution by replacing some selected flows with more valuable ones. Therefore, in Adjustment phase, each item k of every flow j is checked against the selected flow of _^ that switch ] is the optimal solution. Therefore, the Where the ∑%#$ ∑"#$ & ∗ corresponds to the optimal capacity of the switches used by the optimal solution. Therefore, if the Lagrange multipliers λ0 are known, the optimization problem is easily solved. By a simple manipulation of the equations, the equation (8) can be written as: % % " KQ! ! % " − ! λ0 ! ! & R #$ #$ 0#$ #$ #$ N It is verified whether item k is more valuable than the selected item, and if k can replace the selected item without violating the volume constraints. Among all exchangeable items, the item ]′of flow j' causing the largest increase of the switch value is exchanged with the selected item of that flow i ] ^h . This process is repeated until no more exchanges are possible. It can be shown that the complexity of the algorithm is H(.E , E(, )). (10) This implies that the solutions are: ∗ S T % − ! λ0 & > 0#$ VWℎYZ5 [Y (11) Algorithm 1: An heuristic for flows allocation in the switches I- Initialization λ0 ← Since we have another constraint in equation (4), among the possible solutions, we have to find the one which satisfies (4) and is optimal at the same time. Therefore, the only step to do is to compute the Lagrange multipliers λ0 . It is worth noting that if these multipliers are computed such that the terms % " P −!!& #$ #$ …, _ ] and R m_ ← , & ← & o( ( ← ∑"#$ &m_ ∗ …, n n …. …. II. Progress Phase While (( > are non-negative, the solution is feasible. The algorithm is given in algorithm 1, which is executes in three steps: Ia In the Initialization step, the algorithm starts with the most _^ ), i.e., valuable switch of each flow j as the selected switch (] the switch which maximize the utility of the flow j. The Lagrange multipliers are initialized to zero such that the constraints in (11) and (3) are satisfied. A( C _ for b |] ) Iad ∆0 In general, however, the switch capacity constraints will now be violated, the initial choice of selected switches is adapted to satisfy the switches capacities by repeatedly improving on the most violated capacity constraint `a, as follows. end for v ∗ ∗ λfa In the Progress phase, consider the flows whose selected _^ items correspond to switch `a (i.e. b |] `ad ). For each item k of these flows, the increase ∆ of multiplier λfa that results from exchanging the selected item of flow j, is computed. Eventually, the item k* of flow j* causing the least increase of multiplier λfa is chosen for exchange. This choice minimizes the gap between the optimal solution and the solution returned by SDMM algorithm. The process is repeated until an item has been selected for each user such that the capacity constraints ∗ _ =∗ m ∗ 0∗ (sa (0 ∗ end for λfa ∆0 ∗ ∗ b ∆0 d _ ∗ ← ]∗ , i.e. ] (0 ∗ End while 8 0 (sa − &ss_t a s_ s_ (rfa − r0 − λfa (&fa t − &00= ))/&fa t for k=1 to S &0 ∗ ∗ III- Adjusting phase While ∃ jϵ+ F- ∃ kϵ+ S- ~0 >0 and ~0 ≥ r0 for j=1 to F for k=1 to S r − € 0 ~0 number of hops traversed by these messages and the size of mobility signaling message. For the SDN based architecture, the signaling cost is the number of packet exchanged with the controller. r0 − •= 0 •= 0 > (0 Packets tunneling cost: is the total traffic overhead caused by the tunneling. It is calculated as the product of the hop distance of the tunnels and the size of the tunneling. &00= ' Total cost: is the sum of the packet delivery cost and the packet tunneling cost end for end for vh h (0•=ƒ (0h h 0h A~0 C , 0 (0•=ƒ − &0•h (0h &0• h =ƒ =ƒ Handover latency: is the delay introduced due to the handover operation. It is the delay from the moment when MN or the MAG starts the handover procedure to the moment when the MN receives the first packet in its new network. v We also define the Session to Mobility Ratio (SMR) as the ratio between the session length in packets and the MN mobility which is the number of times the MN changes its network. h • =ƒ 0 B. Simulation parameters We consider the access router's coverage area as a circle with radius R, and the MN is moving with a velocity V [27]. The session generation rate is λ, the session size is S, and the average packet size is p. In Table II, we summarize the main simulation parameters and their values. The unit cost is calculated as the product of message length and hop distance, and its unit is Kbytes * hops. End While V. PERFORMANCE EVALUATION In this section, we present a comprehensive comparison study of our mechanism for mobility management called SDMM (SDN based Mobility Management). We compare the performance of SDMM against two pioneering mobility management mechanisms, namely PMIPv6 [4] and HMIPv6 [24], as well as another SDN based mobility management (SDN-PMIPv6) mechanism [21]. For evaluating SDN based protocols, we use mininet tool [32] to emulate the network connected to OpenDaylight controller [33] for the implementation of V_MAG and V_LMA functions [23]. To connect the OpenDaylight controller to the switches, we select openFlow 1.0. TABLE II SYSTEM PARAMETERS AND VALUES A. Comparison metrics We consider the following metrics for evaluating and comparing our proposed mechanism [26]: Parameter Value Radius (R) [400, 800] m Velocity (V) [0, 30] m/s Session generation rate (λ) [0.1, 1] Session size (S) 10 packets Average packet size (p) 1 Kbytes Tunneling overhead (ω) 40 bytes C. Results and discussions In this section, we present the most important results pertaining to our evaluation of SDMM through simulations. Packets delivery cost: is the total traffic overhead caused by the delivery of packets from the corresponding node (CN) to the Mobile Node (MN). It is calculated as the product of the overhead, in terms of hops between the CN and the MN, due to the mobility, and the data packet size. This metric also reflects the packet delays experienced by the consumer as the packet delays are related to the hop distance. 1) Packet delivery cost Figure 6 shows the comparison of packet delivery cost with respect to different session arrival rates for the four mobility management mechanisms. We note that the access routers radius is set to 500m and the MN velocity is set to 20m/s. The average distance between the MN and the CN is 10 hops. Signaling cost: is the total mobility signaling overhead for supporting MN mobility. It is calculated as the product of the It can be remarked that in general the packet delivery cost 9 two nodes. While the packet delivery cost increase in the case of SDMM is nearly linear, the packet delivery cost increases exponentially with the number of hops between MN and CN in the case of PMIPv6 and HMIPv6. We explain this by the fact that in PMIPv6 all the packets pass by the central anchor point, which consequently increases the distance between the MN and the CN and also results in non-optimality of the route. In the case of HMIPv6, when the distance is long between the MN and CN, the tunneling function is assigned to higher level anchor point in the hierarchy. Consequently, the route between the MN and the CN becomes longer, which in turn increases the delivery cost. increases with the session arrival rate. However, we can see that SDMM outperforms the three other mobility management mechanisms. We explain this by the fact that for selecting the mobility anchor point for each MN's flows, SDMM optimally selects the nearest switch to each MN (utility function of the assignment problem in 3.3). This minimizes the number of hopes that the packets take to reach MN, which in turn reduces the packet delivery cost. In the case of intra-domain communications, such that the SDN controller controls the whole domain containing both the MN and the CN, a direct tunnel is created between the MN and the CN in SDMM. This results in minimum number of hops as the tunnel passes through the shortest path, between the MN and the CN, determined by the already running routing protocol. On the other hand, in PMIPv6 and SDNPMIPv6, a single, often non-optimal, anchor point is used and all the packets pass through it. The non-optimal anchor point may not lie in the shortest path and this leads to non-optimal routing and consequently high packet delivery cost. 3... WXYY 2/.. @ ? > 1/.. 8 = < ; 8 1... : 9 8 7 6 0/.. 5 4 0... /.. . / Now, we fix the session arrival rate to 0.2, and we also fix the radius to R=500m. We vary the velocity of the mobile node from 5 to 30 m/s, and we measure the signaling cost for each velocity value. The obtained results of the four protocols are shown in Figure 8. )&*) +, Firstly, we note that the signaling cost increases with the increase in the velocity of the MNs. Indeed, faster moving MNs, lead to more handovers and consequently to more exchanged signaling messages. 1. 2) Signaling cost -& *)+, 0/ Figure 7: Packet delivery cost Vs. average distance between MN and CN $%'() &*)+, 0. BCDEF GD HIJKDE LM NLOP KDQRDDH QND ST F HU QND VT $%&& \Y]\ ^_ 6 `Y ]\^_ A 2... We note also that HMIPv6 outperforms the PMIPv6 in terms of packet delivery cost, and we explain this by the fact the HMIPv6 allocates a set of local mobility anchor points close to the MN, which results in shorter route from the MN to the anchor point and from the anchor point to the CN, and vice versa. Consequently the packet delivery cost is lower in HMIPv6 than in PMIPv6 and SDN-PMIPv6. However, in some case the disposition of anchor points in HMIPv6, in a rigid form of a tree, leads to non-optimal routing. This is why HMIPv6 has lower performance as compared to SDMM. WXZ[\ Y]\^_ 9 Secondly, we note that the SDN based protocols (SDMM and SDN-PMIPv6) have lower signaling cost as compared to the traditional protocols (PMIPv6 and HMIPv6). This can be naturally explained by the virtualization of the mobility management functions (MAG, LMA) in SDN-based protocols. Thus, the mobility signaling messages in this case are exchanged between the switches and the controller (one hop), rather than between the MN and the MAP in the case of HMIPv6 or between the MAG and the LMA, which may be far from each other in the case of the PMIPv6 protocol. !" # Figure 6: Packet delivery cost Vs. session arrival rate We fix now the session delivery rate to 0.5 while varying the average number of hops between the MN and the CN. By the number of hops, we mean the hops existing in the shortest path between the two nodes. The obtained results are shown in Figure 7. Moreover, we note that SDN-PMIPv6 has low signaling cost than SDMM. We explain this by the fact that SDMM dynamically selects the anchor points and in each case of context modification (mobility of a node) all the optimal anchor points are recomputed using algorithm 1, and the new rules are pushed to all the concerned switches. However, in We note in Figure 7 that the packet delivery cost increases with the distance between the MN and the CN. This is explained by the fact that the increase in the distance between the MN and the CN results in the number of hops between the 10 the case of the SDN-PMIPv6, only one switch plays the role of anchor point and in case of node mobility only the initial MAG switch and the new MAG which are affected. They receive new rules from the controller. However, this slight signaling overhead in SDMM as compared to SDN-PMIPv6 can be justified by the better performance of SDMM in terms of delay and packets delivery cost (see Figure 8) !"## !"$%&#'&() &#'&() *#'&() This results in tunnels of small length in terms of number of hops. We also note here that there is no difference between the SDN-PMIPv6 and PMIPv6 since the same mobility anchor point is adopted in both mechanisms. The packet tunneling cost is also higher in HMIPv6, because the anchor point in this mechanism is selected in order to reduce the frequency of MN switches between anchors, regardless of the MN-Anchor distance. .2+ @8 ./+ .++ ; ; ;9 : 4+ @7 2+ ?> =7 - JKLL JKMNOLPOQR OLPOQR SLPOQR .1+ @X >W < V 1+ /+ + + +T. +T/ +T0 +T1 +T, +T2 YCIIGZ[ EDDG\E] DE^C +T3 +T4 +TU . Figure 8: Signaling cost Vs. MN velocity Figure 10: Packet tunneling cost Vs. Session arrival rate In the following scenario we fix the velocity = 20 m/s and we vary the access switch/router radius from 400 to 800m, and we study the signaling cost for the four protocols. The obtained results are represented in Figure 9. We note that the access routers radius has the opposite impact of the signaling cost than the velocity. Indeed, we note that the signaling cost is inversely proportional to the radius. High access router radius leads to less handovers and consequently low signaling cost. 1, In order to measure the impact of average number of hops between the MN and the CN, on the packet tunneling cost, we fix the session arrival rate at 0.5 and we vary the distance between the MN and the CN from 5 to 20 hops. The results are shown in Figure 11. We note that similar to the delivery cost (see Figure 7), the packet tunneling cost also increases linearly with the increase in the distance between the MN and the CN in the case of SDMM, and exponentially in the case of the other protocols. JKLL JKMNOLPOQR OLPOQR SLPOQR 1+ @8 0, >? 0+ : /++ @8 .2+ = < /, ; 9:8 7 65 JKLL JKMNOLPOQR OLPOQR SLPOQR .4+ ;9 ?> : .1+ ;9 =7 ./+ /+ ; ., ; @X .++ @7 .+ >W 4+ < , V + 1++ 1,+ ,++ ,,+ 2++ 2,+ ABC DEFGHI 3++ 3,+ 2+ 1+ 4++ /+ + Figure 9: Signaling cost Vs. radius , 3) Packet tunneling cost .+ ., _\CDE`C [HabCD Zc BZdI bC^eCC[ fg E[F hg /+ Figure 11: Packet tunneling cost Vs. distance between MN and CN In Figure 10, we plot the evolution of the packet tunneling cost while increasing the session arrival rate from 0.1 to 1. We can see clearly in the figure that the tunneling cost is significantly low in the case of SDMM. We explain this by the fact that in SDMM, the anchor points are selected such that they lie topologically near to the foreign MAG (corresponding to the new position of the MN), thus, the anchor point is selected in such a way to reduce the packet transmission cost. 4) Handover latency We measured the handover latency experienced by the mobile devices of the consumers in the case of four mobility management mechanisms and we show the results in Figure 12. We note here that the latency is notably higher in PMIPv6. This is due to the delay introduced by the signaling messages 11 exchanged between the MAG and the LMA in order to update the binding between the MAG and MN, when the MN moves. These messages are absent in the case of SDMM and SDN, because the binding updates are done at the network application level and no messages are exchanged between the MAG and the anchor node. We also note that the handover latency is low in HMIPv6 because the anchor point is selected dynamically to reduce the association between the MN and the anchor node. #$%% #$&'(%)(*+ (%)(*+ ,%)(*+ Using SDN concepts our mobility management mechanism dynamically selects the appropriate mobility anchors which tunnel the packets towards the new locations of mobile devices and assure the session continuity of consumers even during mobility. Our solution selects the nearest anchor point for each mobile node and ensures load balancing in the overall network. We modeled this problem as an assignment problem of a set of flows to a set of anchor points, and then we proposed a solution to this problem. The obtained results outperform the pioneering mobility management mechanisms existing in the literature. Indeed, the proposed mechanism ensures the session continuity with very low handover latency, the key performance metric when a consumer moves from one network to another. REFERENCES " [1] I. Al-Surmi, M. Othman and B. Ali, “Mobility management for IP-based next generation mobile networks: Review, challenge and perspective,” Journal of Network and Computer Applications, 35(1), 295-315, 2012 [2] L. ZHANG, W. CHEN, ZHANG, Yan, et al., “Seamless Mobility Management Schemes for IPv6-based Wireless Networks,” Mobile Networks and Applications, 2014, vol. 19, no 6, p. 745-757. [3] V. BERROCAL-PLAZA, M. VEGA-RODRÍGUEZ, and SÁNCHEZ- J. PÉREZ, “Optimizing the mobility management task in networks of four world capital cities,” Journal of Network and Computer Applications, 2015, vol. 51, p. 18-28. [4] C. BERNARDOS, “Proxy Mobile IPv6 extensions to support flow mobility”. 2014. Avilable online: https://tools.ietf.org/html/draft-ietfnetext-pmipv6-flowmob-06 [5] S. Gundavelli, K. Chowdhury, V. Devarapalli, B. Patil, K. Leung, et al. “Proxy Mobile IPv6,” IETF RFC 5213, June 2008 [6] M. Riegel and M. Tuexen, “Mobile SCTP,” IETF draftriegeltuexenmobile-sctp-09.txt, 2007 [7] H. TAKAHARA and M. NAKAMURA, “Enhancement of SIP signaling for integrity verification,” Applications and the Internet (SAINT), 2010 10th IEEE/IPSJ International Symposium on. IEEE, 2010. p. 289-292. [8] S. Giordano, D. Lenzarini, A. Puiatti and S. Vanini, “WiSwitch: Seamless Handover between Multi-provider Networks,” In: Proceedings of Second Annual Conference on Wireless On-demand Network Systems and Services (WONS 2005), pp. 224–235, 2005 [9] 3GPP Technical Specification 29.060, General Packet Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp interface (Release 8), http://www.3gpp.org 1 ! Figure 12: Handover latency Vs. wireless link delay 5) Total cost In Figure 13, we study the impact of the session length over the mobility of the MN, on the performance of the four mobility management mechanisms. We note that in general the total cost decreases with the length of the session. In addition, the total cost is almost the same in PMIPv6 and SDN-PMIPv6 because the anchor point selection method is same in both the protocols. Nevertheless, the guain of SDNPMIPv6 approach can be measured in terms of gains in other performance metrics such as latency thanks to the SDN approach. 32-30-3/-3.-8< 7; 3--: 98 76 2-0-- [10] D. Johnson, C. Perkins, J. Arkko, et al., “Mobility support in IPv6”, IETF RFC 3775, June 2004 EFGG EFHIJGKJLM JGKJLM NGKJLM /-.-4 3- 34 .- .4 5=>? @ABCD 54 /- /4 [11] P. Bertin, S. Bonjour and J.-M. Bonnin, “Distributed or centralized mobility?,” IEEE Global Telecommunications Conference, GLOBECOM 2009, p. 16. IEEE, 2009 4- [12] V. Devarapalli, R. Wakikawa, A. Petrescu and P. Thubert, “Network mobility (NEMO) basic support protocol,” RFC 3963, January, 2005. Figure 13: Total cost Vs SMR ratio [13] S. JEON, R. AGUIAR and N. KANG, “Load-Balancing Proxy Mobile IPv6 Networks with Mobility Session Redirection,” IEEE communications letters, 2013, vol. 17, no 4, p. 808-811. VI. CONCLUSION [14] J-H. Lee and T. Ernst, “Lightweight network mobility within PMIPv6 for transportation systems,” IEEE Syst. J 5(3), 352–361, 2011. In this paper, we proposed a new mobility management mechanism for consumers with mobile devices. The proposed mechanism is based on software defined networking (SDN). 12 [15] J-H. Lee, T Ernst and N. Chilamkurti, “Performance analysis of PMIPv6-based network mobility for intelligent transportation systems,” IEEE Trans. Veh. Technol, 61(1), 74–85, 2012. BIOGRAPHIES [16] K. H. Lee, D. Mougouei, M. K. Yeung, H. J. Park, J. H. Bae and A. Hameed, “Mobility Management Framework in Software Defined Networks,” International Journal of Software Engineering & Its Applications, 2014. Abbas Bradai received his M.S in Computer Science from National Institute of Computer Science (ESI ex-INI), Algiers, Algeria, and from university of Rennes1, France in 2009, and his PhD at LaBRI/University of Bordeaux-1, France, in 2012. He is actually assistant professor at university of Grenoble and research fellow at LIG lab, Grenoble. His main research interests are multimedia communications over wired and wireless networks, cognitive radio, software defined network and virtualization. Abbas Bradai is/was involved in many French and European projects (FP7, H2020) such as ENVISION, VITAL, Data-Tweet. [17] A. Rasem, C. Makaya and Marc St-Hilaire, “O-PMIPv6: Efficient Handover with route optimization in Proxy Mobile IPv6 domain,” WiMob 2012: 47-54 [18] D. Liu, and S. Pierrick, "Distributed Mobility Management: Current practices and gap analysis," (2015). Available online: https://tools.ietf.org/html/draft-ietf-dmm-best-practices-gap-analysis-00 [19] M. Liebsch, “Per-Host Locators for Distributed Mobility Management,” IETF Internet draft (work in progress). IETF, 2012. [20] T. TALEB, K. SAMDANIS and S. SCHMID, “DNS-based solution for operator control of selected IP traffic offload,” Communications (ICC), 2011 IEEE International Conference on. IEEE, 2011. p. 1-5. Kamal D. Singh obtained his PhD degree in computer science from University Rennes 1, France in 2007. He then worked as a post doc in the Dionysos group at INRIA, where he codeveloped many components of Quality of Experience estimation tools and worked mainly on the analysis of video-based applications. He is currently an associate professor at University of Saint Etienne / Telecom Saint Etienne, France. His research interests include Quality of Experience, Video streaming, Software Defined Networking, Big Data and Semantic web. [21] S. M. Raza, D. S. Kim and H. Choo, “Leveraging PMIPv6 with SDN,” Proceedings of the 8th International Conference on Ubiquitous Information Management and Communication, ACM, 2014. [22] Open Networking Fundation, “Software-Defined Networking: The New Norm for Networks,” White Paper, 2012. [23] N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, et al., “OpenFlow: enabling innovation in campus networks,” ACM SIGCOMM Computer Communication Review, 69-74, 2008. [24] S. FANG, “LTTMAP Fast Handoff Scheme of Advancing Hierarchical Mobile IPv6,” Applied Mechanics and Materials. 2014. p. 6375-6378. Abderrahim Benslimane is Full Professor of Computer Science and Engineering at the University of Avignon (France) since September 2001. He has been as Associate Professor at the University of Technology of Belfort-Montbliard since September 1994. He obtained the title to supervise researches (HDR 2000) from the University of Cergy-Pontoise, France. He received the PhD degree (1993), DEA (MS 1989) from the Franche-Comte University of Besanon, and BS (1987) from the University of Nancy, all in Computer Science. His research and teaching interests are in wireless ad-hoc and sensor networks. Particularly, he works on multicast routing, inter-vehicular communications, Quality of service, energy conservation, localization, intrusion detection and MAC layer performance evaluation. He was also interested in specification and verification of communication protocols, group communication algorithms and multimedia synchronization. He has several refereed international publications (book, journals and conferences) in all those domains. [25] D.W. Pentico, “Assignment problems: A golden anniversary survey”. European Journal of Operational Research 176, 774–793, 2007. [26] S. Pack, T. Kwon, and Y. Choi, “A performance comparison of mobility anchor point selection schemes in Hierarchical Mobile IPv6 networks,” Computer Networks, vol. 51, no. 6, pp. 1630-1642, April 2007. [27] S. Mertello and P. Toth, “Knapsack Problems: Algorithm and Computer Implementation”, John Wiley & Sons, 1990. [28] C. HIREMATH and R. HILL, “First-level tabu search approach for solving the multiple-choice multidimensional knapsack problem,” International Journal of Metaheuristics, 2013, vol. 2, no 2, p. 174-199. [29] M. Akbar, E. G. Manning, G. C. Shoja, and S. Khan, “Heuristic solutions for the multiple-choice multi-dimension knapsack problem,” in Proceedings of ICCS ’01, pp. 659-668, 2001. [30] M. Moser, D. P. Jokanovic, and N. Shiratori, “An algorithm for the multidimensional multiple-choice knapsack problem,” IEICE Transacfion Funrlamenfals, vol. 80, no. 3, pp. 582-589, Mar 1997. [31] H. Everett, “Generalized lagrange multiplier method for solving problems of optimum allocation of resources,” Operations Research, vol. 2, 1963. [32] http://mininet.org/overview/ Toufik Ahmed is currently a professor at ENSEIRB-MATMECA school of engineers in Institut Polytechnique de Bordeaux (IPB) and performing research activities in CNRS-LaBRI Lab-UMR 5800 at University Bordeaux 1. T. Ahmed’s main research activities concern Quality of Service (QoS) management and provisioning for multimedia wired and wireless networks, media streaming over P2P network, cross-layer optimization, and endto-end QoS signaling protocols. T. Ahmed has also worked on a number of national and international projects. He is serving as TPC member for international conferences including IEEE ICC, IEEE GlobeCom. [33] http://www.opendaylight.org/ 13