Hello everyone, I'm working on the puma implementation that comes with ns2.35 
and I found the next, first I explain a little bit of background about this 
protocol.
In the original Puma behavior only the receivers would join the multicast group 
and then the elected core (among the receivers) will generate Multicast 
Announcement to form the mesh of the network that will contain other receivers 
and the intermediate nodes that connect these receivers with the elected core. 
Also, these multicast announcement are supposed to create connectivity lists 
(routing information) in each node of the network even though they don't belong 
to the mesh and with this information a sender won't need to join the mesh, it 
would just send the data packet to the parent node (next hop) that sent the 
multicast announcement to it. And the packet will travel so, until reaches one 
mesh member and then it would be propagated through the mesh. So this behavior 
is expected from the implementation in ns2.35 of the puma protocol but 
analyzing (and running) the tcl file that comes with ns2.35 distribution 
(puma.tcl under /ns-2.35/tcl/ex) I noticed
 two things:


1.- If the senders Don't JOIN explicitly the multicast group, the other nodes 
won't forward their packets (these other nodes have also to join the multicast 
group explicitly, which breaks the purpose of the protocol).
2.- There's no mesh formation since the nodes that don't join the mesh 
explicitly don't even forward the multicast announcements generated by the 
receivers.

By the puma.tcl file all the nodes (except 5,  from #10 to #14 join explicitly 
to the multicast) and the lower part nodes in the grid that is formed in this 
tcl file don't get any file from the senders (node #0 to #4). These middle part 
nodes are supposed to join implicitly because the lower part nodes are 
receivers and they should by their mesh children.


Any comment/discussion about this implementation of the PUMA protocol would be 
really helpful.
Thanks in advance.

Reply via email to