[net2-wg] Proposal for dissemination structure and interfaces
Omprakash Gnawali
gnawali at usc.edu
Fri Dec 16 18:52:32 PST 2005
> On Dec 15, 2005, at 12:13 AM, Omprakash Gnawali wrote:
>
> >
> > Following up on earlier discussion on multiple sink scenario, how
> > would one accomplish the following using this proposed interface:
> >
> > A node wants to send certain messages to the entire network. The
> > messages are dynamically generated or as a response to some user
> > interaction. If one simply uses the change function, the consumers can
> > override or never receive the values prior to the change (ignore older
> > seqno, for example). This is not a desired behavior. The consumers
> > would like to receive all the messages.
>
> Yes. To some degree, you can't assure that all nodes will reliably
> receive all messages. You might be producing values at a rate faster
> than the network can cache. You can, however, assure that a node will
> eventually receive the most recent message.
>
> I don't think that the "change" command is something that lots of
> programs are going to use. It's kind of tricky, as you point out. I
> think that more commonly values will originate from *outside* the
> network. It just seemed problematic to not allow a protocol on top of
> dissemination to update values.
>
> So, to provide the functionality you describe, you could do one of
> two things:
>
> 1) Have the user program send dissemination data packets to a node
> connected on a serial link. The user program (or a library) manages
> the (version, key, value) tuple and updates it as needed. The node
> acts as if it just received an update, and begins propagating it.
>
The proposed dissemination interface requires that the key is
determined at compile time. If I know that I need to disseminate
exactly this particular key, this interface works great. What if I do
not know the number of keys I will need to disseminate ?
>From what I understand, the proposed interface is geared towards
supporting dissemination of programs and statically known number of
states where the collectors are only interested in the latest
version. It does not address the case when a node does not know the
keys up front, generates a message, derives a key out of it, and wants
to use the disseminate functionality.
Can we allow dynamically generated keys ?
More information about the net2-wg
mailing list