[ieee 2013 international conference on parallel and distributed systems (icpads) - seoul, korea...

6
Challenges of Using Edge Devices in IoT Computation Grids Swarnava Dey , Arijit Mukherjee , Himadri Sekhar Paul , Arpan Pal Innovation Labs Tata Consultancy Services Kolkata, India {swarnava.dey|mukherjee.arijit|himadrisekhar.paul|arpan.pal}@tcs.com Abstract—Internet of Things (IoT) has the potential to become a technology revolution with a vision of creating very large scale network, comprising of unprecedented number of connected devices. These devices, often referred to as smart items or intelligent things can be home appliances, healthcare devices, vehicles, buildings, factories and almost anything networked and fitted with sensors, actuators, embedded computers. There has been sustained research work and standardization effort from different IoT perspectives like integration of sensor and RFID devices to the Internet. With the increasing trend of gathering business insights from unstructured data, the high volume of data generated by such devices is also of interest. Cloud based data mining platforms are suitable for analyses of such data and researchers have proposed architectures where personal mobile phones can act as Edge Gateway between the sensor network and cloud analytics platform. It seems that the surge in the volume of data generated by huge number of Smart Items can only be matched if a large percentage of mobile users start sharing the computation capability of their personal devices and work together towards true Participatory Computing in the IoT systems. In this work we try to understand the challenges associated with running computation jobs on the mobile devices using different types of workload often observed in IoT applications. Based on the insights gained from experiments performed by us, we propose a scheme where mobile phones, residential gateways and other edge devices offer free slots to servers in a cloud based data analytics system. Based on the free time slots offered by the mobile phones, if commensurately sized computational jobs can be scheduled, the unpredictability associated with using mobile phones as grid resources can be solved. Keywordscyber-physical; ubiquitous systems; analytics; inter- net of things; iot; prediction; mobile grid I. I NTRODUCTION Internet of Things (IoT) has the capability of bringing in a technological revolution and seamlessly integrate into our daily lives if it can be governed properly and at the same time privacy and security can be preserved at individual and global levels. These points were highlighted almost five years back in reports [1], [2]. In the recent years, the research effort in IoT area increased significantly. A technical report [3], provides an excellent compilation the current state of the art of IoT, in terms of the market segments, enabling technologies, the ecosystem of standards and platforms, business models, micro level deployments and viable applications. The points related to privacy, security, governance, standardization, conformance to regulations still remain top deterrents for proliferation of IoT. however, there has been significant initiatives taken in many different countries regarding research, development and deployment of IoT services [4]. According to Atzori [5], the IoT paradigm can be viewed from mainly three complimentary perspectives, namely - (i) the Things oriented vision dealing with the identification and functionality of the Things, (ii) the Internet oriented vision dealing with the enhancement/simplification of the Internet architecture to accommodate the Things, and (iii) the Se- mantics oriented vision dealing with the representation and management of the information generated by the Things, for their interoperability and integration with the Internet. Due to the heterogeneity of the data sources, nature of data generated and heterogeneity of data processing servers, an IoT system can also be viewed as a computational grid consisting of a very large number of devices generating data for processing and a large number of resources capable of processing such data. This simplified view emanates from the basic sense extract analyse actuate cycle of IoT, where the “analyse” stage refers to some computational processes along with varying degree of data handling. Along with the dedicated data centre servers, smartphones are also viable candidates for being used as data crunching machines in an IoT system. Several benefits and problems of using mobile device in grid are presented in [6] and [7]. Several novel architectures [8], [9] are proposed for accommodating mobile phones in a grid. The problems of battery drainage, intermittent network connectivity, and the devices remaining busy due to user activity remains applicable in the IoT context as well. The case for using smartphones as compute resources is becoming strong as these devices are being rolled out with more and more processor cores, RAM, high speed network- ing capability and access to cloud based services. In our opinion, if a large percentage of mobile users start sharing the computation capability of their personal devices through personal cloud computing, significant load on the data centres for processing data generated by IoT, can be reduced. We prefer to call these devices ANGELS or Available Network Gateways in Edge Locations for Sensors, as those devices, if integrated properly, can act like angels for the IoT frameworks. To position the smartphones as potential edge computing devices for IoT systems, it is important to understand the nature of available computation capacity of such devices. If an approximate execution time for a computation job on a smartphone can be estimated in advance then it may become possible to derive a cost function, that optimizes the allocation of jobs to the hybrid computation grid comprised of mobile devices and data centre servers. In this work we try to understand the difference between 2013 19th IEEE International Conference on Parallel and Distributed Systems 1521-9097/13 $31.00 © 2013 IEEE DOI 10.1109/.100 564 2013 19th IEEE International Conference on Parallel and Distributed Systems 1521-9097/13 $31.00 © 2013 IEEE DOI 10.1109/.100 564 2013 19th IEEE International Conference on Parallel and Distributed Systems 1521-9097/13 $31.00 © 2013 IEEE DOI 10.1109/.100 564 2013 International Conference on Parallel and Distributed Systems 1521-9097/13 $31.00 © 2013 IEEE DOI 10.1109/ICPADS.2013.101 564

Upload: arpan

Post on 14-Feb-2017

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: [IEEE 2013 International Conference on Parallel and Distributed Systems (ICPADS) - Seoul, Korea (South) (2013.12.15-2013.12.18)] 2013 International Conference on Parallel and Distributed

Challenges of Using Edge Devices in IoTComputation Grids

Swarnava Dey∗, Arijit Mukherjee∗, Himadri Sekhar Paul∗, Arpan Pal∗∗Innovation Labs

Tata Consultancy Services

Kolkata, India

{swarnava.dey|mukherjee.arijit|himadrisekhar.paul|arpan.pal}@tcs.com

Abstract—Internet of Things (IoT) has the potential to becomea technology revolution with a vision of creating very largescale network, comprising of unprecedented number of connecteddevices. These devices, often referred to as smart items orintelligent things can be home appliances, healthcare devices,vehicles, buildings, factories and almost anything networked andfitted with sensors, actuators, embedded computers. There hasbeen sustained research work and standardization effort fromdifferent IoT perspectives like integration of sensor and RFIDdevices to the Internet. With the increasing trend of gatheringbusiness insights from unstructured data, the high volume ofdata generated by such devices is also of interest. Cloud baseddata mining platforms are suitable for analyses of such dataand researchers have proposed architectures where personalmobile phones can act as Edge Gateway between the sensornetwork and cloud analytics platform. It seems that the surgein the volume of data generated by huge number of SmartItems can only be matched if a large percentage of mobileusers start sharing the computation capability of their personaldevices and work together towards true Participatory Computingin the IoT systems. In this work we try to understand thechallenges associated with running computation jobs on themobile devices using different types of workload often observed inIoT applications. Based on the insights gained from experimentsperformed by us, we propose a scheme where mobile phones,residential gateways and other edge devices offer free slots toservers in a cloud based data analytics system. Based on thefree time slots offered by the mobile phones, if commensuratelysized computational jobs can be scheduled, the unpredictabilityassociated with using mobile phones as grid resources can besolved.

Keywords—cyber-physical; ubiquitous systems; analytics; inter-net of things; iot; prediction; mobile grid

I. INTRODUCTION

Internet of Things (IoT) has the capability of bringing ina technological revolution and seamlessly integrate into ourdaily lives if it can be governed properly and at the same timeprivacy and security can be preserved at individual and globallevels. These points were highlighted almost five years back inreports [1], [2]. In the recent years, the research effort in IoTarea increased significantly. A technical report [3], providesan excellent compilation the current state of the art of IoT,in terms of the market segments, enabling technologies, theecosystem of standards and platforms, business models, microlevel deployments and viable applications. The points relatedto privacy, security, governance, standardization, conformanceto regulations still remain top deterrents for proliferation ofIoT. however, there has been significant initiatives taken inmany different countries regarding research, development and

deployment of IoT services [4].According to Atzori [5], the IoT paradigm can be viewed

from mainly three complimentary perspectives, namely - (i)the Things oriented vision dealing with the identification andfunctionality of the Things, (ii) the Internet oriented visiondealing with the enhancement/simplification of the Internetarchitecture to accommodate the Things, and (iii) the Se-mantics oriented vision dealing with the representation andmanagement of the information generated by the Things, fortheir interoperability and integration with the Internet.

Due to the heterogeneity of the data sources, nature ofdata generated and heterogeneity of data processing servers,an IoT system can also be viewed as a computational gridconsisting of a very large number of devices generating datafor processing and a large number of resources capable ofprocessing such data. This simplified view emanates fromthe basic sense → extract → analyse → actuate cycle ofIoT, where the “analyse” stage refers to some computationalprocesses along with varying degree of data handling. Alongwith the dedicated data centre servers, smartphones are alsoviable candidates for being used as data crunching machines inan IoT system. Several benefits and problems of using mobiledevice in grid are presented in [6] and [7]. Several novelarchitectures [8], [9] are proposed for accommodating mobilephones in a grid. The problems of battery drainage, intermittentnetwork connectivity, and the devices remaining busy due touser activity remains applicable in the IoT context as well.

The case for using smartphones as compute resources isbecoming strong as these devices are being rolled out withmore and more processor cores, RAM, high speed network-ing capability and access to cloud based services. In ouropinion, if a large percentage of mobile users start sharingthe computation capability of their personal devices throughpersonal cloud computing, significant load on the data centresfor processing data generated by IoT, can be reduced. Weprefer to call these devices ANGELS or Available NetworkGateways in Edge Locations for Sensors, as those devices, ifintegrated properly, can act like angels for the IoT frameworks.To position the smartphones as potential edge computingdevices for IoT systems, it is important to understand thenature of available computation capacity of such devices. Ifan approximate execution time for a computation job on asmartphone can be estimated in advance then it may becomepossible to derive a cost function, that optimizes the allocationof jobs to the hybrid computation grid comprised of mobiledevices and data centre servers.

In this work we try to understand the difference between

2013 19th IEEE International Conference on Parallel and Distributed Systems

1521-9097/13 $31.00 © 2013 IEEE

DOI 10.1109/.100

564

2013 19th IEEE International Conference on Parallel and Distributed Systems

1521-9097/13 $31.00 © 2013 IEEE

DOI 10.1109/.100

564

2013 19th IEEE International Conference on Parallel and Distributed Systems

1521-9097/13 $31.00 © 2013 IEEE

DOI 10.1109/.100

564

2013 International Conference on Parallel and Distributed Systems

1521-9097/13 $31.00 © 2013 IEEE

DOI 10.1109/ICPADS.2013.101

564

Page 2: [IEEE 2013 International Conference on Parallel and Distributed Systems (ICPADS) - Seoul, Korea (South) (2013.12.15-2013.12.18)] 2013 International Conference on Parallel and Distributed

running external computation on a server class machine and asmartphone. We also explore several different IoT applicationsdeveloped in our lab to understand the data sizes and work-load types involved. We use the identified workloads to runcomputation jobs on grid formed with micro instances [10]from Amazon EC2 [11]. Micro instances, in our opinion,can emulate a smartphone execution environment and wehave presented a rationale for the choice in the experimentsection IV.

Rest of the paper is organized as follows: In section IIrelated IoT frameworks, mobile grids are discussed. Section IIIis devoted to a survey of several IoT applications developedin our lab. with a focus on the data sizes and computationworkloads involved. Taking a subset of the workload typesand data sizes, some computation jobs were run on a HTCon-dor [12] based job dissemination framework [13] developed byus. Section IV presents results justifying the usage of microinstances to emulate smartphones and results of running jobswith IoT workloads in the condor based framework. Thoseresults are analysed to expose possible challenges involved inrunning jobs with different workload types and data sizes inthe resources of a heterogeneous grid. A scheme is presentedin section V to counter the challenges outlined in section IV.As this is still a work in progress, we could not provide aevaluation of such system. Section VI concludes the paperwith directions to future work.

II. BACKGROUND & RELATED WORK

This work relates to several IoT frameworks that try toleverage the computing power of mobile devices to augmentIoT data analysis capacity. Viswanathan [14] implements aresource provisioning framework with mobile grids by utilizingcomputing capabilities of nearby devices. This work specifi-cally treats mobile devices as service providers and addressenergy-aware resource management and uncertainty handlingfor ensuring application QoS in highly dynamic and unpre-dictable environments. The workload type for the frameworkpresented is image analysis and computation is matrix andvector multiplication. It refers to data parallelism and taskparallelism exploitation, job check pointing to understand theremaining time to complete the job. In contrast we proposeprediction of usage pattern in a privately owned mobile deviceto reduce uncertainty in job execution.

IoT frameworks can also be envisaged over a cloud basedplatform. The work by Gubbi [15] provides a fair backgroundof the enabling technologies involved in realizing a IoT mid-dleware based on cloud computing infrastructure. Howeverthe cloud based infrastructure used for the IoT middlewaredoes not take into account the intermittently available mobiledevices.

A notable work, Serendipity [16] is such a framework witha powerful job structure to disseminate jobs among mobiledevices nearby, with an aim of reducing the job completiontime or conserving the device energy. In this work, a mobiledevice may execute a task locally or send it to a nearby mobiledevice, based on estimations using some exchanged metainformation. Job dissemination algorithms are proposed underthree scenarios - a) a predictable mobile network with controlchannel for coordination; b) a predictable mobile networkwithout control channel; and c) Unpredictable mobile network. Of these above mentioned scenarios, we try to analyse the firstscenario, where the computation availability from the mobile

