[From nobody Wed Jul 13 02:53:00 2011 Message-ID: <4684D6F4.2020808@cs.jhu.edu> Date: Fri, 29 Jun 2007 05:55:00 -0400 From: Yair Amir <yairamir@cs.jhu.edu> User-Agent: Thunderbird 1.5.0.12 (Windows/20070509) MIME-Version: 1.0 To: "Pilling, Michael" <Michael.Pilling@dsto.defence.gov.au> Subject: Re: [Spread-users] Feature interaction between Spread service types References: <0F92FEC93A5E3644B2ED0114C09D35462E6CC5@ednex514.dsto.defence.gov.au> In-Reply-To: <0F92FEC93A5E3644B2ED0114C09D35462E6CC5@ednex514.dsto.defence.gov.au> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi Michael, A SAFE message will preserve agreed order, so of course it will be delivered only after all previous messages (what ever their service is) will be delivered. Causal also preserves FIFO ordering, AGREED also preserves CAUSAL ordering, and SAFE also preserves AGREED ordering. If you want to look at the exact specification, my PhD thesis has a definition. If you want to understand these things in a deep level, the best is to read John Schultz MSc thesis, which is accessible on my web page. As for how these protocols are implemented, they are not implemented as the original cbcast, cabcast or gbcast from Cornell. In fact, Spread does support a more elaborated fault model that includes network partitions and is called Extended Virtual Synchrony as opposed to the original Virtual Synchrony that did not support network partition. Cheers, :) Yair. http://www.cs.jhu.edu/~yairamir Pilling, Michael wrote: > Hello, > > I'm wondering if anyone could tell me how interleaving FIFO, CAUSAL, > AGREED and SAFE messages works. > > I'm developing an application level protocol and would like to use the > cheapest primatives possible. > Generally for most of the protocol I'd naturally choose either CAUSAL or > AGREED, but I am wondering if I do > a series of these and then do a SAFE message, will the SAFE message > flush out all the undelivered CAUSAL and AGREED > messages and then deliver the SAFE message? I.e. does spread provide any > guarantees across these types? > > Also I'm assuming > FIFO implements fbcast > CAUSAL implements cbcast > AGREED implements cabcast > and wonder if I'm correct. Also is SAFE an dynamically safe > implementation of gbcast, and does it provide an order consistant with > CAUSAL or AGREED? > > Thanks for your help. > > Regards, > Michael > > ---- > Dr Michael Pilling > C3I Division > DSTO > PO Box 1500 > Edinburgh SA 5111 > Phone: 08 8259 7017 Fax: 08 8259 5589 > email: Michael.Pilling@dsto.defence.gov.au > > > IMPORTANT: This email remains the property of the Australian Defence > Organisation and is subject to the jurisdiction of section 70 of the > CRIMES ACT 1914. If you have received this email in error, you are > requested to contact the sender and delete the email. > > > ------------------------------------------------------------------------ > > _______________________________________________ > Spread-users mailing list > Spread-users@lists.spread.org > http://lists.spread.org/mailman/listinfo/spread-users ]