2 research outputs found

    Mobility models, mobile code offloading, and p2p networks of smartphones on the cloud

    Get PDF
    It was just a few years ago when I bought my first smartphone. And now, (almost) all of my friends possess at least one of these powerful devices. International Data Corporation (IDC) reports that smartphone sales showed strong growth worldwide in 2011, with 491.4 million units sold – up to 61.3 percent from 2010. Furthermore, IDC predicts that 686 million smartphones will be sold in 2012, 38.4 percent of all handsets shipped. Silently, we are becoming part of a big mobile smartphone network, and it is amazing how the perception of the world is changing thanks to these small devices. If many years ago the birth of Internet enabled the possibility to be online, smartphones nowadays allow to be online all the time. Today we use smartphones to do many of the tasks we used to do on desktops, and many new ones. We browse the Internet, watch videos, upload data on social networks, use online banking, find our way by using GPS and online maps, and communicate in revolutionary ways. Along with these benefits, these fancy and exciting devices brought many challenges to the research area of mobile and distributed systems. One of the first problems that captured our attention was the study of the network that potentially could be created by interconnecting all the smartphones together. Typically, these devices are able to communicate with each other in short distances by using com- munication technologies such as Bluetooth or WiFi. The network paradigm that rises from this intermittent communication, also known as Pocket Switched Network (PSN) or Opportunistic Network ([10, 11]), is seen as a key technology to provide innovative services to the users without the need of any fixed infrastructure. In PSNs nodes are short range communicating devices carried by humans. Wireless communication links are created and dropped in time, depending on the physical distance of the device holders. From one side, social relations among humans yield recurrent movement patterns that help researchers design and build protocols that efficiently deliver messages to destinations ([12, 13, 14] among others). The complexity of these social relations, from the other side, makes it difficult to build simple mobility models, that in an efficient way, generate large synthetic mobility traces that look real. Traces that would be very valuable in protocol validation and that would replace the limited experimentally gathered data available so far. Traces that would serve as a common benchmark to researchers worldwide on which to validate existing and yet to be designed protocols. With this in mind we start our study with re-designing SWIM [15], an already exist- ing mobility model shown to generate traces with similar properties of that of existing real ones. We make SWIM able to easily generate large (small)-scale scenarios, starting from known small (large)-scale ones. To the best of our knowledge, this is the first such study. In addition, we study the social aspects of SWIM-generated traces. We show how to SWIM-generate a scenario in which a specific community structure of nodes is required. Finally, exploiting the scaling properties of SWIM, we present the first analysis of the scal- ing capabilities of several forwarding protocols such as Epidemic [16], Delegation [13], Spray&Wait [14], and BUBBLE [12]. The first results of these works appeared in [1], and, at the time of writing, [2] is accepted with minor revision. Next, we take into account the fact that in PSNs cannot be assumed full cooperation and fairness among nodes. Selfish behavior of individuals has to be considered, since it is an inherent aspect of humans, the device holders (see [17], [18]). We design a market-based mathematical framework that enables heterogeneous mobile users in an opportunistic mobile network to compromise optimally and efficiently on their QoS 3 demands. The goal of the framework is to satisfy each user with its achieved (lesser) QoS, and at the same time maximize the social welfare of users in the network. We base our study on the consideration that, in practice, users are generally tolerant on accepting lesser QoS guarantees than what they demand, with the degree of tolerance varying from user to user. This study is described in details in Chapter 2 of this dissertation, and is included in [3]. In general, QoS could be parameters such as response time, number of computations per unit time, allocated bandwidth, etc. Along the way toward our study of the smartphone-world, there was the big advent of mobile cloud computing—smartphones getting help from cloud-enabled services. Many researchers started believing that the cloud could help solving a crucial problem regarding smartphones: improve battery life. New generation apps are becoming very complex — gaming, navigation, video editing, augmented reality, speech recognition, etc., — which require considerable amount of power and energy, and as a result, smartphones suffer short battery lifetime. Unfortunately, as a consequence, mobile users have to continually upgrade their hardware to keep pace with increasing performance requirements but still experience battery problems. Many recent works have focused on building frameworks that enable mobile computation offloading to software clones of smartphones on the cloud (see [19, 20] among others), as well as to backup systems for data and applications stored in our devices [21, 22, 23]. However, none of these address dynamic and scalability features of execution on the cloud. These are very important problems, since users may request different computational power or backup space based on their workload and deadline for tasks. Considering this and advancing on previous works, we design, build, and implement the ThinkAir framework, which focuses on the elasticity and scalability of the server side and enhances the power of mobile cloud computing by parallelizing method execution using multiple Virtual Machine (VM) images. We evaluate the system using a range of benchmarks starting from simple micro-benchmarks to more complex applications. First, we show that the execution time and energy consumption decrease two orders of magnitude for the N-queens puzzle and one order of magnitude for a face detection and a virus scan application, using cloud offloading. We then show that a parallelizable application can invoke multiple VMs to execute in the cloud in a seamless and on-demand manner such as to achieve greater reduction on execution time and energy consumption. Finally, we use a memory-hungry image combiner tool to demonstrate that applications can dynamically request VMs with more computational power in order to meet their computational requirements. The details of the ThinkAir framework and its evaluation are described in Chapter 4, and are included in [6, 5]. Later on, we push the smartphone-cloud paradigm to a further level: We develop Clone2Clone (C2C), a distributed platform for cloud clones of smartphones. Along the way toward C2C, we study the performance of device-clones hosted in various virtualization environments in both private (local servers) and public (Amazon EC2) clouds. We build the first Amazon Customized Image (AMI) for Android-OS—a key tool to get reliable performance measures of mobile cloud systems—and show how it boosts up performance of Android images on the Amazon cloud service. We then design, build, and implement Clone2Clone, which associates a software clone on the cloud to every smartphone and in- terconnects the clones in a p2p fashion exploiting the networking service within the cloud. On top of C2C we build CloneDoc, a secure real-time collaboration system for smartphone users. We measure the performance of CloneDoc on a testbed of 16 Android smartphones and clones hosted on both private and public cloud services and show that C2C makes it possible to implement distributed execution of advanced p2p services in a network of mobile smartphones. The design and implementation of the Clone2Clone platform is included in [7], recently submitted to an international conference. We believe that Clone2Clone not only enables the execution of p2p applications in a network of smartphones, but it can also serve as a tool to solve critical security problems. In particular, we consider the problem of computing an efficient patching strategy to stop worm spreading between smartphones. We assume that the worm infects the devices and spreads by using bluetooth connections, emails, or any other form of communication used by the smartphones. The C2C network is used to compute the best strategy to patch the smartphones in such a way that the number of devices to patch is low (to reduce the load on the cellular infrastructure) and that the worm is stopped quickly. We consider two well defined worms, one spreading between the devices and one attacking the cloud before moving to the real smartphones. We describe CloudShield [8], a suite of protocols running on the peer-to-peer network of clones; and show by experiments with two different datasets (Facebook and LiveJournal) that CloudShield outperforms state-of-the-art worm-containment mechanisms for mobile wireless networks. This work is done in collaboration with Marco Valerio Barbera, PhD colleague in the same department, who contributed mainly in the implementation and testing of the malware spreading and patching strategies on the different datasets. The communication between the real devices and the cloud, necessary for mobile com- putation offloading and smartphone data backup, does certainly not come for free. To the best of our knowledge, none of the works related to mobile cloud computing explicitly studies the actual overhead in terms of bandwidth and energy to achieve full backup of both data/applications of a smartphone, as well as to keep, on the cloud, up-to-date clones of smartphones for mobile computation offload purposes. In the last work during my PhD—again, in collaboration with Marco Valerio Barbera—we studied the feasibility of both mobile computation offloading and mobile software/data backup in real-life scenarios. This joint work resulted in a recent publication [9] but is not included in this thesis. As in C2C, we assume an architecture where each real device is associated to a software clone on the cloud. We define two types of clones: The off-clone, whose purpose is to support computation offloading, and the back-clone, which comes to use when a restore of user’s data and apps is needed. We measure the bandwidth and energy consumption incurred in the real device as a result of the synchronization with the off-clone or the back-clone. The evaluation is performed through an experiment with 11 Android smartphones and an equal number of clones running on Amazon EC2. We study the data communication overhead that is necessary to achieve different levels of synchronization (once every 5min, 30min, 1h, etc.) between devices and clones in both the off-clone and back-clone case, and report on the costs in terms of energy incurred by each of these synchronization frequencies as well as by the respective communication overhead. My contribution in this work is focused mainly on the experimental setup, deployment, and data collection

    H3N - Analysewerkzeuge für hybride Wegewahl in heterogenen, unterbrechungstoleranten Ad-Hoc-Netzen für Rettungskräfte

    Get PDF
    Rettungskräfte müssen unter widrigen Bedingungen zuverlässig kommunizieren können, um in Rettungseinsätzen effizient arbeiten zu können und somit Leben zu retten. Idealerweise ist dazu ein selbstorganisiertes Ad-Hoc-Netz notwendig, weil die Kommunikationsinfrastruktur ggf. beschädigt oder überlastet sein kann. Um die geforderte Robustheit der Kommunikation auch in Szenarien mit größeren zu überbrückenden Entfernungen zu gewährleisten, werden zusätzlich Mechanismen benötigt, die eine Unterbrechungstoleranz ermöglichen. Verzögerungstolerante Netze (engl. Delay Tolerant Networks, kurz: DTN) stellen solche Mechanismen bereit, erfordern aber zusätzliche Verzögerungen, die für Rettungskommunikation nachteilig sind. Deshalb werden intelligente hybride Wegewahlverfahren benötigt, um die Verzögerung durch DTN-Mechanismen zu begrenzen. Außerdem sollten entsprechende Verfahren heterogene Netze unterstützen. Das ermöglicht zusätzlich eine effizientere Weiterleitung durch die Nutzung von Geräten mit unterschiedlichen Kommunikationstechnologien und damit auch Reichweiten. Um solche Systeme und die dafür benötigten Kommunikationsprotokolle zu entwickeln, werden verschiedene Analysewerkzeuge genutzt. Dazu gehören analytische Modelle, Simulationen und Experimente auf der Zielsystemhardware. Für jede Kategorie gibt es verschiedene Werkzeuge und Frameworks, die sich auf unterschiedliche Aspekte fokussieren. Dadurch unterstützen diese herkömmlichen Analysemethoden jedoch meistens nur einen der oben genannten Punkte, während die Untersuchung von hybriden und/oder heterogenen Ansätzen und Szenarien nicht ohne weiteres möglich ist. Im Falle von Rettungskräften kommt hinzu, dass die charakteristischen Merkmale hinsichtlich der Bewegung der Knoten und des erzeugten Datenverkehrs während eines Einsatzes ebenfalls nicht modelliert werden können. In dieser Arbeit werden deshalb verschiedene Erweiterungen zu existierenden Analysewerkzeugen sowie neue Werkzeuge zur Analyse und Modelle zur Nachbildung realistischer Rettungsmissionen untersucht und entwickelt. Ziel ist es, die Vorteile existierender Werkzeuge miteinander zu kombinieren, um ganzheitliche, realitätsnahe Untersuchungen von hybriden Protokollen für heterogene Netze zu ermöglichen. Die Kombination erfolgt in Form von gezielten Erweiterungen und der Entwicklung ergänzender komplementärer Werkzeuge unter Verwendung existierender Schnittstellen. Erste Ergebnisse unter Verwendung der entwickelten Werkzeuge zeigen Verbesserungspotentiale bei der Verwendung traditioneller Protokolle und erlauben die Bewertung zusätzlicher Maßnahmen, um die Kommunikation zu verbessern. Szenarien zur Kommunikation von Rettungskräften werden dabei als ein Beispiel verwendet, die Tools sind jedoch nicht auf die Analyse dieses Anwendungsfalls beschränkt. Über die reine Analyse verschiedener existierender Ansätze hinaus bildet die entwickelte Evaluationsumgebung eine Grundlage für die Entwicklung und Verifikation von neuartigen hybriden Protokollen für die entsprechenden Systeme.Communication between participating first responders is essential for efficient coordination of rescue missions and thus allowing to save human lives. Ideally, ad hoc-style communication networks are applied to this as the first responders cannot rely on infrastructure-based communication for two reasons. First, the infrastructure could be damaged by the disastrous event or not be available for economic reasons. Second, even if public infrastructure is available and functional, it might be overloaded by users. To guarantee the robustness and reliability requirements of first responders, the Mobile Ad Hoc Networks (MANETs) have to be combined with an approach to mitigate intermittent connectivity due to otherwise limited connectivity. Delay Tolerant Networks (DTNs) provide such a functionality but introduce additional delay which is problematic. Therefore, intelligent hybrid routing approaches are required to limit the delay introduced by DTN mechanisms. Besides that, the approach should be applicable to heterogeneous networks in terms of communication technologies and device capabilities. This is required for cross multi-agency and volunteer communication but also enables the opportunistic exploitation of any given communication option. To evaluate such systems and develop the corresponding communication protocols, various tools for the analysis are available. This includes analytical models, simulations and real-world experiments on target hardware. In each category a wide set of tools is available already. However, each tool is focused on specific aspects usually and thus does not provide methods to analyze hybrid approaches out of the box. Even if the tools are modular and allow an extension, there are often other tools that are better suited for partial aspects of hybrid systems. In addition to this, few tools exist to model the characteristics of first responder networks. Especially the generalized movement during missions and the generated data traffic are difficult to model and integrate into analyses. The focus of this project is therefore to develop selected extensions to existing analysis and simulation tools as well as additional tools and models to realistically capture the characteristics of first responder networks. The goal is to combine the advantages of existing specialized simulation tools to enable thorough evaluations of hybrid protocols for heterogeneous networks based on realistic assumptions. To achieve this, the tools are extended by specifically designing tools that enable the interaction between tools and new tools that complement the existing analysis capabilities. First results obtained via the resulting toolbox clearly indicate further research directions as well as a potential for protocol enhancements. Besides that, the toolbox was used to evaluate various methods to enhance the connectivity between nodes in first responder networks. First responder scenarios are used as an example here. The toolbox itself is however not limited to this use case. In addition to the analysis of existing approaches for hybrid and heterogeneous networks, the developed toolbox provides a base framework for the development and verification of newly developed protocols for such use cases
    corecore