Project

Back to overview

BASIS (hyBrid Asynchronous/Synchronous dIstributed Systems)

Applicant Eugster Patrick
Number 197353
Funding scheme Project funding (Div. I-III)
Research institution Istituto di sistemi informatici (SYS) Facoltà di scienze informatiche
Institution of higher education Università della Svizzera italiana - USI
Main discipline Information Technology
Start/End 01.03.2021 - 28.02.2025
Approved amount 919'888.00
Show all

Keywords (3)

Synchrony; Distributed systems; Operating systems

Lay Summary (German)

Lead
Heutzutage wird ein großer Anteil von neuen Anwendungen als verteilte Programme konzipiert, und in Cloud Datenzentern ausgeführt. Dabei besteht eine große Schwierigkeit darin, teils widersprüchliche Anforderungen für die verteilte Koordination wie z.B. Performanz, Fehlertoleranz, und Konsistenz zu vereinbaren. Der ursprüngliche Grund für diese Schwierigkeit ist die pessimistische Annahme dass Netzwerke wie auch Server asynchron sind, d.h., dass Übertragung und Behandlung von Daten nicht zeitlich beschränkt sind. Viele praktische Probleme in verteilten Systemen profitieren jedoch von, oder benötigen gar, Synchronität. Ansätze die in der Praxis benutzt werden um das Problem zu umgehen führen zu komplexen, und somit langsamen und Fehler-anfälligen Lösungen.
Lay summary
Das Ziel dieses Projektes besteht darin Asynchronität direkt anzugehen. Statt wie in früheren Arbeiten eine synchrone Schicht auf konventionellen asynchronen Systemen "aufzustocken", nutzen wir die Einsichten dass nur gewisse Komponenten Synchronität benötigen, und dass bestehende Untersysteme für verteilte Interaktion unter Berücksichtigung von Eigenschaften aktueller Hardware von Grund auf neu konzipiert werden können um die Quellen von Asynchronität auszuschalten oder zu umgehen. Dadurch erfährt bestimmte Interaktion die Synchronität benötigt zeitlich genaue Abstimmung, und wird, eher als Nebeneffekt, dabei auch bedeutend schneller. Dieses Projekt, genannt BASIS, setzt diese Ideen durch die Konzipierung einer neuen hybriden (asynchronen/synchronen) Architektur für verteilte Anwendungen um, die auf den folgenden konkreten Beiträgen aufbaut: (1) Eine synchrone Netzwerk-"Tranche". (2) Eine sychrone Betriebsystems-"Tranche". (3) Hybride Algorithmen für verteilte Koordination. (4) Programmiermodelle für hybride verteilte Anwendungen. 

Wissenschaftlicher und gesellschaftlicher Kontext des Forschungsprojekts

Cloud Datenzenter bilden das Rückgrat für unsere heutige Informations-gesteuerte Gesellschaft. Die Mehrzahl von Web Anwendungen und Diensten benutzen Computerresourcen in solchen Datenzentren. Entsprechend ist es von großer Bedeutung die Nutzung solcher Datenzentren zu verbessern. Verbesserungen führen nicht nur zu besserer Leistung und Verlässlichkeit von Anwendungen sondern auch zu einem verbessertem Verhältnis zwischen Energieverbrauch und Leistung.
Direct link to Lay Summary Last update: 19.01.2021

Responsible applicant and co-applicants

Employees

Name Institute

Project partner

Associated projects

Number Title Start Funding scheme
192121 FORWARD (Fine-grained netwORk floW behAvior pReDiction) 01.04.2020 Project funding (Div. I-III)

Abstract

Nowadays most new applications are conceived as distributed, and in particular cloud-based, applications. The design of middleware layers and datacenters (DCs) then has to take into account all -- potentially conflicting -- requirements for coordination in distributed applications, including performance, fault tolerance, and consistency, making such design a hard task. A main issue with reconciling these concerns is the longstanding problem of asynchronous behavior of commodity networks and especially end hosts. Designers of distributed systems (DSs) thus assume that packets may be arbitrarily delayed (and reordered in transit or even dropped), and that processing times are unbounded. While many distributed interaction patterns can cope with absence of stronger guarantees due to their focus on throughput, many DSs benefit strongly from -- or even require -- synchronous behavior for specific coordination tasks achieved via primitives such as consensus. Assumptions and workarounds made in practice to overcome the unsolvability of consensus in asynchronous systems prone to process crash failures (such as DCs where processes fail due to various reasons) lead to complex protocols which are (i) costly and (ii) hard to implement correctly. To address (i), several authors recently used special HW and SW on switches to accelerate individual protocols (cf. consensus). While performance improvements achieved in isolated scenarios seem substantial, it is unclear what happens when many applications require support, from different such services. Some authors argue that such techniques violate important design principles and that networks should focus on packet forwarding. Also, these works do not address (ii).In contrast we propose in this project to focus on the core issue underlying the complexity of coordination protocols and thus DSs, namely asynchrony. However, we take a different approach than prior work trying to superimpose a synchrony layer on a regular asynchronous system thus leading to pessimistic bounds which are not tight enough for practical systems, or attempting to minimize latency and unpredictability for all communication in a DC resulting in gains for 99% of traffic but possibly worsened tail end latency (and ignoring computation). First, we leverage the insight that even DSs assuming synchrony do not require all communication and computation to be synchronous, but can for example already be devised using synchrony for reliable failure detection. Second, we focus on the actual sources of asynchrony in real-life DC infrastructures beyond pure communication and propose strategies to mitigate them based on advances on commodity HW and SW, making these systems(also) faster in the process by making them more deterministic rather than the other way around. This project dubbed BASIS (hybrid asynchronous/synchronous distributed systems) is concerned thus with exploiting opportunities in these advances and addressing corresponding challenges for implementing synchronous interaction as part of a hybrid DS architecture reconciling the needs of I. regular “as-fast-as-possible” bulk best effort interaction with those of II. timely sensitive and assured “control and coordination” interaction such as for failure detection or consensus. To achieve these goals this project concretely addresses the following four challenging research questions with focus on DCs:1. How to achieve timely bounded computation and network I/O on end hosts?2. How to achieve timely bounded network communication?3. How to reason about hybrid asynchronous/synchronous distributed systems?4. How to design and implement hybrid asynchronous/synchronous distributed applications?This proposal requests funding for a postdoctoral researcher (person hired) and three PhD students.Preliminary results -- obtained through seed funding including an award from Facebook -- are promising.
-