[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MirageOS-devel] How to implement protocols?

looking at a lot of service abstraction stuff, people get hung up on 
the reliable byte stream (the very weird service that TCP provides)
versus reliable message paradigm - 
here's a way to think about it (maybe)

a reliable message protocol could be viewed as a bunch of RPCs with no
return val, but basially you can call them, and they return ok when
the message is acked by the protocol below....that means you can
invoke a bunch of them non-blocking, or in a bunch of seperate threads
(but you need to interface to the resource management (akaa flow &
congestion control) but that's at the number of threads...

a reliable byte stream isn't a stream - its a vector of 
virtual shared memory (i.e. we don't care where it really is)
between a sender thread and a recipient thread,
with shared index (ptr) to the 
lower edge (updated from reader side) 
and upper edge (updated from writer side)
and the actual content....in between...


MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.