devices are predictable and the grid servers communicate withthe mobile grid resources to reduce unpredictability associatedwith offloading computation jobs.

Remote computing frameworks including HTCondor [12],BOINC [17] have utilized desktop computers when thosewere free. Frameworks like MAUI [18] brought in remotecomputing to mobile devices, but for offloading computeintensive jobs to the server.

However, no significant study is done to find out how suit-able today’s smartphones are, for running external computationjobs. For this work we perform some experiments to validatewhether the execution time of an external computation jobsis dependent only on the workload type of the job and thesmartphone’s technical specification (CPU, RAM etc.) or not.

III. WORKLOAD TYPES OF IOT APPLICATIONS

The application areas mentioned in [5], [15], [3] include,but are not limited to, transportation and logistics, healthcare,smart environment (home, office, plant) and personal/socialaspects. With more and more countries deploying IoT sys-tems [4], several other vertical use case scenarios are evolving.However, the study to understand workload characteristics,volume of data generated and the kind of analytics performedin IoT, is still not attempted. In this section, we presentworkload characteristics for a few IoT applications developedand deployed by our colleges, in terms of the data sizesinvolved, arrival rate of the jobs and computation needs. Thelist we managed to form is quite minuscule.

RIPSAC [19], which is a Platform-as-a-Service for sensordata analysis, has been deployed in the field and providedus information regarding several application areas of a “smartcity” environment. Applications like road condition monitoringand alert [20], ad-hoc ride sharing [21],energy informationgateway for home [22] have already been integrated withinthis platform.

