Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • 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
Designing Distributed Applications Using a Phase-Aware, Reversible System
KTH, School of Information and Communication Technology (ICT), Software and Computer systems, SCS.
2017 (English)In: Proceedings - 2017 IEEE 1st International Conference on Edge Computing, EDGE 2017, Institute of Electrical and Electronics Engineers (IEEE), 2017, p. 55-64, article id 8029257Conference paper (Refereed)
Abstract [en]

Distributed applications will break down or perform poorly when there are too many failures (of nodes and/or communication) in the operating environment. Failures happen frequently on edge networks including mobile and ad hoc networks, but are also unexpectedly common on the general Internet. We propose an approach for designing stress-aware distributed applications that can take environment stress into account to improve their behaviour. We give a concrete illustration of the approach by targeting applications built on top of a Structured Overlay Network (SON). Our underlying SON is Reversible and Phase-Aware. A system is Reversible if the set of operations it provides is a function (called the reversibility function) of its current stress (i.e., all perturbing effects of the environment, including faults), and does not depend on past stress. Reversibility generalizes standard fault tolerance with nested fault models. When the fault rate goes outside the scope of one model, then it is still inside the next one. In order to approximate the reversibility function we introduce the concept of Phase, which is a per-node property that gives a qualitative measure of the available system operations under the current stress. Phase can be determined with no extra distributed operations. We show that making the phase available to applications allows them to improve their behavior in environments with high and variable stress. We propose a Phase API and we design an application, a collaborative graphic editor, that takes advantage of phase to enhance self-adaptation and self-optimization properties. Furthermore, we analyze how the application itself can achieve reversibility in the application level semantics. Using the phase of the underlying node, the application provides an indication to the user regarding its behavior. Thus, the application has improved behaviour with respect to the user, i.e., the user can better understand and decide what to do in a high-stress environment.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers (IEEE), 2017. p. 55-64, article id 8029257
Keyword [en]
High-stress environment, Phase, Phase-aware application, Reversible system
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:kth:diva-217588DOI: 10.1109/IEEE.EDGE.2017.16Scopus ID: 2-s2.0-85032275247ISBN: 9781538620175 OAI: oai:DiVA.org:kth-217588DiVA, id: diva2:1157110
Conference
1st IEEE International Conference on Edge Computing, EDGE 2017, Honolulu, United States, 25 June 2017 through 30 June 2017
Note

QC 20171115

Available from: 2017-11-15 Created: 2017-11-15 Last updated: 2017-11-15Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Search in DiVA

By author/editor
Vlassov, Vladimir
By organisation
Software and Computer systems, SCS
Computer Systems

Search outside of DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetric score

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

Direct link
Cite
Citation style
  • apa
  • harvard1
  • 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