• No results found

Motivation and Problem Statement

Multihoming is a term, often associated (and confused) with multiaccess, multiad- dressing, overlapping networks and multi-interface nodes terms [Bagnulo et al., 2006]. The availability of multiple interfaces and diverse addresses opens a window of op- portunities to increase resilience, improve coverage, reduce costs and optimize energy consumption. In short, multihoming aims to accomplish different goals [Espi et al., 2009]. First, resilience, as the diversity of multiple interfaces/paths can improve re- silience since upon the failure of one interface/path, another one can be employed to provide connectivity. Second, ubiquity, since multiple network interfaces, in particular

when used in a mobile and wireless network environment, enable ubiquitous access to the Internet over different media. Third, load sharing, as multiple interfaces/paths can be used simultaneously to improve throughput. Finally, flow distribution, as flows can be stripped in a dynamic way to meet user policies.

Multihoming is classified into three categories: end-host, end-site and hybrid mul- tihoming [Paul et al., 2009]. The first considers the support of multihoming on end- nodes. The second includes multihoming support enabled at the network side. The third requires the participation of end-nodes and network to enable multihoming. When evaluating such multihoming support, researchers analyse multihoming sup- port restricted to a single metric, such as cost [Richard, 2010], or focus their analysis in a small subset of multihoming protocols [Shinta et al., 2006; de Launois and Bag- nulo, 2006; Fekete and H¨am¨al¨anen, 2009], therefore, being restricted to a certain type of multihoming (e.g. end-host multihoming).

Diverse approaches evaluating multihoming support only address one goal. For instance, resilience is evaluated for the Multi Protocol Label Switching (MPLS) [Cholda et al., 2008, 2009]. Such kind of evaluation considers resilience specific metrics, such as steady-state availability or mean downtime. Nonetheless, the evaluation method- ology is tied to MPLS, lacking a broader applicability to other protocols. Other eval- uations include recovery efficiency and the supported protection model (e.g. 1+1 or 1:N) [Pioro and Medhi, 2004]. Nevertheless, evaluations rely on the application re- quirements. Instead of considering the resilience goal, other approaches focus on the performance of Ubiquitous Computing (UbiComp) systems. The ubiquity goal can be evaluated in terms of quality, which assesses the level of capabilities (i.e. technical characteristics) and the level of extensions [Kwon and Kim, 2006; Scholtz and Con- solvo, 2004]. This evaluation is based on interviews with experts in the field (e.g. with ubiquitous computing experience). Therefore this approach requires the involvement of experts to characterize the system regarding its technical capabilities (e.g. how ef- ficient it is, how is mobility managed and what security mechanisms are included). Other approaches evaluate the performance of a UbiComp system through prototyp- ing [Kwon and Kim, 2006; Resatsch, 2010]. Nonetheless, this approach has the draw- back of requiring a working system, which has high complexity.

Multihoming is leading to enhancements in well-known protocols. Mobile IPv6 (MIPv6) [Johnson et al., 2011] is, to a large degree, the archetypical mobility man- agement protocol for IPv6 networks. Maintaining established communications while moving is similar to preserving established communications through outages in the multihoming context. MIPv6 maintains established communications while a mobile

1.1 Motivation and Problem Statement

node moves across networks. However, current MIPv6 does not fully support mul- tihoming, as it assumes that the home address does not change during the mobility management process. With such assumption, whenever there is a change in the home address, e.g. a node with multiple prefixes in the home network, MIPv6 does not support new addresses acting as the home address. Even if binding update messages convey information in advance about alternative prefixes [de Launois and Bagnulo, 2006], this may not be enough to enable session survivability, as MIPv6 procedures fail, since they rely on a single address. Considering the decreased multihoming sup- port, several extensions have been specified to enhance the MIPv6 protocol. Multiple Care of Address (MCoA) [Pan et al., 2008a] extends MIPv6 to allow the registration of multiple addresses. The mobile node is always reachable at a unique permanent IPv6 address (employed as an identifier) while several temporary addresses (Care of Addresses) are used as locators to reveal the current network location of the node. The specification of flow bindings [Tsirtsis et al., 2011a; Toseef et al., 2008] extends MIPv6 and MCoA specifications defining how multiple flows can be exchanged between two nodes, in a multihoming context. This enables to bind a particular flow to a Care of Address and use another address to receive information from other flows.