In the smart transportation area, for tracking the smartbuses, geo-location data, boarder information, route plan andspeed tracking combined together produce data packets ofapproximately 1K for each bus. The information may beretrieved from the vehicles on demand, or triggered by an eventor by continuously polling the sensors 3 times in a minute.The computation involves database check for boarder identityverification and route conformance vis-a-vis stored routes.

In the smart energy application, approximately 5K datafrom smart meters are gathered, fused by home gateway deviceand sent to server for analysis of home energy usage. Here thefrequency of data acquisition is once in every 10 minutes andthe workload is computation heavy as the server needs to getthe total load in the region and send recommendations in real-time to the user regarding benefits of controlling energy usage.

In the wind speed prediction application for a wind farmdata is obtained from the wind turbines every 30 minutes anda forecast of the wind speed is done. Here the volume of datais moderately high, taking into account the number of turbinessending data concurrently. As an example, in an AWS EC2m1.small node, each execution of the algorithm on a typicaldataset takes around 300 seconds.

In scenarios like road condition monitoring, water logging,potholes in the road, traffic diverts, air quality information sentby citizens generate data in a non-periodic way. These areexamples of Participatory Sensing [23]. As discussed in thismilestone paper, the initiators and gatheres can send data to

565565565565

Page 3: [IEEE 2013 International Conference on Parallel and Distributed Systems (ICPADS) - Seoul, Korea (South) (2013.12.15-2013.12.18)] 2013 International Conference on Parallel and Distributed

