umu.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Calvin Constrained: A Framework for IoT Applications in Heterogeneous Environments
Umeå University, Faculty of Science and Technology, Department of Computing Science.
Show others and affiliations
2017 (English)In: 2017 IEEE 37TH International Conference on Distributed Computing Systems (ICDCS 2017) / [ed] Lee, K., Liu, L., IEEE Computer Society, 2017, p. 1063-1073Conference paper, Published paper (Refereed)
Abstract [en]

Calvin is an IoT framework for application development, deployment and execution in heterogeneous environments, that includes clouds, edge resources, and embedded or constrained resources. Inside Calvin, all the distributed resources are viewed as one environment by the application. The framework provides multi-tenancy and simplifies development of IoT applications, which are represented using a dataflow of application components (named actors) and their communication. The idea behind Calvin poses similarity with the serverless architecture and can be seen as Actor as a Service instead of Function as a Service. This makes Calvin very powerful as it does not only scale actors quickly but also provides an easy actor migration capability. In this work, we propose Calvin Constrained, an extension to the Calvin framework to cover resource-constrained devices. Due to limited memory and processing power of embedded devices, the constrained side of the framework can only support a limited subset of the Calvin features. The current implementation of Calvin Constrained supports actors implemented in C as well as Python, where the support for Python actors is enabled by using MicroPython as a statically allocated library, by this we enable the automatic management of state variables and enhance code re-usability. As would be expected, Python-coded actors demand more resources over C-coded ones. We show that the extra resources needed are manageable on current off-the-shelve micro-controller-equipped devices when using the Calvin framework.

Place, publisher, year, edition, pages
IEEE Computer Society, 2017. p. 1063-1073
Series
IEEE International Conference on Distributed Computing Systems, ISSN 1063-6927
Keywords [en]
IoT, Distributed Cloud, Serverless Architecture, Dataflow Application Development Model
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:umu:diva-142013DOI: 10.1109/ICDCS.2017.181ISI: 000412759500098ISBN: 978-1-5386-1791-5 (print)ISBN: 978-1-5386-1792-2 (electronic)ISBN: 978-1-5386-1793-9 (print)OAI: oai:DiVA.org:umu-142013DiVA, id: diva2:1158912
Conference
37th IEEE International Conference on Distributed Computing Systems (ICDCS), JUN 05-08, 2017, Atlanta, GA
Funder
Swedish Research Council, C0590801Available from: 2017-11-21 Created: 2017-11-21 Last updated: 2018-09-07Bibliographically approved
In thesis
1. Resource allocation for Mobile Edge Clouds
Open this publication in new window or tab >>Resource allocation for Mobile Edge Clouds
2018 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Recent advances in Internet technologies have led to the proliferation of new distributed applications in the transportation, healthcare, mining, security, and entertainment sectors. The emerging applications have characteristics such as being bandwidth-hungry, latency-critical, and applications with a user population contained within a limited geographical area, and require high availability, low jitter, and security.

One way of addressing the challenges arising because of these emerging applications, is to move the computing capabilities closer to the end-users, at the logical edge of a network, in order to improve the performance, operating cost, and reliability of applications and services. These distributed new resources and software stacks, situated on the path between today's centralized data centers and devices in close proximity to the last mile network, are known as Mobile Edge Clouds (MECs). The distributed MECs provides new opportunities for the management of compute resources and the allocation of applications to those resources in order to minimize the overall cost of application deployment while satisfying end-user demands in terms of application performance.

However, these opportunities also present three significant challenges. The first challenge is where and how much computing resources to deploy along the path between today's centralized data centers and devices for cost-optimal operations. The second challenge is where and how much resources should be allocated to which applications to meet the applications' performance requirements while minimizing operational costs. The third challenge is how to provide a framework for application deployment on resource-constrained IoT devices in heterogeneous environments. 

This thesis addresses the above challenges by proposing several models, algorithms, and simulation and software frameworks. In the first part, we investigate methods for early detection of short-lived and significant increase in demand for computing resources (also called spikes) which may cause significant degradation in the performance of a distributed application. We make use of adaptive signal processing techniques for early detection of spikes. We then consider trade-offs between parameters such as the time taken to detect a spike and the number of false spikes that are detected. In the second part, we study the resource planning problem where we study the cost benefits of adding new compute resources based on performance requirements for emerging applications. In the third part, we study the problem of allocating resources to applications by formulating as an optimization problem, where the objective is to minimize overall operational cost while meeting the performance targets of applications. We also propose a hierarchical scheduling framework and policies for allocating resources to applications based on performance metrics of both applications and compute resources. In the last part, we propose a framework, Calvin Constrained, for resource-constrained devices, which is an extension of the Calvin framework and supports a limited but essential subset of the features of the reference framework taking into account the limited memory and processing power of the resource-constrained IoT devices.

Place, publisher, year, edition, pages
Umeå: Umeå University, 2018. p. 30
Series
Report / UMINF, ISSN 0348-0542 ; 18.10
Keywords
Mobile Edge Clouds, Edge/Fog Computing, IoTs, Distributed Resource Allocation
National Category
Computer Systems
Research subject
Computer Science; Computer Systems
Identifiers
urn:nbn:se:umu:diva-151480 (URN)978-91-7601-925-2 (ISBN)
Public defence
2018-10-01, MA121, MIT-huset, Umeå, 13:30 (English)
Opponent
Supervisors
Available from: 2018-09-10 Created: 2018-09-04 Last updated: 2018-09-07Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full text

Authority records BETA

Mehta, AmardeepElmroth, Erik

Search in DiVA

By author/editor
Mehta, AmardeepElmroth, Erik
By organisation
Department of Computing Science
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetric score

doi
isbn
urn-nbn
Total: 278 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf