Title data
Ferber, Marvin:
Bedarfsgerechte Auswahl der Dienstqualität für Mobile Cloud-unterstützte Anwendungen.
Bayreuth
,
2014
. - X, 211 P.
(
Doctoral thesis,
2014
, University of Bayreuth, Faculty of Mathematics, Physics and Computer Sciences)
|
|||||||||
Download (11MB)
|
Abstract
Mobilgeräte wie Smartphones, Tablets und kleine Laptops finden immer größere Verbreitung. Dadurch wächst auch der Bedarf an mobil genutzten Applikationen. Aufgrund der zugunsten der Batterielaufzeit eingeschränkten Ressourcen können jedoch berechnungsintensive Anwendungen auf diesen Mobilgeräten nur schwer realisiert werden. Eine mögliche Lösung ist die Anwendung von Cloud-Ressourcen zur zeitlich begrenzten Unterstützung solcher Applikationen. Cloud Computing hat sich in letzter Zeit immer mehr etabliert und meint unter anderem das Mieten von Rechnern auf feingranularer zeitlicher Basis nach dem Selbstbedienungsprinzip (Infrastructure as a Service (IaaS)). Darauf aufbauende Plattform-Dienste (Platform as a Service (PaaS)) führen Programmcode der Applikationen (Software as a Service (SaaS)) aus. Bei SaaS handelt es sich um einer Art Software, die zeitlich flexibel via Internet genutzt wird. In der Literatur vorgestellte Ansätze zur Anwendung von Cloud Computing zur Unterstützung mobiler Applikationen lassen jedoch häufig die für Cloud-Ressourcen anfallenden Kosten außer Acht und beachten die teils stark schwankende mobile Netzwerkperformance nicht. Ziel dieser Arbeit ist darum die Erforschung von Techniken zur bedarfsgerechten Bereitstellung von Compute-Ressourcen für mobil genutzte Anwendungen unter Beachtung situationsbezogener Eigenschaften. Es wird eine Middleware für Java vorgestellt, die auf der PaaS-Schicht angesiedelt ist und die die Cloud-unterstützte Ausführung mobiler Anwendungen via Code-Offloading ermöglicht. Dabei wird vormals lokal ausgeführter Programmcode zur Laufzeit zu einem Server übertragen und anschließend dort ausgeführt. Im Gegensatz zu anderen Middlewares ist es hier möglich, die Qualität der zu verwendenden Cloud-Ressource zur Laufzeit auszuwählen. Dazu ist es notwendig, die verfügbare Netzwerkperformance und die erwartete Ausführungszeit der mobilen Applikation zu prognostizieren. Zunächst wird die Netzwerkperformance von 3G-Mobilfunk und WLAN untersucht. Danach wird ein Pipelining-basiertes Kommunikationsprotokoll erarbeitet, welches die Gesamtperformance und die Vorhersagbarkeit der erreichbaren Datenübertragungsrate verbessert. Zur Laufzeitprognose werden durch Regressionsanalyse Applikationsprofile erstellt, die auf Monitoring-Daten basieren, die die Middleware für jede Anwendung sammelt. Über die API der Middleware kann dann in Abhängigkeit situationsbezogener Parameter (Netzwerkperformance und Eingabedaten) eine bedarfsgerechten Auswahl an Cloud-Ressourcen präsentiert werden. Da nicht für jede Anwendung Applikationsprofile erstellt werden können, wird eine Kategorisierung mobiler Anwendungen in taugliche und untaugliche Applikationstypen erarbeitet. Da die Middleware auf IaaS-Ressourcen eines Cloud-Anbieters basiert, werden Lastbalancierungsstrategien analysiert, die eine optimale Auslastung der Ressourcen bei gleichzeitig konstanter Performance für alle Nutzer garantierten. Hierfür werden Simulationen zum Verhalten der Strategien auf einer IaaS-Cloud durchgeführt. Die Evaluation der prototypischen Implementierung der Middleware und insbesondere der Güte der vorhergesagten Performance wird anhand realer Applikationen durchgeführt. Dazu wird die Raytracing-Funktionalität zur Erstellung fotorealistischer Bilder einer 3D-Hausdesignsoftware und eine Applikation zur fortlaufenden Kamerabildverarbeitung auf Smartphones genutzt. Die erzielten Ergebnisse unter Benutzung von WLAN und 3G-Netzwerken zeigen, dass eine sinnvolle Auswahl passender Ressourcentypen zur Laufzeit nicht nur möglich, sondern auch wichtig ist, um für den Nutzer unnötige Kosten aufgrund unzureichend ausgelasteter Cloud-Ressourcen zu vermeiden.
Abstract in another language
Mobile devices such as Smartphones and Tablets are becoming more and more popular. As a result, the need for mobile applications also grows. Because of the limited resources of such battery-powered devices, compute-intensive applications can hardly be executed on them. One solution to overcome this restriction is the time-limited use of cloud resources to assist mobile applications on demand. Cloud Computing has emerged in the past years. It includes the rental of compute resources on a fine-grained timely basis using self-service. This is known as Infrastructure-as-a-Service (IaaS). On top of this, a Platform-as-a-Service (PaaS) is set up that hosts the application code of Software-as-a-Service (SaaS). SaaS is a kind of software that is used via Internet and that is billed on a timely flexible model, e.g., the pay-per-use model. The use of Cloud Computing to assist mobile application has been proposed in the literature already. However, the cost for cloud usage and the influence of the current mobile network performance are often not discussed. Consequently, this work aims at the provision of cloud resources to assist mobile applications in accordance with the current Quality of Service (QoS) demands of the user. To achieve this goal, the performance of 3G and WLAN network connections is studied in a first step. Based on the results, a novel communication protocol is developed, which uses pipelining. This protocol achieves a better overall communication performance and a better predictability of the throughput in contrast to widely used protocols such as HTTP. Furthermore, a middleware for Java is presented, which supports the execution of cloud-assisted mobile application. The middleware is located at the PaaS layer. Code-Offloading is used to execute formerly locally executed program code on a remote server. This requires to transfer and install program code to the server at runtime. The middleware manages a pool of cloud resources from an IaaS provider. Thus, load-balancing and strategies for reuse are analysed in order to maximize resource usage while assuring a constant performance for each user. This analysis is done via simulation, which is based on parameters from an existing cloud environment. It is possible to select the quality of the underlying resources for a cloud-assisted mobile application at runtime. To facilitate the decision, a runtime prediction of the expected performance is done for available cloud resources. The prediction is based on monitoring data collected by the middleware for each application. A profile is created for each application using regression analysis. A common API is used to calculate cloud options at runtime in accordance with the current network performance and current input data. Applications are categorized in order to identify suitable applications that can be equipped with such a runtime prediction. The quality of the prediction is evaluated using real applications. A software for ray tracing of photo-realistic images of a 3D home designer and a software for streaming image processing of camera pictures on an Android device are used. Results show that a reasonable selection of resource types can be presented at runtime using 3G and WLAN mobile network configurations. Moreover, it is necessary to review the available options carefully in order to avoid monetary overhead for the user, which may be caused by inefficiently utilized cloud resources.
Further data
Item Type: | Doctoral thesis (No information) |
---|---|
Keywords: | Cloud Computing; Mobile Computing; Quality of Service; Wireless Networks; Distributed Applications; Middleware |
DDC Subjects: | 000 Computer Science, information, general works > 004 Computer science |
Institutions of the University: | Faculties Faculties > Faculty of Mathematics, Physics und Computer Science Faculties > Faculty of Mathematics, Physics und Computer Science > Department of Computer Science Faculties > Faculty of Mathematics, Physics und Computer Science > Department of Computer Science > Chair Applied Computer Science II Faculties > Faculty of Mathematics, Physics und Computer Science > Department of Computer Science > Chair Applied Computer Science II > Chair Applied Computer Science II - Univ.-Prof. Dr. Thomas Rauber |
Language: | German |
Originates at UBT: | Yes |
URN: | urn:nbn:de:bvb:703-epub-1724-7 |
Date Deposited: | 25 Aug 2014 10:40 |
Last Modified: | 25 Aug 2014 10:40 |
URI: | https://epub.uni-bayreuth.de/id/eprint/1724 |