evaluators and analysts in a distributed data gathering systemof mobile users. Data generated by such sensing on noisepollution, air quality, incident reporting via image and videocan have a range of few bytes to several megabytes. The arrivalrate of such participatory sensing data from citizens can bearbitrary and the sizes for the typical images and videos ofincidents can be several megabytes.

Similar data sizes are prevalent in the social networkingdomain, which is closely coupled with participatory sensingand smart city implementations. A relevant research on Intel-ligent Social Network of Device [24] gives some insight inthis regard. However the arrival distribution of independentand dependent social network posts are not yet understood.

A healthcare application [25] is also implemented onRIPSAC. There is a data explosion in medical imaging andan overview of the data sources and storage are available inarticles [26] and [27]. If such images are transferred fromremote heath care gateway devices, local analytics algorithmsshould reduce the data volume

An interesting study in IBM T J Watson Research Cen-tre [28] on the analysis of data from taxi cab participatorysensor network, notes that total number of taxicabs collectingsensor data varies between 1400 and 1800 per day. Theobservations made in this paper show that the number of taxicabs in Stockholm is intimately wound with the city life, whichshould not be much different for other cities as well. It drawsan important conclusion on the elastic server provisioningbased on the location parameters and time of day. Though datasizes used were not mentioned in this work, we can assumeit to be a few hundred bytes as it collected only the locationdata.

IV. EXPERIMENTS

With a superset of data sizes and arrival rates assumed fromthe discussion in section III, some experiments were conductedfor job execution in a HTCondor based job disseminationframework [13]. The workload chosen was a data analysisalgorithms written in R Language [29] on Sloan Digital SkySurvey DR6 Subset [30], available in Amazon AWS. From thedataset, subsets of 0.5 megabytes (MB), 1.1 MB, 1.7 MB, 5.4MB, 7 MB, 11 MB, 13 MB, 17 MB, 22 MB and 27 MB datafiles were created, that encompassed the data sizes discussedin section III. Job arrival rates were chosen based on PoissonsDistribution with λ parameter 1 in 2, 5, 8, 10, 20, 30, 50, 100seconds.

