Professional Documents
Culture Documents
IMPLEMENTATION
5.1 OVERVIEW
In the proposed work, one-phase pull diffusion is used to route data, interests,
and control messages across the sensor networks. The used algorithm reduces the
number of control messages in sensor networks. Since the reinforcement of the
gradient is implicitly done by selecting the lowest latency path, there is no need of
exploratory data and reinforcement messages.
The sink sends the interest message to the source, when there is a need for the
sink to receive data. Each node will have timer which checks for the timeout of
gradient, interest, and reinforcement message. It refreshes periodically for each timeout
and sends the message. Forwarding of message is done includes the header. The header
includes message, message type, source port, data length, packet number, next hop, last
hop, next port and the filter handle entry. The message is forwarded in to the network.
Rmst filter is added to the each sensor node over the diffusion. It is called by
diffusion core whenever a message available for this filter. The message is received by
receive method. Whenever a message is received the message has to be processed. If
the message received uses the transport layer, then the message is processed.
Otherwise the message is sent back to the diffusion core.
It checks for the new messages that it receive, only those messages are sent to
other nodes. If old data message is received at the sink, the sink negatively reinforced a
reinforced path. The new data messages are maintained until the entire blob is
received. If same data message is sent twice to the sink, the message is suppressed by
removing the reinforced path.
The data from the source to sink is sent through a reinforced path. The data is
sent as many fragments to the sink. The fragments are cached at the sink and source if
it is a non-caching mode. But in caching mode, each node caches the received
fragment. A fragment map is maintained in which the fragments are stored. Each
fragment is indexed by fragment id.
The lost or missing fragments are maintained in the hole map. NACK is sent by
for the holes in the hole map. It is forwarded to the source to get the lost fragments. If
it is caching mode then it is forwarded to the upstream neighbor. There is a check made
to see if the missing fragment was negatively acknowledged. If so, delete from the hole
map upon receiving the fragment. When the sink receives the whole data, it will
inform the upstream node that it had received the data.
Rmst source is added to the sensor node, which generates a large blob of data
and send to the sink. The send function of rmst will check for any subscriptions given
by sink. If it looks for the subscriptions, the generated blob is sent in the form of
fragments to the sink.
Rmst sink is added to the sensor node. It sends interest message to the source.
When all the fragments sent by the source have been received then sink automatically
unsubscribes.
Evaluation of RMST is done in both caching mode and non-caching mode. The
experiments were done in Emstar simulator. One phase pull diffusion and RMST
attached to each sensor node.
Experiments were done by keeping the field size and the data size constant.
The 2500 bytes of blob was broken in to 50 100-byte fragments that were transferred
from source to sink. The number of nodes and the noise models are varied. The delay
seconds are calculated and graph is plotted for both caching and non-caching mode.