OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsn message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [wsn] What does it mean for the NP to "send" a message?


On Thu, 2005-01-13 at 11:43 -0500, David Hull wrote:
> Intuitively, sending a message means something like putting it on the
> wire so that the Consumer will receive it, but as it stands, this
> notion is not precise enough for our purposes.   The distinction
> between sending a message and putting it on the wire has just come up
> in the context of continuity, and it's clearly important for
> reliability as well.  I suspect that defining the concept rigorously
> will also clarify the semantics of other delivery-oriented policies
> such as durability, queuing, one-of-N delivery and so forth.
> 
> Since this is a sticky question, it seems best to steal leverage
> someone else's work.  As it happens, the two Reliability standards
> both define a two-tiered model which I think will fit nicely here.
> Since we're OASIS, I'll use the WS-Reliability TC's terminology.  In
> this view, getting a message from producer to consumer is a three-step
> process involving four entities.
>      1. The producer submits a message to the sender (WS-RM actually
>         calls it a "Sending RMP", that is a "Sending Reliable
>         Messaging Processor", but I want to use the same notion for
>         other purposes as well).
>      2. The sender sends the message to the receiver, wrapping it
>         appropriately, noting serial numbers, handling
>         acknowledgments, etc.
>      3. The receiver delivers the message to the consumer.
> In WS-R, the consumer also responds to the receiver and the receiver
> and sender cooperate to allow the sender to notify the producer that
> the message has arrived.  This is clearly central to WS-R, but in the
> present context I'm just trying to emphasize the split between the
> producer/consumer tier and the sender/receiver tier.
> 
> In the case of continuity in the face of subscription property
> changes, the issue is that certain messages may never be submitted,
> not that submitted messages will never be sent.
> 
> I believe that the cleanest semantic for BaseN is that
>       * Each notification message relevant to a subscription will be
>         submitted exactly once.
>       * The messages on a given topic will be submitted in the order
>         their corresponding events occurred.
> There is a further question of how messages on multiple topics may be
> interleaved, and whether separate subscriptions see the same
> interleaving.  For now, I'd like to raise this as an open issue.

I guess I should read messages in least recently sent order...

I'd just like to say that I disagree with specifying these semantic in
BaseN. I feel that these things should be left to policy statements.

/Sam

> In this view, all further semantics, including reliability, security,
> durability and so forth, are between the sender and the receiver.  The
> reliability standards are very careful not to say what kind of
> connection exists between producer and sender, or between receiver and
> consumer.  The exact meaning of submit and deliver are left
> implementation dependent.  The strong implication is that they are
> generally local calls with a single process space, and thus are
> reliable and secure barring catastrophes.  In any event, guarantees of
> reliability are only made between the sender and receiver, and I
> believe we should follow this pattern for all non-trivial delivery
> semantics.
> 
-- 
Sam Meder <meder@mcs.anl.gov>
The Globus Alliance - University of Chicago
630-252-1752




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]