We used Amazon EC2 [11] micro instances [10] to emulatethe mobile devices. As available from the Amazon documen-tation, a micro instance provides small amount of consistentCPU power and allows increased CPU capacity in short burstswhen additional cycles are available. This is analogous to asmartphone in the sense that the smartphone OS runs severalbackground tasks like server sync, update check, implicitand explicit user initiated background tasks. The foregroundtasks are performed in the mobile devices based on user’sbehavioural patterns and diurnal patterns [31]. Added to thatthe network bandwidth of a micro instance is very low andvariable.

To understand the available computation capability of afew android phones, we executed a program performing math-ematical calculations on 15000 numbers, in different phonesbelonging to our colleagues. We present one such executionprofile below (Fig. 2), that highlights the nature of the CPU

availability in the phone, depending on the foreground andbackground tasks being executed on the phone.

Fig. 1: Micro instance CPU nature (Source: Amazon AWS)

The dependence of the execution time of the externalcomputation job, on the activities running in the phone isevident for the example from Fig. 2. Similar experimentswere run in different phones and a comparison of executiontimes of the same program on three smartphones with differenttechnical specification is presented in Fig. 3

As the same computation executes on different devices withdifferent technical capabilities (CPU, RAM), the difference inthe envelope execution time can be seen. However, the basicnature of CPU availability is same across the phones - burstsof availability during lean periods. Thus this was our mainmotivation for running our experiments in micro instances,which have almost similar CPU availability, in bursts (Fig. 1).As we continue with this work in progress, we plan to run ourHTCondor based framework on real mobile devices soon.

The crux of the set of experiments performed here wasrunning a set of jobs with varying computational needs, ona set of varying data sizes based on varying arrival rates ofsuch jobs. The tests were run by automating the submission ofjobs to the HTCondor cluster with given data sizes and as perspecified arrival rates. Resultant turn-around time in a mediumAWS instance was almost linearly increasing, as in Fig.4. Thisis the expected behaviour from a resource used in standardremote computing environment. As per Fig. 5, running the

Fig. 4: Test of turn-around time in a cluster of AWS Smallinstances

same set of experiments in a cluster of micro instances, theresults obtained were very different. In this, overall increasein the turn-around time with increasing data sizes and fasterjob arrival rates, is seen. However, the turn-around time doesnot increase in a linear fashion.

A. Result AnalysisA plotting of turn-around time with respect to data sizes

and job arrival should generate a event less linear curve in any

566566566566

Page 4: [IEEE 2013 International Conference on Parallel and Distributed Systems (ICPADS) - Seoul, Korea (South) (2013.12.15-2013.12.18)] 2013 International Conference on Parallel and Distributed

Fig. 2: Variability of execution times while computing a mean, median, mode of same sized data in a smartphone

Fig. 3: Comparison of execution times with same computation in smartphones of different technical specifications

Fig. 5: Overall results for turn-around time with respect todifferent job arrival rates on micro cluster

server, unless the server remains busy doing some other job attimes. However, the micro instances provides low backgroundCPU levels normally with bursts of high CPU availability.Added to that, are the arrival time distributions, which addmore variations in the turn-around time. By virtue of an arrivaltime synchronized with the CPU availability, some jobs arefinished fast, while some suffer high latency. Figure 5 showsthe overall behaviour of the turn-around times, with respect tojob arrival rate and job size. The turn-around time does not

Fig. 6: Plotted results for turn-around time with respect todifferent data sizes on micro cluster

increase much, as long as, the data sizes involved, are small.As the data sizes increase, the turn-around time becomes betterand worse intermittently. Similar behaviour is observed fromthe plots involving different arrival rates (Fig. 7) and plots forthe different data sizes (Fig. 6). If matched with the natureof micro instance CPU availability, in Fig. 1, it seems thatwhen short bursts of additional cycles were available, the jobsperformed well. However, the small amount of consistent CPUpower, that is normally allocated to a micro instance, was notsufficient for completing the jobs involving larger data sizes.

In real mobile devices also, the background synchroniza-tion jobs, user activities, might render execution of analyticsjobs in the mobile devices unpredictable. Thus, for better

567567567567

Page 5: [IEEE 2013 International Conference on Parallel and Distributed Systems (ICPADS) - Seoul, Korea (South) (2013.12.15-2013.12.18)] 2013 International Conference on Parallel and Distributed

Fig. 7: Plotted results for turn-around time with respect todifferent job arrival rates on micro cluster

performance, jobs disseminated to smartphones should besynchronized with the free compute power availability in suchdevices. Unlike servers, a smartphones is usually owned bya particular user, possessing an unique usage pattern. In thenext section we present a scheme that exploits this property tobetter utilize mobile devices in a grid.

V. PROPOSED SCHEME

