People

Zola Mahlaza
Jarvis Mutakha

Supervisors

Professor E. Blake
Thomas Reitmaier
Pierre Benz

Components

Cloudlet platform
Android application

Downloads

Jarvis' Lit eview
Jarvis' Report
Zola's Lit review
Zola's Report
Research Proposal
Code



Home

Cloudlet platform.


The platform was built with a number of considerations in mind. In particular, we were interested in whether a Raspberry Pi be practical for creating cloudlets considering battery consumption and network range?

Aims

There are numerous aspects the current cloud computing paradigm is lacking in, these limitations carry over to general cloudlets. The following are the limitations or aspects platform addresses.

  1. Information Ownership, Control and Physical security: Data centers for cloud computing service providers can be located in any country in the world. Users of cloud computing services may be concerned about where their information is stored due to privacy laws and government organizations in different countries. The proposed system should afford users the ability to control where the physical location of their data and who has access to it.

  2. Latency: Cloud computing is not suited for most areas in third world countries due to poor mobile network connectivity. In certain cases, cell phone providers have high charges. These two factors therefore limit the use of cloud services for mobile devices users. The cloudlet should reduce the latency associated with communication between the mobile device and the cloudlet

  3. Resource constraints: The cloud has abundant storage available. This has the implication that cloud providers can make use of a variety of database management systems and algorithms. They can also be able store large quantities of data. The proposed cloudlet, however, will operate on a single board computer. This has the implication that the chosen algorithms and technologies need to use resources effectively. Also, the files which are to be stored on the cloudlet will need to compressed to ensure optimal memory usage

Design

The platform uses a service-oriented architecture. The base of the platform supports a limited number of actions. The capabilities of the platform can be further expanded through developed services. Communication between the cloudlet and all clients is done through the MQTT protocol. This is a lightweight machine to machine messaging protocol for use on top of the TCP/IP protocol.

The services which extend the cloudlet can be physically located on the mobile device or the device that hosts the cloudlet. The services which extend the cloudlet need to use raw sockets. That is, they should create a server using raw sockets and not use the MQTT protocol as it has limitations in the message payload size. When a user request a service, they should be provided an IP and port.

Those details will be used to communicate. The implementation of the cloudlet allows quick loading and removal of services. It allows services to be hosted on the Raspberry Pi and clients. It is designed to quickly detect connections and disconnections. It ensures that humans can be able to tell what a service does and provides them with information where they can get more information about the service. It uses a well established messaging system to ensure that communication between client and cloudlet is easy and well separated as client can perform numerous actions

1. Figure: System overview

Findings

  • A portable power source is practical, a 3200mAh power source can last approximately 6 hours.
  • An approppriate database is the BerkeleyDB.
  • The maximum range is approximately 5m. The transfer of large data from a distance close to 5m is inefficient. The system is better suited for the tranfer of small data transfers from a distance.