abujoda et al. - 2015 - software-defined wireless mesh networks for internet access sharing

Upload: shaun-neville

Post on 05-Jul-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    1/14

    Computer Networks 93 (2015) 359–372

    Contents lists available at ScienceDirect

    Computer Networks

     journal homepage: www.elsevier.com/locate/comnet

    Software-defined wireless mesh networks for internet

    access sharing

    Ahmed Abujoda a,∗, David Dietrich a, Panagiotis Papadimitriou a,Arjuna Sathiaseelan b

    a Institute of Communications Technology, Leibniz Universität Hannover, Germanyb Computer Laboratory, University of Cambridge, UK 

    a r t i c l e i n f o

     Article history:

    Received 15 February 2015

    Revised 31 July 2015

    Accepted 3 September 2015

    Available online 25 September 2015

    Keywords:

    SDN

    Wireless mesh network

    Internet access

    a b s t r a c t

    Universal accessto Internet is crucial, and as such, there have been several initiatives to enable

    wider access to the Internet. PublicAccess WiFi Service (PAWS) is one such initiative that takes

    advantage of the available unused capacity in home broadband connections and allows Less-

    than-Best Effort (LBE) access to these resources, as exemplified by Lowest Cost Denominator

    Networking (LCDNet). PAWS has been recently deployed in a deprived community in Notting-

    ham, and, as any crowd-shared network, it faces limited coverage, since there is a single point

    of Internet access per guest whose availability depends on user sharing policies.

    To mitigate this problem and extend the coverage, we use a crowd-shared wireless

    mesh network (WMN), at which the home routers are interconnected as a mesh. Such a

    WMN provides multiple points of Internet access and can enable resource pooling across all

    available paths to the Internet backhaul. In order to coordinate traffic redirections through

    the WMN, we implement and deploy a software-defined WMN (SDWMN) control plane inone of the CONFINE community networks. We further investigate the potential benefits of a

    crowd-shared WMN for public Internet access by performing a comparative study between

    a WMN and PAWS. Our experimental results show that a crowd-shared WMN can provide

    much higher utilization of the shared bandwidth and can accommodate a substantially larger

    volume of guest traffic.

    © 2015 Elsevier B.V. All rights reserved.

    1. Introduction

    The Internet has evolved into a critical infrastructure

    for education, employment, e-governance, remote healthcare, digital economy, and social media. However, the In-

    ternet today is facing the challenge of a growing digital

    divide, i.e.,  an increasing disparity between those with and

    without Internet access   [60].  Access problems often stem

    from sparsely spread populations living in physically remote

    locations, since it is simply not cost-effective for Internet

    Service Providers (ISPs) to deploy the required infrastructure

    ∗ Corresponding author. Tel.: +49 5117622596.

    E-mail address: [email protected] (A. Abujoda).

    for broadband Internet access in these areas. Coupled with

    physical limitations of terrestrial infrastructures (mainly due

    to distance) to provide last mile access, remote communities

    also incur higher costs for connection between the exchangeand backbone network when using wired technologies, be-

    cause the distances are longer. Ubiquitous mobile broadband

    coverage is currently not feasible, since direct investment in

    local infrastructure is uneconomic  [55].   Addressing digital

    exclusion due to socio-economic barriers is also important.

    The United Nations revealed the global disparity in fixed

    broadband access, showing that access to fixed broadband

    in some countries costs almost 40–100 times their national

    average income [34].

    The reluctance of network operators (who are economi-

    cally motivated) to provide wired and cellular infrastructures

    http://dx.doi.org/10.1016/j.comnet.2015.09.008

    1389-1286/© 2015 Elsevier B.V. All rights reserved.

    http://dx.doi.org/10.1016/j.comnet.2015.09.008http://www.sciencedirect.com/http://www.elsevier.com/locate/comnetmailto:[email protected]://dx.doi.org/10.1016/j.comnet.2015.09.008http://dx.doi.org/10.1016/j.comnet.2015.09.008mailto:[email protected]://crossmark.crossref.org/dialog/?doi=10.1016/j.comnet.2015.09.008&domain=pdfhttp://www.elsevier.com/locate/comnethttp://www.sciencedirect.com/http://dx.doi.org/10.1016/j.comnet.2015.09.008

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    2/14

    360   A. Abujoda et al. / Computer Networks 93 (2015) 359–372

    to rural/remote areas have led to several initiatives to build

    large-scale, self-organized, and decentralized community

    wireless networks that use WiFi mesh technology (includ-

    ing long distance), due to the reduced cost of using the unli-

    censed spectrum [51]. These community wireless mesh net-

    works have self-sustainable business models, which provide

    more localized communication services, as well as Internet

    backhaul support via peering agreements with traditionalnetwork operators who see such networks as a way to ex-

    tend their reach at a lower cost. There are also community-

    led wireless initiatives such as crowd-shared wireless net-

    works, in which home broadband owners share a portion of 

    their home broadband with friends, neighbors, or other users

    either for free or as part of a service offering by the ISP ( e.g.,

    [6,53]).

    Public Access WiFi Service (PAWS)  [53] is a community-

    led crowd-shared WiFi service that uses a set of tech-

    niques that make use of the available unused capacity in

    home broadband networks and allowing Less-than-Best Ef-

    fort (LBE) access to these resources, based on the Low-

    est Cost Denominator Networking (LCDNet) paradigm [58].PAWS adopts an approach of community-wide participation,

    where home broadband subscribers are enabled to donate

    controlled but free use of their high-speed broadband Inter-

    net to fellow citizens. PAWS was deployed with 20 custom-

    made PAWS routers placed in a deprived community in Not-

    tingham and was also trialed out in rural Wales. PAWS is

    essentially a crowd-shared access network (similar to FON

    [5]) for under-privileged users in urban and rural communi-

    ties. PAWS has been facing ongoing deployment challenges,

    such as limited coverage, stemming from user sharing pat-

    terns. In particular, during the PAWS trial deployment, it was

    observed that home users did not share their broadband con-

    nection over periods at which either the whole bandwidth orall the ports of the home router were needed (i.e., PAWS uses

    an access point connected to the home router for Internet ac-

    cess sharing). Essentially, PAWS is a crowd-shared network

    with a single point of access per guest, and as such, Internet

    access sharing is highly dependent on user sharing policies

    (i.e.,   the periods at which user share their Internet connec-

    tion).

    To mitigate this problem, we investigate the potential

    benefits of extending PAWS or any crowd-shared wireless

    network to a wireless mesh network (WMN) by intercon-

    necting wireless home routers. As such, a crowd-shared

    WMN provides extended coverage via multiple points of ac-

    cess for each guest. We particularly consider crowd-sharedWMNs in residential areas, taking advantage of the dense de-

    ployment of wireless home routers. The main challenge in

    the management of such a WMN lies in the coordination of 

    guest traffic redirections, such that the shared bandwidth is

    efficiently utilized. More precisely, traffic redirection requires

    the assignment of guest flows to gateways and the selection

    of paths (through the WMN) that provide sufficient capacity

    and low delay. Furthermore, decisions for traffic redirections

    should be also based on user sharing policies, when these are

    disclosed in advance. Given the amount of information that

    has to be collected before flow assignments can be made, we

    deem a centralized control plane as a more suitable approach

    to WMN management for Internet access sharing, since allinformation can be conveyed to a centralized controller

    facilitating the coordination of traffic redirections. In this re-

    spect, we leverage on software-defined networking (SDN)

    principles for the control plane design.

    Along these lines, our contributions are the following:

    •   We present the design and implementation of a SDN con-

    trol plane for the coordination of guest traffic redirections

    through the WMN.

    •   We develop an algorithm for the assignment of gatewaysto flows that require redirection, taking into account the

    flow demands, the residual bandwidth in the access links

    and the WMN, as well as, the advance knowledge of shar-

    ing policies.

    •  We generate a model for user sharing patterns based on

    the router on/off periods captured from the PAWS deploy-

    ment in Nottingham.

    •   We quantify the benefits of a crowd-shared WMN for

    Internet access sharing using a deployment of our SDN

    control plane in Athens Wireless Metropolitan Network

    (AWMN)   [4],   i.e.,   one of the community networks of 

    the CONFINE project   [2,3,24]. Community Lab, https://

    community-lab.net/ In this respect, we perform a com-parative study between a WMN and a crowd-shared net-

    work with limited coverage (i.e.,   one access point per

    guest).

    This paper extends our previous study on software-

    defined WMNs, at which the efficiency of a crowd-shared

    WMN was assessed using simulations [18]. The remainder of 

    the paper is organized as follows. In  Section 2, we provide

    an overview of the software-defined WMN (SDWMN) con-

    trol plane. Section 3 elaborates on techniques for guest traf-

    fic redirection. In Section 4, we discuss the implementation

    of the SDWMN and its deployment in AWMN. In  Section 5,

    we present our evaluation results and discuss the benefits of a crowd-shared WMN for Internet access sharing.  Section 6

    discusses related work. Finally, Section 7 highlights our con-

    clusions.

    2. Software defined crowd-shared wireless mesh

    networks

    The underlying problem with PAWS or any crowd-shared

    network is that they serve as single point of Internet access to

    guests within the coverage of the wireless router and hence,

    they have no provision to extend thecoverage when no band-

    width is being shared. Based on our experience from the trial

    PAWS deployment, PAWS routers were not available for cer-tain periods, because sharers needed all the bandwidth of 

    their broadband connection or due to other reasons, such as

    economic constraints placed on home users in underprivi-

    leged areas where they are enforced to conserve energy by

    turning off the routers at nights. These observed user behav-

    iors entail significant challenges for the successful adoption

    of PAWS.

    A potential solution to this problem is to extend the PAWS

    network as a crowd-shared WMN. Such a network would

    allow home network users to share part of their own broad-

    band connection with the public for free while also con-

    nected to each other as a WMN providing extended cover-

    age (Fig. 1). Extending PAWS to a crowd-sharedWMN departsfrom the norm: multiple users from different ISPs form part

    https://community-lab.net/https://community-lab.net/https://community-lab.net/https://community-lab.net/https://community-lab.net/https://community-lab.net/https://community-lab.net/

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    3/14

     A. Abujoda et al. / Computer Networks 93 (2015) 359–372   361

    Fig. 1.   Crowd-shared WMN for public Internet access.

    of the WMN to provide free Internet connectivity, while most

    wireless community WMNs today are operated by a single

    organization. This raises important questions regarding the

    operation, configuration, and management of crowd-sharedWMNs.

    SDN can facilitate the management and operation of 

    wireless networks at large scale. Leveraging on SDN’s

    centralized control and network-wide visibility, the man-

    agement and operation of a crowd-shared WMN can be

    outsourced to a third party. In   [54],  we describe a holistic

    approach of coupling both social and economic incentives

    in designing future networks allowing the extension of 

    the stakeholder value chain to include more than the two

    traditional parties (consumer and Internet Service Provider).

    Compared to existing mesh networks for Internet access

    sharing (e.g.,   Freifunk   [6]), our approach provides more

    opportunities for non-governmental organizations and localgovernments (driven by social goals rather than economic)

    to become virtual network operators. Enabling a third party

    to federate such wireless home networks would reduce the

    operating expenditures for network operators as well as

    enable new economic models for revenue generation from

    currently underutilized infrastructures.

    In particular, we rely on SDN to create the notion of 

    Virtual Public Networks (VPuN),   i.e.,   crowd-shared home

    networks created, deployed and managed through an evo-

    lutionary SDN control abstraction [54]. Although originally

    intended for crowd-shared wireless networks such as PAWS,

    VPuN can be also used for crowd-shared WMNs, enabling

    resource pooling across multiple home broadband connec-tions based on the prevailing network conditions and usage

    sharing patterns. Based on the notion of VPuN, we have

    deployed a SDWMN control plane in AWMN   [4]. As part

    of the Community-Lab  [3],   AWMN consists of more than

    1000 wireless nodes and 30 research devices (RDs) that

    host isolated containers (i.e., so-called slivers) which can be

    allocated and controlled by a user, according to the needs of 

    his experiment [24].

    Fig. 2 illustrates an overview of the SDWMN control plane.

    The main goal of the control plane is to improve the uti-

    lization of shared bandwidth by redirecting guest traffic to

    one of the home routers through the WMN, based on user

    sharing policies. As such, the control plane exposes an inter-face to each home user, allowing him to express a sharing

    Sharer

    Community Network 

    Traffic Redirection

    Southbound API (OpenFlow, SNMP)

    Monitoring

    Northbound API

       S   D   N    C

      o  n   t  r  o   l   P   l  a  n  e

    Virtual Network Operator

    Research

    Device

    Research

    Device

    Research

    Device

    Research

    Device

    Research

    Device

    Fig. 2.   Software-defined WMN control plane overview.

    policy (e.g.,   using the sharing policy expression language

    presented in   [54]). The control plane functionality mainly

    consists of traffic redirection and monitoring. The traffic

    redirection module selects the gateway for Internet access

    (using the algorithm presented in   Section 3) and subse-

    quently creates a tunnel between the home router where

    the guest is connected and the router assigned as the gate-

    way (home routers are deployed in the AWMN RDs). Traffic

    is redirected through a tunnel, since the wireless nodes in

    AWMN are not under our control (as opposed to the RDs).

    A tunnel is dynamically set up when traffic has to be redi-rected over that path, and it is torn down when it is no longer

    needed. The monitoring module collects statistics about the

    bandwidthutilization of the WMN and the access links. A de-

    tailed description of the implementation of the SDWMN con-

    trol plane and the gateway is given in Section 4.

    3. Traffic redirection

    Assigning flows to network paths with constrained capac-

    ity can be formulated as a multi-commodity flow problem

    which is known to be NP-hard   [33].  Hereby, we present a

    heuristic algorithm for the assignment of the gateway and

    the path over which the traffic will be redirected through

    the WMN. The algorithm aims at maximizing Internet shared

    bandwidth utilization by accommodating as large as possible

    number of flows. It is executed by a SDN controller which has

    knowledge of the WMN topology andutilization, the Internet

    access link utilizations, and the user sharing policies. We first

    describe the traffic redirection algorithm   (Section 3.1) and

    then investigate the potential benefits of user sharing poli-

    cies (Section 3.2).

     3.1. Traffic redirection algorithm

    We represent the WMN as a weighted undirected graphG =  (N , L), where N is the set of nodes and L is the set of links

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    4/14

    362   A. Abujoda et al. / Computer Networks 93 (2015) 359–372

     Algorithm 1 Gateway and path assignment.

    Inputs: G  =  (N , L),D

    SORT(D)

    for each d  ∈  D do

    search  ←  true

    M  ←  {N \ nu}   // M  : candidate set of routers

     while (search AND M  = ∅)

     g  ←  argmaxi∈M C (ni)

    for each  p  ∈  P ug 

    if C ( p) <  r  then

    P ug  ← P ug  \ p

    end if 

    end for

    if  P ug  = ∅ then

    M  ←  M \ n g else

    gateway ← n g    // gateway assignment

     path ←  SP(P ug )   // path assignment

    search  ←  false

    end if 

    end while

    end for

    between nodes of the set  N . Each node ni  is associated with

    an Internet access link whose available shared bandwidth is

    denoted by C (ni). Each link lij  ∈  L  between two nodes ni  and

    n j is associated with the available bandwidth C (lij). Let P ij de-note the set of paths in the network  G, between the pair of 

    nodes ni and n j. The available bandwidth C ( p) associated to a

    path  p  ∈  P ij  is given by the minimum residual bandwidth of 

    the links along the path:

    C ( p) =  minlij ∈ p

    C (li j)   (1)

    We further represent a flow demand for a guest with the

    tuple d  =  (nu, r ), where nu   ∈ N  is the node where the guest

    device has been attached and r  denotes the flow rate. We use

    D to represent the set of flow demands that have arrived in

    the network.

    Algorithm 1  assigns a gateway and the shortest path toeach flow demand from the set D. The algorithm is executed

    whenever there is insufficient shared bandwidth in the lo-

    cal home network. Initially, the flow demands are sorted in

    decreasing order. For each flow demand, the algorithm se-

    lects the home router with the highest access link bandwidth

    (i.e., C (ni)). Subsequently, the algorithm identifies the set of 

    paths,  P ug , between the local home router (nu) and the as-

    signed gateway (n g ) that satisfy the flow demand (Eq. (1)). In

    case there is no such path, the algorithm performs another

    iteration for the selection of the gateway, excluding the pre-

    viously selected home router. Otherwise, the shortest among

    these paths is being identified based on the number of hops

    (SP  function in the algorithm). This eventually computes thepath for the traffic redirection through the WMN.

    Fig. 3.   Flow redirections.

    This algorithm carries out the gateway assignment basedon the available shared bandwidth of the home routers in

    the crowd-shared network. Although this can pool resources

    from all home networks where sharing is permitted achiev-

    ing efficient utilization of the shared bandwidth, guest traffic

    may have to traverse multiple hops in the WMN. This can

    lead to latency inflation, delay variation, reordering [56,57]

    and in general, performance degradation. To mitigate this,

    we further use a variant of this algorithm by introducing a

    threshold in the number of hops between the local home

    router and the assigned gateway. For example, adjusting the

    threshold to 1 restricts the search space to the next-hop

    routers with sufficient shared bandwidth.

     3.2. User sharing policies

    Algorithm 1   assigns flows to gateways taking into ac-

    count the amount of shared bandwidth and optionally the

    path hop-count. So far, we have not exploited any advance

    knowledge of user sharing policies for traffic redirection.

    Such information can prevent wasteful traffic redirections

    (i.e., forwarding traffic to a router which will shortly become

    unavailable for Internet access sharing). Sharing policies

    can be specified using a sharing policy expression language

    (SPEL), e.g., the XML-based schema presented in our previous

    work [54]. SPEL essentially provides the necessary means to

    the sharers to specify the amount of shared bandwidth aswell as the period of sharing. This information is conveyed

    to the SDN control plane and is used as an additional input

    for gateway assignment.

    We run a trace-driven simulation of a crowd-shared

    WMN to investigate the impact of sharing policies on traf-

    fic redirections. In particular, we model the availability of 

    the home routers using an on-off Markov chain. On and off 

    times are exponentially distributed with mean values  µon =

    106 min and µof f   = 555 min. We parameterize the exponen-

    tial distributions using datasets from the PAWS deployment

    in UK.

    Fig. 3 illustrates the number of traffic redirections for dif-

    ferent network loads with and without the knowledge of sharing policies. When sharing policies are known, the traffic

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    5/14

     A. Abujoda et al. / Computer Networks 93 (2015) 359–372   363

    path 1

    Sink

    delay node (tc)

    OVSSrc

    path 2

    Fig. 4.   Experimental setup for packet reordering evaluation.

    0 100 200 300 400 5000

    25

    50

    75

    100

    125

    150

    175

    200

    225

    delay(old_path) − delay(new_path) (ms)

      n  u  m

       b  e  r  o   f  p  a  c   k  e   t  s  o  u   t  −  o   f  −  o  r   d  e  r

    1 Mbps

    2 Mbps

    5 Mbps

    Fig. 5.  Packet reordering.

    is directed to the router with the longest period of availability

    (among the routers with sufficient shared bandwidth). Ac-

    cording to Fig. 3, using sharing policies leads to fewer traffic

    redirections, especially for low and moderate network loads.

    For higher loads,the number of routers with sufficient sharedbandwidthdiminishes, and as such, the knowledge of sharing

    policies does not yield significant gains.

    We perform additional tests to investigate potential im-

    plications, such as packet reordering and higher communi-

    cation overhead, due to traffic redirections. First, we use the

    experimental setup depicted in Fig. 4 to quantify the level of 

    packet reordering. In this setup, UDP traffic is redirected from

    path 1 to path 2 at the intermediate node. The redirection is

    carried outby insertingflow entries to an OpenvSwitch(OVS)

    datapath that has been set up in the intermediate node. We

    further employ a delay node, set up in path 2, to adjust the

    delay along this path. Fig. 5 shows that the number of out-

    of-order packets increases in proportion to the delay differ-ence between the two paths. Our path delay measurements

    in AWMN indicate that a redirection through the WMN in-

    creases the RTT with up to 50 ms. This will result in the

    out-of-order delivery of a small number of packets, which, in

    turn, can lead to congestion control invocations, and, hence,

    lower throughput for TCP flows.

    Besides packet reordering, traffic redirections generate

    additional communication overhead between the SDWMN

    controller and the routers. Specifically, for each flow redirec-

    tion the router sends a OFPT_PACKET_IN  message to the con-

    troller, which, in turn, sends an OFPT_FLOW_MOD message to

    the router. Taking the respective acknowledgment messages

    into account, the communication overhead per flow redirec-tion is 490 bytes. This overhead can increase substantially

    Fig. 6.  SDWMN controller.

    with a large number of guest flows per home router, as the

    PAWS router logs indicate. Considering the identified impli-

    cations of traffic redirections, we use sharing policies in the

    assignment of guest flows to gateways.

    4. Implementation

    We provide a detailed description of the implementation

    of the SDWMN control plane and gateway in Sections 4.1 and

    4.2, respectively.

    4.1. SDWMN controller 

    We implement our controller in Python using POX which

    provides a framework to implement SDN controllers with

    OpenFlow protocol interface [43]. Since OpenFlow supports

    only the configuration of switchflow tables, we use XML-RPC

    interface to install and configure tunnels between the gate-

    ways. Our SDWMN controller consists of the following mod-

    ules (Fig. 6):

    •   Gateway registration: Each new gateway joining the

    crowd-shared network is registered with the creation of 

    a new  gateway   object in the controller repository. Each

     gateway   object holds information about the gateway’s:

    (i)   datapath ID, which is a 64 bit unique identifier for

    each OpenFlow switch instance, (ii) IP address of the

    WMN port, (iii) ports table, which contains the names and

    OpenFlow switch ports numbers (i.e., DSL port, the WMN

    port and the guests’ wireless network port), (iv) moni-

    toring table, which contains the gateway shared band-

    width utilization and WMN path quality, and (v) tunnel

    table, which contains the IP addresses, UDP port numbers(we use UDP-in-IP tunnelling) and OpenFlow switch port

    numbers of the installed tunnels. The registration process

    is triggered by POX when the gateway establishes a new

    control channel with the controller.

    •   Monitoring : This module collects and processes the mea-

    surements of shared bandwidth utilization and the WMN

    paths delay and hop counts for each gateway. Bandwidth

    (BW) estimation in a WMN is very challenging, due to BW

    fluctuations and the low degree of accuracy of available

    BW measurement tools (e.g.,   pathload   [39], TOPP   [44],

    and IGI/PTR   [37])   that was also confirmed by our own

    tests. However, in our experimental setup, the Internet

    access links are the bottleneck (since they have been con-figured at lower capacity than the WMN), and, as such,

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    6/14

    364   A. Abujoda et al. / Computer Networks 93 (2015) 359–372

    Fig. 7.   SDWMN gateway. (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)

    the aforementioned WMN bandwidth estimation issues

    do not affect the accuracy of our measurements. Using

    the OpenFlow protocol, the BW measurement module

    pulls the network port counters of each home gateway to

    acquire the accumulated number of bytes received/sent

    in the network port (e.g.,   the DSL port). In particular,

    the controller sends an OpenFlow   OFPT_STATS_REQUEST 

    message with   OFPST_PORT  type and the port number to

    the gateway. The gateway replies with OFPT_STATS_REPLY 

    message which carries the latest reads of the gateway

    rx_bytes   and   tx_bytes  counters. To calculate the shared

    bandwidth utilization, the BW measurement module ap-

    plies exponential moving average to the counters changes

    over time. In addition, the path measurement module

    uses XMP-RPC to pull the RTT and hop-count measure-

    ments of each WMN path to/from each gateway. All mea-

    surements are stored in the monitoring table of the re-

    spective gateway object.

    •   Traffic redirection: Flows are redirected using the follow-

    ing modules:

    •   Gateway selection: The gateway selectionmodule is in-

    voked when a gateway sends a  OFPT_PACKET_IN  mes-

    sage to the controller to announce the arrival of a

    new flow. Based on the measurements (shared BW

    utilization and path length) provided by the moni-

    toring module and using the algorithm described in

    Section 3,   the gateway selection module assigns a

    gateway to the new flow. Subsequently, a tunnel is

    being set up (see   tunnel installation   for further de-

    tails) between the home gateway  (where the flow ar-

    rives) and the   assigned gateway   (where the flow is

    redirected). Next, the flow table configuration  module

    installs the respective forwarding entries in the home

    and the assigned gateway such that the guest flow is

    redirected accordingly.

    •   Tunnel installation: Using the XML-RPC interface,

    packet encapsulation modules are installed in the

    gateway. This consists in sending the IP address of the

    assigned gateway to the flow home gateway as well

    as the source and destination port numbers of the

    UDP header used for encapsulation. Upon successful

    installation of the tunneling module, the home gate-

    way replies with the switch port number of the new

    encapsulation module. This information is stored in

    the tunnel table of the home gateway object to be used

    later by the flow table configuration module.

    •  Flow table configuration: This module installs the cor-

    responding flow entries in the home gateway and

    the assigned gateway using OpenFlow. This consists

    in sending a  OFPT_FLOW_MOD  message to the home

    and assigned gateways. This message carries the flow

    matching fields  [43] (e.g.,  source/destination IP, port

    source/destination) as well as the OpenFlow switch

    output port number.

    4.2. SDWMN gateway

    Our SDN gateway exposes to the SDWMN controller an

    OpenFlow and XML-RPC interface to install tunnels and redi-

    rect flows (see Fig. 7). Tunnels are created by encapsulating

    guest traffic in UDP packets (i.e., IP-in-UDP) using the encap-

    sulation module (red line Fig. 7). The destination IP address

    of the tunnel header is set to the IP address of the assigned

    gateway. For each new tunnel a new encapsulation module is

    created. On the other hand,incoming traffic (greenline Fig. 7)is processed by the decapsulation module, which strips the

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    7/14

     A. Abujoda et al. / Computer Networks 93 (2015) 359–372   365

    outer header before the traffic is delivered to the output port.

    Both encapsulation and decapsulation modules are imple-

    mented using Click [41].

    To steer data traffic between the physical ports and the

    modules (encapsulation/decapsulation), we rely on Open-

    vSwitch [49]. This switching module also forwards messages

    from the SDN controller to the gateway controller module

    through the XML-RPC server. To connect modules to Open-vSwitch, we use Linux TAP devices.

    The instantiation of encapsulation/decapsulation mod-

    ules is performed by the gateway controller in the following

    steps: (i) creation of TAP interfaces, (ii) appending TAP in-

    terfaces names, MAC and IP address of the assigned gateway

    to Click configuration templates stored on the repository (we

    use templates to speed up modules instantiation) and (iii) in-

    stallation of the Click configuration.

    Furthermore, the gateway controller collects and trans-

    fers the measurements generated by the path measurement

    module to the SDN controller. The path measurement mod-

    ule uses ping  and traceroute to collect RTT and hop counts of 

    the WMN paths. A list of gateways IP addresses is passed tothis module to obtain the measurements. The module sends

    10 probing packets every 30 s to avoid flooding the network.

    5. Evaluation

    In this section, we perform a comparative study of crowd-

    shared WMN against PAWS (or any other crowd-shared net-

    work with a single point of access). To this end, we run exper-

    iments in AWMN (Section 5.1) and further use simulations

    with larger WMN topologies (Section 5.2).

    Using experimentation and simulations, we initially mea-

    sure the utilization level of the shared BW and the accumu-

    lated serving rate across time and for different flow arrivalrates. To study the scalability of our control plane, using ex-

    perimentation we quantify the control communication over-

    head in terms of BW consumption and flow setup delay. We

    further use simulations to study the effect of traffic redi-

    rection on latency by measuring the shared BW utilization

    when applying a thresholdto the redirection path length (see

    Section 3). Finally, we investigate thescalability of the crowd-

    shared WMN in terms of BW utilization and serving rate with

    different network sizes using simulations.

    5.1. Experimental results

    For our experiments, we use 12 research devices (RDs) todeploy 11 home routers (or gateways) and one SDWMN con-

    troller. Fig. 8 illustrates the WMN topology measured from a

    single RD. We implemented a tool to analyze and construct

    the topology out of   traceroute  measurements. Using MGEN

    [1],  we generate guest flows with a rate and lifetime sam-

    pled out of a uniform and an exponential distribution, re-

    spectively. The flows arrive to the network according to a

    Poisson process. For router availability pattern, we use the

    model described in Section 3.2. Since running tests for more

    than 555 min (the mean value of the off period) is not fea-

    sible, we scale down the mean values to  µon =  10.6 s andµof f   = 55.5 s. In each gateway, we further implementa timer

    to emulate the on and the off period of the router. Upon theexpiration of the timer, the gateway sends a signal to the

    Fig. 8.   The WMN topology measured using traceroute from a research de-

    vice (blue circle) toward the other research devices (red circles). (For inter-

    pretation of the references to color in this figure legend, the reader is re-

    ferred to the web version of this article.)

    controller to announce the beginning of an on or off period.

    The time required to generate the signal is negligible (a few

    milliseconds). This timer can be also used by the sharers forsharing policy configurations in their home routers. Due to

    occasional reliability issues in the RDs, we restricted the du-

    ration of our experiments to 250 s. After downscaling the

    router on/off periods, there are several transitions between

    the router states during each experiment.

    Our main evaluation metrics include: (i) the shared band-

    width utilization across all home routers, and (ii) the accu-

    mulated serving rate ASR(T ) at time T , defined as:

     ASR(T ) =T t  s

     finishedt 

    T t  s finishedt    + 

    T t  s

    rejectedt 

    ,   (2)

    where s

     f inished

    t    denotes the total sizes of the flows at time t which are accepted (i.e.,  assigned Internet access) and suc-

    cessfully served without disruption due to router unavailabil-

    ity. srejectedt    denotes the total sizes of the flows at time t which

    are rejected (i.e., not assigned Internet access).

    We initially measure the shared bandwidth utilization

    (Fig. 9) and the serving rate (Fig. 10) with an arrival rate of 

    60 flows per minute, across 10 runs. Variations in the mea-

    surements across the different runs were insignificant. Fig. 9

    illustrates a low utilization of the shared bandwidth with-

    out a WMN during the whole period, although there is high

    demand for Internet access by guests attached to the vari-

    ous home networks. In contrast, a WMN allows to capital-

    ize the unused capacity and accommodate a larger volume of guest traffic. More precisely, according to Fig. 9 guest traffic

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    8/14

    366   A. Abujoda et al. / Computer Networks 93 (2015) 359–372

    Fig. 9.   Shared bandwidth utilization.

    Fig. 10.   Accumulated serving rate.

    redirection through the WMN results in the full utilization

    of the shared bandwidth. Furthermore, crowd-shared WMNs

    can accommodate substantially larger volume of guest traf-

    fic, as depicted in Fig. 10. This stems from the high utilization

    of the shared bandwidth.

    We further measure the shared bandwidth utilization and

    serving rate with a wide range of guest traffic demands. In

    this respect, the boxplots in   Figs. 11   and  12  illustrate the

    shared bandwidth utilization and serving rate with diverse

    flow arrival rates, ranging from 20 to 80 flows per minute.1

    These results corroborate the efficiency of the WMN for vari-

    ous traffic loads, as the shared bandwidth utilization and the

    1 All boxplots show measurements across the time period of the exper-

    iment,   i.e.,  each point on the graph represents a different time point. Fordifferent runs we calculate the average, the variation is insignificant.

    Fig. 11.   Shared bandwidth utilization for diverse flow arrival rates across

    250 s experimentation time.

    Fig. 12.   Accumulated serving rate for diverse arrival rates across 250 s ex-

    perimentation time.

    serving rate always remain very high. In  Fig. 12, the flow ar-

    rival rates of 60 flows per minute and beyond lead to request

    rejections, due to the insufficient access link bandwidth. On

    the other hand, Figs. 11 and 12 show poor bandwidth utiliza-tion and serving rate without a WMN, due to the presence

    of a single point of Internet access for each guest. Essentially,

    our results show thesignificant benefit that a WMNcan bring

    into crowd-shared networks, by effectively pooling resources

    across all home networks.

    To evaluate the scalability of our control plane, we mea-

    sure the flow setup time and the average control communi-

    cation overheadacross a range of flow arrival rates. We define

    the setup time as the interval between the flow’s first packet

    arrival at the gateway and its transmission to the next hop.

    This is essentially the time incurred for gateway selection

    and flow entry installation. We also define the control com-

    munication overhead as the bandwidth consumed to setupflows and monitor the shared bandwidth utilization. We run

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    9/14

     A. Abujoda et al. / Computer Networks 93 (2015) 359–372   367

    Fig. 13.   Setup time per flow.

    Fig. 14.   Control communication overhead.

    our experiments on a single gateway (the results can be eas-

    ily extrapolated for more gateways) and generate 100 differ-

    ent flows for each arrival rate. Figs. 13 and 14 show that per

    flow setup time does not change significantly, while the con-trol communication overhead increases linearly and is in the

    range of tenths of Kbps. According to these results, theperfor-

    mance of our controller scales with increasing control loads.

    5.2. Simulation results

    To run tests at larger scale, we developed a simulator (in

    Python) that models the flow-level behavior of the guest traf-

    fic in a crowd-shared WMN. The flow parameters that we use

    in our simulations are the average flow rate, and their arrival

    and departure time. We use the TFA wireless mesh topology

    [7] which consists of 21 nodes (Fig. 15). TFA is an operational

    network deployed in a densely populated residential area;that is exactly the network environment we consider for the

    Fig. 15.   Simulation WMN topology.

    time (hours)

    0 5 10 15 20 25 30 35 40 45 50 55 60

      s   h  a  r  e   d   b  a  n   d  w

       i   d   t   h  u   t   i   l   i  z  a   t   i  o  n

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    with WMN

    without WMN

    Fig. 16.   Shared bandwidth utilization.

    proposed crowd-shared WMN. Each node in this topologyrepresents a home router with shared Internet access band-

    width,whereas each edge is a wireless mesh link. Guest flows

    arrive randomly at different home routers. Each generated

    flow has a rate and lifetime sampled out of a uniform and ex-

    ponential distribution, respectively. The guest flows arrive to

    the network according to a Poisson process. We simulate the

    router availability using our model with the mean values ob-

    tained from the PAWS datasets. Guest flows are granted Inter-

    net access either through local routers or by redirection to re-

    mote routers based on the algorithm presented in Section 3.

    Flows which cannot be accommodated are rejected.

    Each simulation run comprises 60 h at a time discretiza-

    tion of 20 min. For each scenario, we perform 20 simulationruns. We assume a homogeneous setting where each router

    has 16 Mbps ADSL downlink and set the shared bandwidth

    per router to 8 Mbps (i.e.,  in the periods that each router is

    active). We run our simulation with mesh link capacity of 

    200, 54 and 10 Mbps. This does not have any impact on the

    simulation results, since the bottleneck is the Internet access

    links. Note that our wireless link model does not consider the

    impact of interference and distance on the offered link band-

    width.

    The simulation results are in accordance with the results

    from the community network. According to Figs. 16 and 17,

    the crowd-shared WMN yields significantly higher utiliza-

    tion of the shared bandwidth and accommodatesmore trafficin comparison to the crowd-shared network without WMN.

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    10/14

    368   A. Abujoda et al. / Computer Networks 93 (2015) 359–372

    time (hours)

    0 5 10 15 20 25 30 35 40 45 50 55 60

      a  c  c  u  m  u   l  a   t  e   d

      s  e  r  v   i  n  g  r  a   t  e

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    with WMNwithout WMN

    Fig. 17.   Accumulated serving rate.

    flows arrrival rate (flows/min)

    10 20 30 40 50 60 70 80 90 100

      s   h  a  r  e   d   b  a  n   d  w   i   d   t   h  u   t   i   l   i  z  a   t   i  o  n

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    with WMNwithout WMN

    Fig. 18.   Shared bandwidth utilization vs. flow arrival rate across 60 h simu-

    lation time.

    The serving rate, in particular, drops as guest flows are not

    granted Internet access, due to either insufficient bandwidth

    (with WMN) or changes in sharing policies (without WMN).

    Eventually, in both cases, the serving rate reaches a steady

    state. Shared bandwidth utilization for a wide range of guest

    traffic demands is depicted in Fig. 18.In our simulations, redirected guest traffic traverses up to

    4 hops in the WMN. We further use a variant of our gateway

    assignment algorithm (briefly discussed in Section 3), which

    introduces a threshold in the number of hops between the

    home router and the assigned gateway. Fig. 19 illustrates the

    shared bandwidth utilization for diverse hop-count thresh-

    old values ranging from 1 to 3, and without any limit in the

    hop count. Restricting the number of hops has a noticeable

    impact on bandwidth utilization, especially for a single hop,

    since Internet access is permitted only through one of the

    next-hop home routers. In essence, there is a trade-off be-

    tween coverage extension (and thus effective bandwidth uti-

    lization) and latency. This may become more critical in largeWMNs, where long paths can inflate latency.

    flows arrival rate (flows/min)

    20 50 80

      s   h  a  r  e   d   b  a  n  w

       i   d   t   h  u   t   i   l   i  z  a   t   i  o  n

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    max number of hops=1

    max number of hops=2

    max number of hops=3

    no limit

    Fig. 19.   Shared bandwidth utilization for diverse hop-count threshold val-

    ues vs. flow arrival rate.

    TFA (21) 50 100 150 200

      s   h  a  r  e   d   b  a  n   d  w   i   d   t   h  u   t   i   l   i  z  a   t   i  o  n

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    topologies with different size (# of nodes)

    with WMN

    without WMN

    Fig. 20.   Shared bandwidth utilizationwith different topologiesfor 60 h sim-

    ulation time.

    We further run simulations using synthetic WMN topolo-

    gies of diverse size and structure generated using NPART

    [45]. NPART is a tool for generating realistic WMN topologies,

    based on real-world WMN deployments (Berlin Freifunk[6]).

    Using NPART and the Berlin WMN model, we randomly gen-

    erate 4 additional WMN topologies with 50, 100, 150 and 200

    nodes. We set the wireless link capacity and shared band-width to 54 Mbps and 8 Mbps, respectively. For all topolo-

    gies, we generate flows with arrival rate of 120 flows per

    minute, which allows us to saturate the WMN capacity with

    all topologies. As shown in Figs. 20 and 21, the shared band-

    width utilization and serving rate scale linearly with the in-

    crease of the WMN size. This is further confirmed by the

    increase in WMN utilization   (Fig. 22) and the number of 

    re-assigned flows (Fig. 23) with larger WMN sizes.

    6. Related work

    In the following, we discuss related work on WMN rout-

    ing, software-defined wireless networks, and Internet accesssharing.

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    11/14

     A. Abujoda et al. / Computer Networks 93 (2015) 359–372   369

    time (hours)0 10 20 30 40 50 60

      a  c  c  u  m  u   l  a   t  e   d  s  e

      r  v   i  n  g  r  a   t  e

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1TFA (21 nodes)50 nodes100 nodes150 nodes200 nodes

    Fig. 21.   Accumulated serving rate with different topologies.

    topologies with different size (# of nodes)

    TFA (21) 50 100 150 200

       W   M   N  u   t   i   l   i  z  a   t   i  o  n

    0

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    Fig. 22.   WMN utilization with different topologies for60 h simulation time.

    topologies with different size (# of nodes)TFA (21) 50 100 150 200

      n  u  m   b  e  r  o   f  r  e  -  a  s  s   i  g  n  e

       d   f   l  o  w  s

    0

    500

    1000

    1500

    2000

    2500

    3000

    3500

    4000

    4500

    5000

    Fig. 23.   Number of re-assigned flows with differenttopologies for60 h sim-

    ulation time.

    Routing in WMN . There is a large body of work on rout-

    ing in WMN [20,21,25]. This diversity stems from the differ-

    ent optimization goals of routing protocols (e.g., low response

    time, low control overhead, scalability, QoS support). More

    specifically, WMN routing protocols can be classified into: (i)

    proactive (e.g., OLSR  [27], WRP [46], DSDV [48], B.A.T.M.A.N.

    [38]) where routes are computed in advance leading to lower

    response time at the cost of high routing control overhead,(ii) reactive (e.g.,  AODV [47], DSR) which provide routes on

    demand leading to lower control overhead, but higher re-

    sponse time, and (iii) hybrid (e.g., LQSR  [32] and SrcRR  [19])

    where both approaches (i.e., proactive and reactive) are com-

    bined to adjust the tradeoff between response time and con-

    trol overhead.

    Over the years, WMN routing protocols (e.g.,   AODV-ST,

    SrcRR, B.A.T.M.A.N.) have evolved to target particular chal-

    lenges or structures of WMNs. In particular, AODV-ST   [50]

    performs routing assuming a tree-based traffic flow, where a

    gateway residing at the root of the tree (Internet access gate-

    way) frequently requests routes to other nodes of the net-

    work. SrcRR computes routes taking into account the effectof interference on links quality. B.A.T.M.A.N. is another WMN

    routing protocol developed within the Freifunk community

    [6] to address the scalability limitations of the OLSR protocol

    and account for the static nature of WMNs.

    All these protocols can be integrated into our SDN archi-

    tecture for the selection of WMN paths between the home

    routers or as a fallback in case the connection between a

    router and its controller is lost. In our experimental evalu-

    ation, we rely on the WMN for the computation of routes be-

    tween the local and the remote gateway (i.e., since the WMN

    nodes do not support OpenFlow), while we use our algorithm

    for gateway selection whenever traffic redirection is needed.

    Our approach of coupling WMN routing protocols with SDNis also employed by authors in [28,29,62].

    Software-defined wireless networks. Recent work has been

    leveraging on SDN for WMN management. Hasan et al.  [36]

    discuss the benefits of using SDN to decouple the opera-

    tion and management of rural wireless networks from the

    physical infrastructure. Our work is in the same direction,

    but we focus on the management of crowd-shared WMN in

    residential areas and investigate techniques for the efficient

    utilization of the shared bandwidth. Authors in   [28,29,62]

    present OpenFlow-based architectures for WMNs with em-

    phasis on mobility management, routing, and load balanc-

    ing. Dimogerontakis et al.   [30] propose a SDN extension to

    WMN community networks for L2 experimentation. Otherapplications of SDN to the wireless network domain include

    OpenRoads  [63] and OpenSDWN [59], which propose solu-

    tions for mobility management using OpenFlow. These tech-

    niques are complimentary to our work and can be integrated

    into our SDN control plane to facilitate mobility management

    in crowd-shared WMNs. Furthermore, authors in [52] inves-

    tigate and evaluate the SDN control plane distribution for

    WMNs with emphasis on master controller selection. This

    can complement our work to provide higher resilience and

    SDN controller availability.

    Internet access sharing .FON   [5],   Kabel Deutschland (KD)

    [17],  Deutsche Telekom (DT)  [16]   and British Telecom (BT)

    [8]   are among the network operators that provide freeInternet access to their subscribers via a large number

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    12/14

    370   A. Abujoda et al. / Computer Networks 93 (2015) 359–372

    of shared hotspots. For example, BT and KD use Home

    Hub and homespot, respectively, for Internet access sharing

    with other subscribers. Furthermore, DT and BT have part-

    nered with FON to provide Internet access through shared

    home broadband connections. These efforts have also been

    supported by several affordable, easy-to-install and open-

    firmware wireless routers offered by manufacturers such as

    FON [9], openMesh [15], Linksys [13], and Netgear [14]. Ourapproach leverages on SDN to bring the following benefits to

    Internet access sharing: (i) reduction of operational expenses

    for home networks and ISPs, since the deployment, configu-

    ration, and operation of crowd-shared networks can be out-

    sourced to third-parties (i.e., virtual network operators), and

    (ii) better coordination of network configurations for traffic

    redirections, due to the global WMN view and the collection

    of all monitoring and sharing policy information in a central-

    ized controller.

    In addition, Link-alike  [40]   promotes sharing by aggre-

    gating the uplink bandwidth of the broadband connections

    through WMN, such that home users have access to higher

    upstream capacity. On the other hand, ARBOR [61] aggregatesbroadband connection bandwidth (both uplink and down-

    link) from multiple WiFi networks. We achieve the same goal

    (i.e., high utilization of the shared bandwidth) via guest traf-

    fic redirections through the WMN, enabling resource pooling

    from all shared broadband connections.

    7. Conclusions

    In this paper, we investigated the benefits of extending

    the coverage of any crowd-shared network (e.g.,  PAWS) by

    connecting the home routers as a mesh. A crowd-shared

    WMN can mitigate the fundamental problem of any crowd-

    shared network,   i.e.,   the presence of a single point of ac-cess for each guest. We showed that the advance knowl-

    edge of user sharing policies can reduce the number of guest

    flow redirections (particularly for low and moderate network

    loads) avoiding implications, such as packet reordering and

    control communication overhead. This leads to a significantly

    higher utilization of the shared bandwidth, as opposed to a

    crowd-shared network with a single point of access where a

    portion of the shared bandwidth is wasted. This, in turn, en-

    ables a software-defined crowd-shared WMN to accommo-

    date a substantially larger volume of guest traffic.

    SDN brings significant benefits to crowd-shared net-

    works, as all sharing policy and WMN utilization information

    can be conveyed to a centralized controller facilitating theassignment of guest flows to gateways and the traffic redirec-

    tion configurations in the WMN. In contrast, a decentralized

    crowd-shared WMN management would require synchro-

    nization primitives and could yield slow convergence, espe-

    cially at the event of message loss. Our experimental results

    show that our SDWMN control plane exhibits low per-flow

    setup time and low control communication overhead.

    Deploying a SDWMN in the real world raises challenges,

    such as the controller placement, control plane distribu-

    tion for robustness and load balancing, and SDN support

    SDN in home routers. We envision hosting the SDN con-

    troller as a virtual machine in micro-datacenters hosted by

    large ISPs [35].   Micro-data centers are small DCs deployedat POP and network aggregation points. By deploying the

    controller in micro-DCs we ensure low communication de-

    lay with the home routers and scalable processing power

    to cope with high loads (scale up the controller computa-

    tion capacity by using more servers). We can further leverage

    on several frameworks to distribute the control load across

    multiple servers, leading to faster response time and provid-

    ing a fallback controller in case of failure  [22,23,31,42,52]. In

    terms of SDN support in home networks, there are alreadyOpenFlow-based wireless routers (e.g.,  HP [11], Meru [12]).

    Furthermore, OpenFlow has been ported to OpenWRT [9,10],

    allowing wireless routers running OpenWRT to be configured

    using OpenFlow. This essentially facilitates the extension of 

    PAWS as a crowd-shared SDWMN, since PAWS already uses

    wireless routers with OpenWRT-based firmware.

    Content caching and the ever-growing penetration of on-

    line social networks (OSN) create for more opportunities

    in software-defined crowd-shared networks. More specifi-

    cally, popular content can be placed in caches within home

    networks, while the SDN controller can redirect guests to

    caches, conserving bandwidth in shared broadband connec-

    tions. Furthermore, information can be utilized from OSNsin order to associate and authenticate guests to access points

    that belong to their online friends, leveraging on the trust be-

    tween two parties with an OSN relationship [26]. In future

    work, we plan to investigate any potential benefits by cou-

    pling content caching and OSNs with crowd-shared WMNs.

     Acknowledgments

    This work was partially supported by the  EU CONFINE

    Project (288535). We thank Amr Rizk for his help in modeling

    the home router on/off periods.

    References

    [1]   http://www.nrl.navy.mil/itd/ncs/products/mgen (accessed 18.03.15).[2] CONFINE Project, http://confine-project.eu/ (accessed 18.03.15).[3] Community Lab, https://community-lab.net/ (accessed 18.03.15).

    [4]  http://www.awmn.net (accessed 18.03.15).[5] FON, http://corp.fon.com/ (accessed 18.03.15).[6] Freifunk, http://freifunk.net/ (accessed 18.03.15).[7] TFA Rice, http://tfa.rice.edu/ (accessed 18.03.15).[8]   http://www.btwifi.com/help/about-bt-fon.jsp (accessed 18.03.15).[9]  http://wiki.openwrt.org/toh/start (accessed 18.03.15).

    [10] http://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRT (accessed 18.03.15).

    [11] http://h17007.www1.hp.com/docs/campus-lan/c04219571-hires.pdf (accessed 18.03.15).

    [12]  http://www.merunetworks.com/collateral/white-papers/

    sdn-for-wifi-wp.pdf  (accessed 18.03.15).[13]  http://www.linksys.com/gb/c/wireless-routers/ (accessed 18.03.15).[14]  http://www.linksys.com/gb/c/wireless-routers/ (accessed 18.03.15).[15]   http://www.open-mesh.com/ (accessed 18.03.15).[16]   https://www.telekom.com/media/consumer-products/180150   (acces-

    sed 18.03.15).[17]   http://www.kabeldeutschland.de/wlan-hotspots/homespot-service.

    html (accessed 18.03.15).

    [18]   A. Abujoda, A. Sathiaseelan, A. Rizk, P. Papadimitriou, Software-definedcrowd-shared wireless mesh networks, in: IEEE International Work-shop on Community Networks and Bottom-up-Broadband(CNBuB2014), Larnaca , Cyprus, 2014.

    [19]  D. Aguayo, J. Bicket, R. Morris, 2003, SrcRR: A High-Throughput Rout-ing Protocol for 802.11 Mesh Networks. !http://pdos.csail.mit.edu/rtm/srcrr-draft.pdf ?

    [20]   I. Akyildiz, X. Wang, W. Wang, Wireless mesh networks: a survey,Com-put. Netw. 47 (4) (2005) 445–487.

    [21]   E. Alotaibi, B. Mukherjee, A survey on routing algorithms for wirelessad-hoc and mesh networks, Comput. Netw. 56 (2012) 940–965.

    http://dx.doi.org/10.13039/501100001809http://dx.doi.org/10.13039/501100001809http://dx.doi.org/10.13039/501100001809http://dx.doi.org/10.13039/501100001809http://www.nrl.navy.mil/itd/ncs/products/mgenhttp://confine-project.eu/https://community-lab.net/http://www.awmn.net/http://corp.fon.com/http://freifunk.net/http://tfa.rice.edu/http://www.btwifi.com/help/about-bt-fon.jsphttp://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRThttp://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRThttp://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRThttp://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRThttp://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRThttp://h17007.www1.hp.com/docs/campus-lan/c04219571-hires.pdfhttp://www.merunetworks.com/collateral/white-papers/sdn-for-wifi-wp.pdfhttp://www.merunetworks.com/collateral/white-papers/sdn-for-wifi-wp.pdfhttp://www.merunetworks.com/collateral/white-papers/sdn-for-wifi-wp.pdfhttp://www.merunetworks.com/collateral/white-papers/sdn-for-wifi-wp.pdfhttp://www.linksys.com/gb/c/wireless-routers/http://www.linksys.com/gb/c/wireless-routers/http://www.open-mesh.com/https://www.telekom.com/media/consumer-products/180150http://www.kabeldeutschland.de/wlan-hotspots/homespot-service.htmlhttp://www.kabeldeutschland.de/wlan-hotspots/homespot-service.htmlhttp://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://pdos.csail.mit.edu/rtm/srcrr-draft.pdfhttp://pdos.csail.mit.edu/rtm/srcrr-draft.pdfhttp://pdos.csail.mit.edu/rtm/srcrr-draft.pdfhttp://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0003http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0003http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0003http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0003http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0003http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0003http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0002http://pdos.csail.mit.edu/rtm/srcrr-draft.pdfhttp://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0001http://www.kabeldeutschland.de/wlan-hotspots/homespot-service.htmlhttps://www.telekom.com/media/consumer-products/180150http://www.open-mesh.com/http://www.linksys.com/gb/c/wireless-routers/http://www.linksys.com/gb/c/wireless-routers/http://www.merunetworks.com/collateral/white-papers/sdn-for-wifi-wp.pdfhttp://h17007.www1.hp.com/docs/campus-lan/c04219571-hires.pdfhttp://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1.0_for_OpenWRThttp://wiki.openwrt.org/toh/starthttp://www.btwifi.com/help/about-bt-fon.jsphttp://tfa.rice.edu/http://freifunk.net/http://corp.fon.com/http://www.awmn.net/https://community-lab.net/http://confine-project.eu/http://www.nrl.navy.mil/itd/ncs/products/mgenhttp://dx.doi.org/10.13039/501100001809

  • 8/16/2019 Abujoda Et Al. - 2015 - Software-Defined Wireless Mesh Networks for Internet Access Sharing

    13/14

     A. Abujoda et al. / Computer Networks 93 (2015) 359–372   371

    [22]   Z. Bozakov, P. Papadimitriou, Autoslice: automated and scalable slicingfor software-defined networks, in: Proceedings of the 2012 ACM Con-ference on CoNEXTStudent Workshop, CoNEXTStudent 12, ACM, 2012,p. 34.New York, NY, USA,

    [23]   Z. Bozakov, P. Papadimitriou, Towards a scalable software-defined net-work virtualization platform, in: Proceedings of the IEEE/IFIP SDNMO

    2014, Krakow, Poland, 2014.[24]   B. Braem, et al., A Case for Research with and on community networks,

    ACM SIGCOMM CCR 43 (3) (2013).[25]   M.E.M. Campista, et al., Routing metrics and protocols for wireless

    mesh networks, IEEE Netw. 22 (1) (2008) 6–12.[26]  Z. Cao, J. Fitschen, P. Papadimitriou, Social WiFi: hotspot sharing with

    online friends, in: Proceedings of the IEEE PIMRC, Hong Kong, China,2015.

    [27] T. Clausen, P. Jacquet, 2003, Optimized Link State Routing Protocol(OLSR),RFC 3626 (Experimental), I ETF.

    [28]   P. Dely, A. Kassler, N. Bayer, Openflow for wireless mesh networks, in:Proceedings of the IEEE ICCCN, Maui, USA, 2011.

    [29]   A. Detti, C. Pisa, S. Salsano, N. Blefari-Melazzi, Wireless Mesh softwaredefined networks (wmSDN), in: Proceedings of the CNBuB Workshopat IEEE WiMob, France, Lyon, 7, 2013.

    [30] E. Dimogerontakis, I. Vilata, L. Navarro, Software defined networkingfor community network testbeds, in: Proceedings of the IEEE WiMob,2013.

    [31]   A. Dixit, F. Hao, S. Mukherjee, T.V. Lakshman, R. Kompella, Towards

    an elastic distributed SDN controller, in: Proceedings of the ACM SIG-COMM Workshop on Hot Topics in Software Defined Networking,HotSDN, 2013.

    [32]  R. Draves, J. Padhye, B. Zill, Routing in multi-radio, multi-hop wirelessmesh networks, in: Proceedings of the ACM International Conferenceon Mobile Computing and Networking (MobiCom), 2004, pp. 114–128.

    [33]   S. Even, A. Itai, A. Shamir, On the complexity of timetable and multi-commodity flow problems, SIAM J. Comput. 5 (1976) 691–703.

    [34] J. Fildes, 2010, UN reveals global disparity in broadband access, BBC,http://www.bbc.co.uk/news/technology-11162656 .

    [35]   B. Frank, I. Poese, G. Smaragdakis, A. Feldmann, B. Maggs, S. Uhlig,V. Aggarwal, F. Schneider, Collaboration opportunities for content de-livery and network infrastructures, in: H. Haddadi, O. Bonaventure(Eds.), ACM SIGCOMM ebook on Recent Advances in Networking, 2013,pp. 305–377.

    [36]  S. Hasan, Y. Ben-David, C. Scott, E. Brewer, S. Shenker, Enhancing ruralconnectivity with software defined networks, in: Proceedings of theAnnual Symposium on Computing for Development ACM DEV, New

    York, NY, USA, 2013.[37]   N. Hu, P. Steenkiste, Evaluation and characterization of available band-

    width probing techniques, in: Proceedings of the IEEE JSAC, 2003.[38] D. Johnson, N. Ntlatlapa, C. Aichele, Simplepragmatic approachto mesh

    routing using batman, in: Proceedings of the 2nd IFIP InternationalSymposium on Wireless Communications and Information Technologyin Developing Countries,CSIR, Pretoria,South Africa, 6–7 October 2008,2008.

    [39] M. Jain, C. Dovrolis,Pathload:A measurement tool forend-to-end avail-able bandwidth, in: Proceedings of the Passive and Active Measure-ments (PAM) Workshop, 2002.

    [40]  S. Jakubczak, D. Andersen, M. Kaminsky, K. Papagiannaki, S. Seshan,Link-alike: using wireless to share network resources in a neighbor-hood, in: MC2R, 2008.

    [41]   E. Kohler, R. Morris, B. Chen, J. Jahnotti, M.F. Kasshoek, The Click Mod-ular Router, ACM Trans. Comput. Syst. 18 (3) (2000).

    [42]   T. Koponen, M. Casado, N. Gude, J. Stribling, L. Poutievski, M. Zhu, R. Ra-manathan, Y. Iwata, H. Inouye, T. Hama, S. Shenker, Onix: a distributed

    control platform for,large-scale production networks, in: OperatingSystems, Design and Implementation, USENIX association, 2010.

    [43]   N. McKeown, et al., OpenFlow: enabling innovation in campus net-works, ACM SIGCOMM CCR 38 (2) (2008).

    [44]  B. Melander, M. Bjorkman, P. Gunningberg, A new end-to-end prob-ing and analysis method for estimatingbandwidth bottlenecks, in: Pro-ceedings of the Global Internet Symposium, 2000.

    [45]  B. Milic, M. Malek, NPART - Node Placement Algorithm for RealisticTopologies in Wireless Multihop Network Simulation, in: Proceedingsof the 2nd International Conference on Simulation Tools and Tech-niques, 2009.

    [46]   S. Murthy, J.J. Garcia-Luna-Aveces, An efficient routing protocol forwireless networks, ACM/Baltzer Journal on Mobile Networks and Ap-plications, Spec. Issue Routing Mob. Commun. Netw. 1 (2) (1996) 183–197.

    [47]   C. Perkins, E. Belding-Royer, S. Das, Ad hoc on-demand distance vector(AODV) routing, in: RFC 3561 (Experimental)„ IETF, 20 03.

    [48]   C.E. Perkins, P. Bhagwat, Highly dynamic destination sequenceddistance-vector routing (DSDV) for mobile computers, in: Proceedingsof the Annual ACM Special Interest Group on Data Communications(SIGCOMM94), 1994, pp. 234–244.

    [49]   B. Pfaff, J. Pettit, T. Koponen, K. Amidon, M. Casado, S. Shenker, Ex-tending networkinginto the virtualization layer, in: ACM HotNets, New

    York, USA, ACM, 2009.[50]   K.N. Ramachandran, M.M. Buddhikot, G. Chandranmenon, S. Miller,

    E.M. Belding-Royer, K.C. Almeroth, On the design and implementationof infrastructure mesh networks, in:Proceedingsof theIEEE Workshopon Wireless Mesh Networks (WiMesh), IEEE, 2005.

    [51] J. Saldana, et al., 2014, Community Networks:Definition and taxonomy,Internet Draft.

    [52] S. Salsano, G. Siracusano,A. Detti, C. Pisa, P.L. Ventre, N. Blefari-Melazzi,Controller selection in a Wireless Mesh SDN under network partition-ing and merging scenarios, submitted paper, available at  http://arxiv.org/abs/1406.2470.

    [53]  A. Sathiaseelan, et al., Public access WiFi service (PAWS), in: DigitalEconomy All Hands Meeting, Digital Futures, Aberdeen, 2012.

    [54]   A. Sathiaseelan, C. Rotsos, C.S. Sriram, D. Trossen, P. Papadimitriou, J. Crowcroft, Virtual public networks, in: Proceedings of the IEEE Eu-ropean Workshop on Software Defined Networks EWSDN, Berlin, Ger-many, 2013.

    [55]   A. Sathiaseelan, J. Crowcroft, Internet on the move: challenges and so-lutions, ACM SIGCOMM CCR 43 (1) (2013).

    [56]   A. Sathiaseelan, T. Radzik, Reorder detecting TCP, in: Proceedings of theIEEE International Conference on HSNMC, Estoril, Portugal, 2003.

    [57]   A. Sathiaseelan, T. Radzik, Reorder notifying TCP (RN-TCP) with ex-plicit packet drop notification (EPDN), Int. J. Commun. Syst. 19 (6)(2005).Wiley

    [58]   A. Sathiaseelan, J. Crowcroft, LCD-Net: lowest cost denominator net-working, ACM SIGCOMM CCR 43 (2) (2013).

    [59]   J. Schulz-Zander, C. Mayer, B. Ciobotaru, S. Schmid, A. Feldmann,OpenSDWN: programmatic control over home and enterprise WiFi, in:Proceedings of the ACM SIGCOMM SOSR, Santa Clara, CA, USA, 2015.

    [60]   L. Townsend, A. Sathiaseelan, G. Fairhurst, C. Wallace, Enhanced broad-band access as a solution to the social and economic problems of therural digital divide, J. Local Econ. 28 (6) (2013).

    [61]   X. Xing, S. Mishra, X. Liu, ARBOR: hang together rather than hang sep-arately in 802.11 wifi networks, in: Proceedings of the IEEE INFOCOM,2010, 2010, pp. 1–9.IEEE

    [62]   F. Yang, V. Gondi, J.O. Hallstrom, K. Wang, G. Eidson, OpenFlow-basedload balancing for wireless mesh infrastructure, in: Proceedings of the

    IEEE Consumer Communications and Networking Conference, CCNC,Las Vegas, 2014.

    [63]   K. Yap,et al., OpenRoads: empowering research in mobilenetworks, in:Proceedings of the ACM SIGCOMM, Barcelona, Spain, 2009.

     Ahmed Abujoda   graduated in electrical engi-neering from the university of Sana’a, Yemen, in2004. He also obtained a master of science de-greein Mechatronics engineeringfrom Universityof Siegen, Germany, in 2009. Since 2010, he hasbeen working towards the Ph.D. degree in elec-trical and computer engineering at the Institutefor Communications Technology at the LeibnizUniversitt Hannover,Germany. His researchinter-ests include software-defined networking, net-work function virtualization and network man-

    agement. Ahmed Abujodais a studentmember of IEEE.

    David Dietrich  graduated in electrical engineer-ing from the Universitt Kassel, Germany, in 2006.During the years 2006 until 2009 he was a soft-ware engineer for real-time simulation of auto-motive communications networks. Since 2010, hehas been working towards the Ph.D. degree inelectrical and computer engineering at the Insti-tute for Communications Technology at the Leib-niz Universitt Hannover,Germany. He also partic-ipated in several research projects, e.g., the EU-funded T-NOVA project and the national projectG-Lab. His research interests include network vir-tualization and network management with focus

    on algorithms and optimization. David Dietrich is a student member of IEEEand ACM.

    http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0004http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0004http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0004http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0004http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0005http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0005http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0005http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0005http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0005http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0006http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0006http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0006http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0007http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0007http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0007http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0008http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0008http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0008http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0008http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0008http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0009http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0009http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0009http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0010http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0010http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0010http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0010http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0010http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0011http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0011http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0011http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0011http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0011http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0012http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0012http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0012http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0012http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0013http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0013http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0013http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0013http://www.bbc.co.uk/news/technology-11162656http://www.bbc.co.uk/news/technology-11162656http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0014http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0014http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0014http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0014http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0014http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0015http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0015http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0015http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0015http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0015http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0016http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0016http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0016http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0022http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0022http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0022http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0027http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0027http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0027http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://arxiv.org/abs/1406.2470http://arxiv.org/abs/1406.2470http://arxiv.org/abs/1406.2470http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0032http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0032http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0033http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0033http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0034http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0034http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0034http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0035http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0035http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0035http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0040http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0040http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0040http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0040http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0040http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0040http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0039http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0038http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0037http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0036http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0035http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0035http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0035http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0034http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0034http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0034http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0033http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0033http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0033http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0032http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0032http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0032http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0031http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0030http://arxiv.org/abs/1406.2470http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0029http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0028http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0027http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0027http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0027http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0026http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0025http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0024http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0023http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0022http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0022http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0022http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0021http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0020http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0019http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0018http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1389-1286(15)00318-7/sbref0017http://refhub.elsevier.com/S1