To counter the unpredictability associated with the compu-tation availability in the edge devices, we propose a schemefor task execution by idle edge resources like mobile phones,residential gateways. Idle resources may be understood ascomputing devices which are in relatively idle state, and whoseprocessing power is underutilized and available for performingtasks. The servers systems in such a grid will be responsible forfinding which computing devices are idle or free for assigningsub-tasks of larger, computationally intensive tasks. In theproposed scheme, the edge device keeps a track of its relativelyidle state, while running some applications or executing sometasks in background which do not utilize substantial processingpower and device capacity. These states are formed basedon user’s behaviour, diurnal pattern etc. As the edge devicefinds such free slots, it associates a few computation capa-bility parameters and creates an advertisement profile. Usingthat advertisement profile free time-slot is advertised by theedge device to grid servers. The prediction and estimationof relatively idle states can be done by tracking the usagepatterns and there are research work done in that direction.The work by Falaki [31] analysed data collected from 255users with parameters such as screen state, applications used,network traffic, battery state. The analyses showed great di-versity in usage pattern by different users. Three models werepresented in the work from mobile usage perspective andenergy drain prediction. Data collected from mobile phoneswith CPU, memory, I/O, network connectivity and activity type(foreground/background) were classified to generate models.In addition, to predict the computation capability and durationof availability of such capability, several other parametersincluding accurate CPU load, memory information, signalstrength and connectivity and others need to be analysed bythe resident mobile agent. The agent would thus define acomputation capability and its availability based on learningof user interaction of a particular smartphone and advertiseits availability for taking up a computational task. This wouldreduce the load on the grid server for finding the available idleresources.

The grid servers that get the ownership of doing data ana-

lytics jobs, would respond to such advertisement by notifyingthe edge device as selected, if such a device meets severalcriteria including but not limited to - free slot large enoughto accommodate the smallest possible task, computation speedand memory capacity of such device, remaining battery andnetwork bandwidth high enough to meet the task timing dead-line, etc. The grid server may now create a subtask via datapartitioning on demand, that fits the capability and approximatefree time slot provided by the If the edge devices provide theirfree slot well in advance, the servers may create an optimizedplan to schedule jobs, minimizing some parameters. The highlevel steps for such a scheme is given below:

Edge device side enhancements

1) Identify free time slots and their durations2) Determine computation capability parameters for execut-

ing subtasks3) Create advertisement profile with free timeslot and com-

putation capability parameters4) Send advertisement to grid servers5) Receive subtask6) Execute subtask7) Send results

Grid server side enhancements1) Listen to free time slot and computation capability adver-

tisement from Edge devices2) Check if subtask fit for the given free slot and match

computation capability3) Read advertisement profiles from mobiles and create

optimized plans to schedule jobs4) Assign subtask to the selected edge device5) Receive and collate results6) Execute the subtask locally if errors happen

The scheme presented here can be implemented as an appli-cation of Contract Net Protocol [32], which does not yet dealwith probabilistically available resources.

VI. CONCLUSION AND FUTURE WORK

If the Internet of Things vision is realized and technologicalchallenges associated are solved, unprecedented number ofdevices will be connected to the Internet, producing hugevolume of unstructured data. The large amount of un-utilizedprocessing power of smartphones might be needed, as straysolutions for vertical use cases are federated and large IoTsystems are formed. This paper highlighted the problem ofunpredictable computation capacity availability in smartphonesfor executing externally assigned jobs. It also illustrated thedependence of the execution time of a externally assignedcomputation on the foreground and background activities in asmartphone, through experiments. As the foreground activitiesin a smartphone are mostly dependent on the usage patternof the phone owner, an agent running on the phone would bein the best position to find the probabilistic lean periods forthat particular phone. A possible scheme based on learningthese lean periods is proposed to augment the capacity ofheterogeneous computation grid, using smartphones. As thisis still a work in progress, we plan to implement the proposedscheme in section V and evaluate the system based on thecurrent benchmarks. This paper also presents an analysis of thecomputation workload and data sizes in the applications de-ployed on a sensor data analysis platform. Future work in thisarea will need comprehensive analysis of data sizes, workload

568568568568

Page 6: [IEEE 2013 International Conference on Parallel and Distributed Systems (ICPADS) - Seoul, Korea (South) (2013.12.15-2013.12.18)] 2013 International Conference on Parallel and Distributed

types, computation requirement of typical IoT applications, toproperly model and engineer mobile compute clouds.

REFERENCES

[1] “Disruptive Civil Technologies: Six Technologies with Potential Impactson US Interests out to 2025,” http://www.fas.org/irp/nic/disruptive.pdf.[Online]. Available: http://www.fas.org/irp/nic/disruptive.pdf

