|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sentilla.system.DriverAdapter
com.sentilla.platform.cmote.Protocol
com.sentilla.platform.cmote.MimeoDisseminationProtocol
public class MimeoDisseminationProtocol
Viral dissemination protocol for sending messages from a client application to a mote network.
This is the client application version of the mimeo dissemination protocol. This version is used by client applications to send messages to a mote network.
The mimeo dissemination protocol is a viral dissemination protocol. It will transmit messages to a network and they will be maintained in that network until replaced. If a new mote enters the network after a message has been disseminated, that message will be disseminated to the new mote. These messages constantly persist in the network, and will continue being disseminated to new motes as long as the message exists in the network. However, if a message is replaced by sending a new message, the old message can not be guaranteed to be disseminated to new motes.
It can take up to 40 seconds per hop for a message to be disseminated with this protocol. Care should be taken not to transmit message too quickly. If a message is replaced before the old message has reached all the motes then there is a possibility that some motes may not received the old message.
The protocol does not make any guarantees about what order messages will be received in. It is possible that messages will be received out of order.
The available payload for this protocol is 70 bytes.
This protocol supports the BroadcastAddress class and the Mac64Address class.
Protocol
,
Mac64Address
,
BroadcastAddress
Nested Class Summary | |
---|---|
static class |
MimeoDisseminationProtocol.MimeoReceiver
Receiver implementation for the MimeoDisseminationProtocol. |
static class |
MimeoDisseminationProtocol.MimeoSender
Sender implementation for the MimeoDisseminationProtocol. |
Field Summary | |
---|---|
Protocol |
proto
|
Fields inherited from class com.sentilla.system.DriverAdapter |
---|
m_nextDriver |
Constructor Summary | |
---|---|
MimeoDisseminationProtocol()
|
Method Summary | |
---|---|
boolean |
doesInstanceMatch(Object obj)
Returns true when obj instanceof MimeoDataMessage. |
String |
getDriverName(int n)
Returns the strings "mimeoproto", "viral" and "dissem". |
Receiver |
newReceiver()
Returns a new Receiver object for the MimeoDisseminationProtocol. |
Sender |
newSender()
Returns a new Sender object for the MimeoDisseminationProtocol. |
void |
stackReceive(Receiver rcvr)
Needed by client applications to snoop on other client communications. |
void |
stackSend(Sender s)
Sends messages with Mimeo. |
Methods inherited from class com.sentilla.system.DriverAdapter |
---|
getNextDriver, setNextDriver |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public Protocol proto
Constructor Detail |
---|
public MimeoDisseminationProtocol()
Method Detail |
---|
public void stackReceive(Receiver rcvr)
stackReceive
in class Protocol
rcvr
- Receiver object containing received objectReceiver
public void stackSend(Sender s)
stackSend
in class Protocol
s
- Sender object containing the object to be sent.Sender
,
Protocol
,
Dispatcher
public Sender newSender()
newSender
in class Protocol
Sender
public Receiver newReceiver()
newReceiver
in class Protocol
Receiver
public boolean doesInstanceMatch(Object obj)
doesInstanceMatch
in class Protocol
obj
- the object to test.
Protocol
public String getDriverName(int n)
getDriverName
in interface Driver
getDriverName
in class DriverAdapter
Drivers
,
Driver
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |