An experience report on the verification of autonomic protocols in the cloud

  • Authors:
  • Gwen Salaün;Fabienne Boyer;Thierry Coupaye;Noel De Palma;Xavier Etchevers;Olivier Gruber

  • Affiliations:
  • Grenoble INP, Inria, France;UJF, Grenoble, France;Orange Labs, Issy-les-Moulineaux, France;UJF, Grenoble, France;Orange Labs, Issy-les-Moulineaux, France;UJF, Grenoble, France

  • Venue:
  • Innovations in Systems and Software Engineering
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Cloud applications are often complex distributed applications composed of multiple software components running on separate virtual machines. Setting up, (re)configuring, and monitoring these applications are complicated tasks because a software application may depend on several remote software and virtual machine configurations. These management tasks involve many complex protocols, which fully automate these tasks while preserving application consistency as well as some key properties. In this article, we present two experiences we had in formally specifying and verifying such protocols. The first one aims at designing a reconfiguration protocol of a component-based platform, intended as the foundation for building robust dynamic systems. The second aims at automating the configuration task of a set of virtual machines running a set of interconnected software components. Both applications are specified using the LNT process algebra and verified using the CADP verification toolbox. The use of formal specification languages and tools was a success. We conclude with a number of lessons we have learned while working on this topic in the last 3 years.