[2] “Internet of Things in 2020 A ROADMAP FORTHE FUTURE,” http://www.smart-systems-integration.org/public/documents/publications/Internet-of-Things in 2020EC-EPoSS Workshop Report 2008 v3.pdf. [Online]. Available:http://www.smart-systems-integration.org/public/documents/publications/Internet-of-Things in 2020 EC-EPoSS WorkshopReport 2008 v3.pdf

[3] M. Oleksiy, W. Henna, L. Seppo, A. Petri, P. Pasi, R. Mervi, S. Riikka,O. Hanna, S. Alexey, and M. Jenni, “Internet-of -Things Market, ValueNetworks, and Business Models: State of the Art Report ,” 2013.[Online]. Available: http://www.internetofthings.fi/file attachment/get/IoT%20SOTA%20Report%202013.pdf?attachment id=9

[4] The Internet of Things 2012 - New Horizons. IERC - Internet of ThingsEuropean Research Cluster, 2012.

[5] L. Atzori, A. Iera, and G. Morabito, “The internet of things: A survey,”Comput. Netw., vol. 54, no. 15, pp. 2787–2805, Oct. 2010. [Online].Available: http://dx.doi.org/10.1016/j.comnet.2010.05.010

[6] T. Phan, L. Huang, and C. Dulan, “Challenge: integrating mobilewireless devices into the computational grid,” in Proceedings of the 8thannual international conference on Mobile computing and networking,ser. MobiCom ’02. New York, NY, USA: ACM, 2002, pp. 271–278.[Online]. Available: http://doi.acm.org/10.1145/570645.570679

[7] N. Fernando, S. W. Loke, and W. Rahayu, “Mobile cloud computing:A survey,” Future Gener. Comput. Syst., vol. 29, no. 1, pp. 84–106,Jan. 2013. [Online]. Available: http://dx.doi.org/10.1016/j.future.2012.05.023

[8] E. E. Marinelli, “Hyrax: Cloud Computing on Mobile Devices usingMapReduce,” 2009. [Online]. Available: http://www.dtic.mil/cgi-bin/GetTRDoc?AD=ADA512601

[9] B.-G. Chun, S. Ihm, P. Maniatis, M. Naik, and A. Patti, “Clonecloud:elastic execution between mobile device and cloud,” in Proceedingsof the sixth conference on Computer systems, ser. EuroSys ’11.New York, NY, USA: ACM, 2011, pp. 301–314. [Online]. Available:http://doi.acm.org/10.1145/1966445.1966473

[10] “Amazon EC2 Instance Types: Micro Instances,”http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/conceptsmicro instances.html. [Online]. Available: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts micro instances.html

[11] “Amazon Elastic Compute Cloud(Amazon EC2),” http://aws.amazon.com/ec2/. [Online]. Available: http://aws.amazon.com/ec2/

[12] T. Tannenbaum, D. Wright, K. Miller, and M. Livny, “Condor - adistributed job scheduler,” in Beowulf Cluster Computing with Linux,T. Sterling, Ed. MIT Press.

[13] A. Mukherjee, S. Dey, H. S. Paul, and B. Das, “Utilising condor fordata parallel analytics in an IoT context - an experience report,” in1st International Workshop on Internet of Things Communications andTechnologies (IoT’13) (IoT’2013), Lyon, France, Oct. 2013.

[14] Mobile Grid Computing for Data- and Patient-centric UbiquitousHealthcare, Seoul, Korea, June 2012.

[15] J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami, “Internet ofthings (iot): A vision, architectural elements, and future directions,”Future Gener. Comput. Syst., vol. 29, no. 7, pp. 1645–1660, Sep. 2013.[Online]. Available: http://dx.doi.org/10.1016/j.future.2013.01.010

[16] C. Shi, V. Lakafosis, M. H. Ammar, and E. W. Zegura, “Serendipity:enabling remote computing among intermittently connected mobiledevices,” in Proceedings of the thirteenth ACM international symposiumon Mobile Ad Hoc Networking and Computing, ser. MobiHoc ’12.New York, NY, USA: ACM, 2012, pp. 145–154. [Online]. Available:http://doi.acm.org/10.1145/2248371.2248394

[17] D. P. Anderson, “Boinc: A system for public-resource computingand storage,” in Proceedings of the 5th IEEE/ACM InternationalWorkshop on Grid Computing, ser. GRID ’04. Washington, DC,

USA: IEEE Computer Society, 2004, pp. 4–10. [Online]. Available:http://dx.doi.org/10.1109/GRID.2004.14

[18] E. Cuervo, A. Balasubramanian, D.-k. Cho, A. Wolman, S. Saroiu,R. Chandra, and P. Bahl, “Maui: making smartphones last longerwith code offload,” in Proceedings of the 8th international conferenceon Mobile systems, applications, and services, ser. MobiSys ’10.New York, NY, USA: ACM, 2010, pp. 49–62. [Online]. Available:http://doi.acm.org/10.1145/1814433.1814441