Mobile IPv6 (MIPv6) implementations are now available in operating systems and network simulators. For instance, xMIPv6 [Yousaf and Bauer, 2013] is a simulation model that implements MIPv6 in OMNeT++ and provides an accurate implementa- tion of MIPv6 and related protocols, such as the Fast Mobile IPv6 (FMIPv6) [Koodli, 2008] or the Hierarchical Mobile IPv6 (HMIPv6) [Soliman et al., 2008]. Nonetheless, xMIPv6 does not have support for MCoA or Flow Bindings. Implementation of Mo- bile IPv6 and NEMO for Linux (UMIP) [Kuntz, 2013a] enable MIPv6 and MCoA pro- tocols in Linux operating system [Kuntz, 2013b]. Moreover, there are others imple- mentations of MCoA and Flow Bindings but they are not open to the research com- munity [de la Oliva et al., 2011]. Indeed, there is a gap of MCoA implementations in network simulators, that enable experiments with multihomed configurations. This thesis introduces mCoA++, an implementation of MCoA, in the OMNeT++ simulator, which is publicly available to the community.

Multihomed nodes have different ways of using the multiple interfaces. Optimiza- tion techniques determine which paths are optimal considering multiple criteria, for instance throughput, cost and energy. The NP-hard problem [Muscariello et al., 2009; Xue et al., 2007] can be solved using network- or user-centric approaches. The for- mer protects the network from high loads (i.e. high number of users), as selection is controlled by the network. Nonetheless, it requires the involvement of all the access

networks, introducing communications overhead and requiring cooperation between users and networks. On the other hand, the user-centric approach is distributed as selection is controlled by the user. This enables to include user preferences, decreas- ing the complexity and avoiding communication overheads. Nonetheless, as users can have ‘selfish’ behaviour, there is the risk of overloading the network [Charilas and Panagopoulous, 2010].

Linear Programming (LP) [Hillier and Lieberman, 1995] and Multiple Objective Programming (MOP) [Marler and Arora, 2004] techniques provide optimal solutions, but increase complexity in terms of deployment. Moreover, for each problem or sce- nario, a specific formulation needs to be derived, as optimization goals may be dif- ferent. The optimal solution corresponds to the one with the best partial evaluations. Other kinds of optimization mechanisms are efficient for network selection. For in- stance, Markov based decision algorithms model optimization problems under the assumption that the decision can follow a certain probability distribution [Zekri et al., 2012]. Despite having accurate results, they have associated implementation issues.

Outranking Multiple Attribute Decision Mechanism (MADM) techniques [Figueira et al., 2005] are considered techniques flexible enough to accommodate quantitative and qualitative data, as the case of Analytic Hierarchy Process (AHP). MADM tech- niques have been employed in distinct areas (e.g. logistics, computer science, safety, health management) [Behzadian et al., 2012] and have low complexity. Moreover, MADM are able to accommodate several criteria no matter the research problem as- sociated [Zekri et al., 2012; Charilas and Panagopoulous, 2010]. In particular, the out- ranking MADM techniques formulate optimization by scoring the multiple path alter- natives. Indeed, the efficiency with the simplicity of such methods lead to a plethora of MADM techniques.

Simple Additive Weighting (SAW) and Multiplicative Exponent Weighting (MEW) are simple MADM techniques that combine multiple criteria and weights using sum and product functions, respectively [Kaleem, 2012]. Nonetheless, they have issues, such as weight inconsistency, as they do not consider properly the configuration of weights. More robust MADM techniques include Technique for Order Preference by Similarly to Ideal Solution (TOPSIS), Distance to Ideal Alternative (DiA) [Tran and Boukhatem, 2008] and Novel Method based on Mahalanobis Distance (NMMD) [Lahby et al., 2012], as they consider the distance to ideal solutions according to the criteria type, if costs or benefits.

Multihoming cannot be analysed solely based on one metric, such as cost, and cannot be attached to the specificities of a protocol, as well. Such kind of analysis does