A modular framework for verifying versatile distributed systems
Putting independent components together is a common design practice of distributed systems. Besides, there exists a wide range of interaction protocols that dictate how these components interact, which impacts their compatibility. However, the communication model itself always consists in a monolith...
Saved in:
Published in | Journal of logical and algebraic methods in programming Vol. 108; pp. 24 - 46 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | English |
Published |
Elsevier
01.11.2019
|
Subjects | |
Online Access | Get full text |
Cover
Loading…
Abstract | Putting independent components together is a common design practice of distributed systems. Besides, there exists a wide range of interaction protocols that dictate how these components interact, which impacts their compatibility. However, the communication model itself always consists in a monolithic description of the rules and properties of the communication. In this paper, we propose a mechanized framework for the compatibility checking of compositions of peers where the interaction protocol can be fine tuned through assembly of basic properties on the communication. These include whether the communication is point-to-point, multicast or convergecast, which ordering-policies are to be applied, applicative priorities, bounds on the number of messages in transit, and so on. Among these properties, we focus on a generic description of multicast communication that encompasses point-to-point and one-to-all communication as special cases. The components that form the communication model are specified in TLA+, and a system, composed of a communication model and a specification of the behavior of the peers (also in TLA+ ), is checked with the TLA+ model checker. Eventually we provide theoretical views on the relations between ordering-policies through the lenses of multicast and convergecast communication. |
---|---|
AbstractList | Putting independent components together is a common design practice of distributed systems. Besides, there exists a wide range of interaction protocols that dictate how these components interact, which impacts their compatibility. However, the communication model itself always consists in a monolithic description of the rules and properties of the communication. In this paper, we propose a mechanized framework for the compatibility checking of compositions of peers where the interaction protocol can be fine tuned through assembly of basic properties on the communication. These include whether the communication is point-to-point, multicast or convergecast, which ordering-policies are to be applied, applicative priorities, bounds on the number of messages in transit, and so on. Among these properties, we focus on a generic description of multicast communication that encompasses point-to-point and one-to-all communication as special cases. The components that form the communication model are specified in TLA+, and a system, composed of a communication model and a specification of the behavior of the peers (also in TLA+ ), is checked with the TLA+ model checker. Eventually we provide theoretical views on the relations between ordering-policies through the lenses of multicast and convergecast communication. |
Author | Chevrou, Florent Hurault, Aurélie Quéinnec, Philippe |
Author_xml | – sequence: 1 givenname: Florent surname: Chevrou fullname: Chevrou, Florent – sequence: 2 givenname: Aurélie surname: Hurault fullname: Hurault, Aurélie – sequence: 3 givenname: Philippe surname: Quéinnec fullname: Quéinnec, Philippe |
BackLink | https://hal.science/hal-02451058$$DView record in HAL |
BookMark | eNp9kD1PwzAQhj0UiVL6C1iyMiSc7Xw4E6oqvqRKLDBb19gGhySu7LSo_x6HwsLAdF_ve6d7LshscIMm5IpCRoGWN23WdtjvMga0zqDIAMSMzBkvWMoYiHOyDKEFiFJRCU7n5HaV9E7tO_SJ8djrT-c_EuN8ctDemqMd3qYs4Gg7nSgbRm-3-1GrJBzDqPtwSc4MdkEvf-KCvN7fvawf083zw9N6tUkbzsSYMswrDVCoRvGKldVWIdO8NijiQOVK1QJRqIYbBlUuGqVLLgzLaYk8VjVfkOvT3nfs5M7bHv1ROrTycbWRUw9YXlAoxIFGbX3SNt6F4LWRjR3jB24YPdpOUpATLNnKb1hygiWhkBFW9PI_3t9j_7m-AE8UdHQ |
CitedBy_id | crossref_primary_10_1016_j_is_2021_101765 crossref_primary_10_1016_j_jlamp_2020_100580 |
Cites_doi | 10.1016/S0167-6423(02)00022-9 10.1145/359545.359563 10.1093/comjnl/37.4.269 10.1007/s00165-016-0379-x 10.1016/j.entcs.2004.05.007 10.1016/0096-0551(87)90010-5 10.1016/0890-5401(90)90059-Q 10.3233/FI-1986-9202 10.1002/sec.1220 10.1145/322374.322380 10.1007/s004460050018 10.1007/s00446-009-0084-6 10.1109/32.508313 10.1002/(SICI)1097-024X(19980725)28:9<963::AID-SPE179>3.0.CO;2-9 10.1145/227210.227229 10.1016/j.scico.2011.03.009 10.1006/inco.1995.1003 10.1109/TIT.1983.1056620 |
ContentType | Journal Article |
Copyright | Distributed under a Creative Commons Attribution 4.0 International License |
Copyright_xml | – notice: Distributed under a Creative Commons Attribution 4.0 International License |
DBID | AAYXX CITATION 1XC VOOES |
DOI | 10.1016/j.jlamp.2019.05.008 |
DatabaseName | CrossRef Hyper Article en Ligne (HAL) Hyper Article en Ligne (HAL) (Open Access) |
DatabaseTitle | CrossRef |
DatabaseTitleList | |
DeliveryMethod | fulltext_linktorsrc |
Discipline | Computer Science |
EndPage | 46 |
ExternalDocumentID | oai_HAL_hal_02451058v1 10_1016_j_jlamp_2019_05_008 |
GroupedDBID | --M 0R~ 4.4 457 4G. 7-5 8P~ AAEDT AAEDW AAIKJ AAKOC AALRI AAOAW AATTM AAXKI AAXUO AAYFN AAYWO AAYXX ABBOA ABJNI ABMAC ABXDB ACDAQ ACGFS ACRLP ACVFH ADBBV ADCNI ADEZE ADVLN AEBSH AEIPS AEKER AENEX AEUPX AFJKZ AFPUW AFTJW AFXIZ AGCQF AGHFR AGRNS AGUBO AIALX AIEXJ AIGII AIIUN AIKHN AITUG AKBMS AKRWK AKYEP ALMA_UNASSIGNED_HOLDINGS AMRAJ ANKPU AOUOD AXJTR BKOJK BLXMC BNPGV CITATION EBS EFJIC EJD FDB FIRID FYGXN GBLVA GBOLZ HZ~ KOM M41 O9- OAUVE RIG ROL SPC SPCBC SSH SSV SSZ T5K ~G- 1XC AACTN VOOES |
ID | FETCH-LOGICAL-c328t-2a47e005dcd37267bda2e39fa8a47d4dd98aa8dc3f20748cde638f2416a38cd93 |
ISSN | 2352-2208 |
IngestDate | Fri May 09 12:21:40 EDT 2025 Thu Apr 24 23:08:49 EDT 2025 Tue Jul 01 00:37:50 EDT 2025 |
IsDoiOpenAccess | true |
IsOpenAccess | true |
IsPeerReviewed | true |
IsScholarly | true |
Keywords | Multicast Asynchronous communication Compatibility checking Distributed systems TLA+ |
Language | English |
License | Distributed under a Creative Commons Attribution 4.0 International License: http://creativecommons.org/licenses/by/4.0 |
LinkModel | OpenURL |
MergedId | FETCHMERGED-LOGICAL-c328t-2a47e005dcd37267bda2e39fa8a47d4dd98aa8dc3f20748cde638f2416a38cd93 |
OpenAccessLink | https://hal.science/hal-02451058 |
PageCount | 23 |
ParticipantIDs | hal_primary_oai_HAL_hal_02451058v1 crossref_citationtrail_10_1016_j_jlamp_2019_05_008 crossref_primary_10_1016_j_jlamp_2019_05_008 |
ProviderPackageCode | CITATION AAYXX |
PublicationCentury | 2000 |
PublicationDate | 2019-11-00 2019-11 |
PublicationDateYYYYMMDD | 2019-11-01 |
PublicationDate_xml | – month: 11 year: 2019 text: 2019-11-00 |
PublicationDecade | 2010 |
PublicationTitle | Journal of logical and algebraic methods in programming |
PublicationYear | 2019 |
Publisher | Elsevier |
Publisher_xml | – name: Elsevier |
References | Durán (10.1016/j.jlamp.2019.05.008_br0150) 2012; 77 Garlan (10.1016/j.jlamp.2019.05.008_br0170) 1997 Chevrou (10.1016/j.jlamp.2019.05.008_br0110) 2016; 28 Lamport (10.1016/j.jlamp.2019.05.008_br0230) 2002 Mauw (10.1016/j.jlamp.2019.05.008_br0280) 1994; 37 Holzmann (10.1016/j.jlamp.2019.05.008_br0190) 2004 Lamport (10.1016/j.jlamp.2019.05.008_br0220) 1978; 21 Hull (10.1016/j.jlamp.2019.05.008_br0200) 1987; 12 Brand (10.1016/j.jlamp.2019.05.008_br0070) 1983; 30 Lynch (10.1016/j.jlamp.2019.05.008_br0270) 1996 van Renesse (10.1016/j.jlamp.2019.05.008_br0300) 1996; 39 Engels (10.1016/j.jlamp.2019.05.008_br0160) 2002; 44 Baeten (10.1016/j.jlamp.2019.05.008_br0040) 1986; IX Wilcox (10.1016/j.jlamp.2019.05.008_br0340) 2015 Li (10.1016/j.jlamp.2019.05.008_br0260) 2004; vol. 3274 Lamport (10.1016/j.jlamp.2019.05.008_br0240) 2009; vol. 5684 Brogi (10.1016/j.jlamp.2019.05.008_br0060) 2004; 105 Liu (10.1016/j.jlamp.2019.05.008_br0250) 1999; vol. 33(5) Basu (10.1016/j.jlamp.2019.05.008_br0050) 2012 Charron-Bost (10.1016/j.jlamp.2019.05.008_br0080) 1996; 9 Hickey (10.1016/j.jlamp.2019.05.008_br0180) 1999; vol. 1579 Taylor (10.1016/j.jlamp.2019.05.008_br0330) 1996; 22 Aldini (10.1016/j.jlamp.2019.05.008_br0030) 2015; 8 Allen (10.1016/j.jlamp.2019.05.008_br0010) 1994 Kshemkalyani (10.1016/j.jlamp.2019.05.008_br0210) 2011 Chevrou (10.1016/j.jlamp.2019.05.008_br0120) Alur (10.1016/j.jlamp.2019.05.008_br0020) 1996; vol. 1055 Camilleri (10.1016/j.jlamp.2019.05.008_br0130) 1995; 116 Segall (10.1016/j.jlamp.2019.05.008_br0310) 1983; 29 Tel (10.1016/j.jlamp.2019.05.008_br0320) 2000 Drăgoi (10.1016/j.jlamp.2019.05.008_br0140) 2016 Cleaveland (10.1016/j.jlamp.2019.05.008_br0100) 1990; 87 Charron-Bost (10.1016/j.jlamp.2019.05.008_br0090) 2009; 22 van Renesse (10.1016/j.jlamp.2019.05.008_br0290) 1998; 28 |
References_xml | – volume: 44 start-page: 253 issue: 3 year: 2002 ident: 10.1016/j.jlamp.2019.05.008_br0160 article-title: A hierarchy of communication models for message sequence charts publication-title: Sci. Comput. Program. doi: 10.1016/S0167-6423(02)00022-9 – volume: 21 start-page: 558 issue: 7 year: 1978 ident: 10.1016/j.jlamp.2019.05.008_br0220 article-title: Time, clocks and the ordering of events in a distributed system publication-title: Commun. ACM doi: 10.1145/359545.359563 – volume: 37 start-page: 269 issue: 4 year: 1994 ident: 10.1016/j.jlamp.2019.05.008_br0280 article-title: An algebraic semantics of basic message sequence charts publication-title: Comput. J. doi: 10.1093/comjnl/37.4.269 – volume: 28 start-page: 847 issue: 5 year: 2016 ident: 10.1016/j.jlamp.2019.05.008_br0110 article-title: On the diversity of asynchronous communication publication-title: Form. Asp. Comput. doi: 10.1007/s00165-016-0379-x – start-page: 357 year: 2015 ident: 10.1016/j.jlamp.2019.05.008_br0340 article-title: A framework for implementing and formally verifying distributed system – year: 2002 ident: 10.1016/j.jlamp.2019.05.008_br0230 – volume: 105 start-page: 73 year: 2004 ident: 10.1016/j.jlamp.2019.05.008_br0060 article-title: Formalizing web service choreographies publication-title: Electron. Notes Theor. Comput. Sci. doi: 10.1016/j.entcs.2004.05.007 – volume: 12 start-page: 27 issue: 1 year: 1987 ident: 10.1016/j.jlamp.2019.05.008_br0200 article-title: Occam - a programming language for multiprocessor systems publication-title: Comput. Lang. doi: 10.1016/0096-0551(87)90010-5 – volume: 87 start-page: 58 issue: 1/2 year: 1990 ident: 10.1016/j.jlamp.2019.05.008_br0100 article-title: Priorities in process algebras publication-title: Inf. Comput. doi: 10.1016/0890-5401(90)90059-Q – ident: 10.1016/j.jlamp.2019.05.008_br0120 – volume: vol. 5684 start-page: 36 year: 2009 ident: 10.1016/j.jlamp.2019.05.008_br0240 article-title: The PlusCal algorithm language – volume: IX start-page: 127 year: 1986 ident: 10.1016/j.jlamp.2019.05.008_br0040 article-title: Syntax and defining equations for an interrupt mechanism in process algebra publication-title: Fundam. Inform. doi: 10.3233/FI-1986-9202 – year: 2011 ident: 10.1016/j.jlamp.2019.05.008_br0210 – volume: 8 start-page: 2933 issue: 16 year: 2015 ident: 10.1016/j.jlamp.2019.05.008_br0030 article-title: Modeling and verification of trust and reputation systems publication-title: Secur. Commun. Netw. doi: 10.1002/sec.1220 – year: 2004 ident: 10.1016/j.jlamp.2019.05.008_br0190 – volume: vol. 3274 start-page: 320 year: 2004 ident: 10.1016/j.jlamp.2019.05.008_br0260 article-title: Active and concurrent topology maintenance – start-page: 71 year: 1994 ident: 10.1016/j.jlamp.2019.05.008_br0010 article-title: Formalizing architectural connection – volume: vol. 33(5) start-page: 80 year: 1999 ident: 10.1016/j.jlamp.2019.05.008_br0250 article-title: Building reliable, high-performance communication systems from components – year: 2000 ident: 10.1016/j.jlamp.2019.05.008_br0320 – start-page: 191 year: 2012 ident: 10.1016/j.jlamp.2019.05.008_br0050 article-title: Deciding choreography realizability – volume: 30 start-page: 323 issue: 2 year: 1983 ident: 10.1016/j.jlamp.2019.05.008_br0070 article-title: On communicating finite-state machines publication-title: J. ACM doi: 10.1145/322374.322380 – volume: 9 start-page: 173 issue: 4 year: 1996 ident: 10.1016/j.jlamp.2019.05.008_br0080 article-title: Synchronous, asynchronous, and causally ordered communication publication-title: Distrib. Comput. doi: 10.1007/s004460050018 – volume: 22 start-page: 49 issue: 1 year: 2009 ident: 10.1016/j.jlamp.2019.05.008_br0090 article-title: The heard-of model: computing in distributed systems with benign faults publication-title: Distrib. Comput. doi: 10.1007/s00446-009-0084-6 – start-page: 169 year: 1997 ident: 10.1016/j.jlamp.2019.05.008_br0170 article-title: An architecture description interchange language – volume: 22 start-page: 390 issue: 6 year: 1996 ident: 10.1016/j.jlamp.2019.05.008_br0330 article-title: A component- and message-based architectural style for GUI software publication-title: IEEE Trans. Softw. Eng. doi: 10.1109/32.508313 – volume: 28 start-page: 963 issue: 9 year: 1998 ident: 10.1016/j.jlamp.2019.05.008_br0290 article-title: Building adaptive systems using Ensemble publication-title: Softw. Pract. Exp. doi: 10.1002/(SICI)1097-024X(19980725)28:9<963::AID-SPE179>3.0.CO;2-9 – volume: 39 start-page: 76 issue: 4 year: 1996 ident: 10.1016/j.jlamp.2019.05.008_br0300 article-title: A flexible group communications system publication-title: Commun. ACM doi: 10.1145/227210.227229 – volume: 77 start-page: 870 issue: 7–8 year: 2012 ident: 10.1016/j.jlamp.2019.05.008_br0150 article-title: A generic framework for n-protocol compatibility checking publication-title: Sci. Comput. Program. doi: 10.1016/j.scico.2011.03.009 – volume: vol. 1579 start-page: 119 year: 1999 ident: 10.1016/j.jlamp.2019.05.008_br0180 article-title: Specifications and proofs for Ensemble layers – volume: 116 start-page: 26 issue: 1 year: 1995 ident: 10.1016/j.jlamp.2019.05.008_br0130 article-title: CCS with priority choice publication-title: Inf. Comput. doi: 10.1006/inco.1995.1003 – volume: vol. 1055 start-page: 35 year: 1996 ident: 10.1016/j.jlamp.2019.05.008_br0020 article-title: An analyzer for message sequence charts – volume: 29 start-page: 23 issue: 1 year: 1983 ident: 10.1016/j.jlamp.2019.05.008_br0310 article-title: Distributed network protocols publication-title: IEEE Trans. Inf. Theory doi: 10.1109/TIT.1983.1056620 – start-page: 400 year: 2016 ident: 10.1016/j.jlamp.2019.05.008_br0140 article-title: A partially synchronous language for fault-tolerant distributed algorithms – year: 1996 ident: 10.1016/j.jlamp.2019.05.008_br0270 |
SSID | ssj0001687831 |
Score | 2.123976 |
Snippet | Putting independent components together is a common design practice of distributed systems. Besides, there exists a wide range of interaction protocols that... |
SourceID | hal crossref |
SourceType | Open Access Repository Enrichment Source Index Database |
StartPage | 24 |
SubjectTerms | Computer Science Embedded Systems Software Engineering |
Title | A modular framework for verifying versatile distributed systems |
URI | https://hal.science/hal-02451058 |
Volume | 108 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1Lb9NAEF6F9MKFN6IU0ApxxFW8fq1PyAIil1YRiBb1trL3QRuZpIriHnrjnzP7jKNUqHCx4vXGTnY-z87OznyD0LtMz4IyVpEqFI9SmomoFZmMFC3TlugKRsJE-c7y-iz9cp6dj0a_h9kl6_aQ39yaV_I_UoU2kKvOkv0HyYabQgN8BvnCESQMxzvJuNKlzEwc6dTHWJmwwR_wcJu_pN1h0LmTmmbTFrfSFuaApnzXMPXa0NC4dj_1zvIld6WmbdS5jen65Wc9Ex0gr1fL3pjC3XI1iKap-1XTd5bcoHf78t1lgNO33jbpEmB84-G5kkN3RFy6vLzgI3MT-kaNETDxIkImdEvnulOnNdPB_Gs9kjua3ToZ5odzeFE0z2hcGsZVd58tHu26-s6-fpqyk6PZ8fbVQKhdVyfsAuStN57BwqTXsIDeI7DSIGO0Vx0d17ONoy6nBTV1LcM_8exVJk5w5wdtWTj3LryD3hgsp4_QAydQXFnYPEYjuXiCHvoqHtgp9afoQ4UdinBAEQYU4YAiHFCEByjCDkXP0Nn08-nHOnJlNSKeELqOSJMWEpSv4CIpSF60oiEyKVVD4YJIhShp01DBE0XAvqRcSHifFVh6eZPAWZk8R-PFciFfIDwpSd62cdbkqc6YzGmct4pyCm2wEFdqHxE_FIw7znld-qRjPrhwzsz4MT1-bJIxGL999D586cpSrvy9-1stSd_zdum-vEunA3R_g-hXaLxe9fI1mJzr9o0DxR-6VoPS |
linkProvider | Elsevier |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+Modular+Framework+for+Verifying+Versatile+Distributed+Systems&rft.jtitle=Journal+of+logical+and+algebraic+methods+in+programming&rft.au=Chevrou%2C+Florent&rft.au=Hurault%2C+Aur%C3%A9lie&rft.au=Qu%C3%A9innec%2C+Philippe&rft.date=2019-11-01&rft.pub=Elsevier&rft.issn=2352-2208&rft.volume=108&rft.spage=24&rft.epage=46&rft_id=info:doi/10.1016%2Fj.jlamp.2019.05.008&rft.externalDBID=HAS_PDF_LINK&rft.externalDocID=oai_HAL_hal_02451058v1 |
thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2352-2208&client=summon |
thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2352-2208&client=summon |
thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2352-2208&client=summon |