[19] P. Misra, A. Pal, B. Purushothaman, C. Bhaumik, D. Swamy, V. S.Subrahmanian, D. Kar, S. Naskar, S. Adak, S. Ghosh, and Others, “Acomputing platform for development and deployment of sensor databased applications and services,” 2013, wO Patent 2,013,072,925.

[20] A. Ghose, P. Biswas, C. Bhaumik, M. Sharma, A. Pal, and A. Jha,“Road condition monitoring and alert application: Using in-vehiclesmartphone as internet-connected sensor,” in Pervasive Computingand Communications Workshops (PERCOM Workshops), 2012 IEEEInternational Conference on, 2012, pp. 489–491.

[21] D. Mukherjee, S. Banerjee, and P. Misra, “Ad-hoc ride sharingapplication using continuous sparql queries,” in Proceedings of the 21stinternational conference companion on World Wide Web, ser. WWW’12 Companion. New York, NY, USA: ACM, 2012, pp. 579–580.[Online]. Available: http://doi.acm.org/10.1145/2187980.2188136

[22] A. Pal, C. Bhaumik, J. Shukla, and S. Kolay, “Energy informationgateway for home,” in Intelligent Systems, Modelling and Simulation(ISMS), 2011 Second International Conference on, 2011, pp. 235–240.

[23] J. Burke, D. Estrin, M. Hansen, A. Parker, N. Ramanathan, S. Reddy,and M. B. Srivastava, “Participatory sensing,” in In: Workshop onWorld-Sensor-Web (WSW06): Mobile Device Centric Sensor Networksand Applications, 2006, pp. 117–134.

[24] A. Pal, C. Bhaumik, P. Sinha, and A. Ghose, “Intelligent socialnetwork of devices,” in Computational Social Networks, A. Abrahamand A.-E. Hassanien, Eds. Springer London, 2012, pp. 329–348.[Online]. Available: http://dx.doi.org/10.1007/978-1-4471-4048-1 13

[25] A. Ghose, C. Bhaumik, D. Das, and A. K. Agrawal, “Mobile healthcareinfrastructure for home and small clinic,” in Proceedings of the 2ndACM international workshop on Pervasive Wireless Healthcare, ser.MobileHealth ’12. New York, NY, USA: ACM, 2012, pp. 15–20.[Online]. Available: http://doi.acm.org/10.1145/2248341.2248347

[26] “Taking Medical imaging to the cloud,” http://healthcare.harris.com/media/Johns%20Hopkins%20-%20Taking%20Medical%20Imaging%20into%20the%20Cloud tcm39-21428.pdf. [Online]. Available: http://healthcare.harris.com/media/Johns%20Hopkins%20-%20Taking%20Medical%20Imaging%20into%20the%20Cloud tcm39-21428.pdf

[27] “Management of Imaging Data in Clinical Trials: Storage ,”http://www2.rsna.org/re/TwoTopicImagingWorkshopPresentations/Index%20Files/Sunderland%20Panel%20Mgmt%20of%20Data.pdf. [Online]. Available: http://www2.rsna.org/re/TwoTopicImagingWorkshopPresentations/Index%20Files/Sunderland%20Panel%20Mgmt%20of%20Data.pdf

[28] R. Ganti, I. Mohomed, R. Raghavendra, and A. Ranganathan,“Analysis of data from a taxi cab participatory sensor network.”in MobiQuitous, ser. Lecture Notes of the Institute for ComputerSciences, Social Informatics and Telecommunications Engineering,A. Puiatti and T. Gu, Eds., vol. 104. Springer, 2011, pp. 197–208. [Online]. Available: http://dblp.uni-trier.de/db/conf/mobiquitous/mobiquitous2011.html#GantiMRR11

[29] “The R Project for Statistical Computing,” http://www.r-project.org/.[Online]. Available: http://www.r-project.org/

[30] “Sloan Digital Sky Survey DR6 Subset,” http://aws.amazon.com/datasets/2797. [Online]. Available: http://aws.amazon.com/datasets/2797

[31] H. Falaki, R. Mahajan, S. Kandula, D. Lymberopoulos, R. Govindan,and D. Estrin, “Diversity in smartphone usage,” in Proceedings ofthe 8th international conference on Mobile systems, applications, andservices, ser. MobiSys ’10. New York, NY, USA: ACM, 2010, pp. 179–194. [Online]. Available: http://doi.acm.org/10.1145/1814433.1814453

[32] R. G. Smith, “The contract net protocol: High-level communicationand control in a distributed problem solver,” IEEE Trans. Comput.,vol. 29, no. 12, pp. 1104–1113, Dec. 1980. [Online]. Available:http://dx.doi.org/10.1109/TC.1980.1675516

569569569569