View Full Version : About routing and knowing topology
wbschindler
04-06-2009, 06:46 PM
I just got back from ESC in San Jose. Great show and I found Synapse.
Now I do have a few (well a lot) of questions.
Assume I have some nodes, 'A', 'B', 'C' and 'D'
The nodes are physically spaced so that RF communication can take place only between two adjacent nodes. That is, A<->B<->C<->D.
Silly example but useful for this question. Now, further assume that all nodes are on the SAME channel with the SAME network id. Can I know the route from A<->D or can I broadcast from A->D with a "max hops" and know that 'B' is the first node on the mesh towards 'C' (can I see something back?) and subsequently 'D'? Will/Can 'B' reply to 'A' that they "know" the route (but perhaps the hop count prevents fully routing to 'D')?
The above is a bit like "traceroute" and I do understand that the route can change but can I know anything about routing at all?
Given the same "linear topology" if I change node 'C' to be a DIFFERENT network ID, will I still route a packet from 'B' to 'D' with 'C' just doing a "store and forward"? That is, will all Synapse nodes route all packets, regardless of network id? (This assumes network id is not 0xffff).
I am guessing not, but am I wrong in this?
That is not the extent of my questions, but is a start.
Thanks
Bill Schindler
Secom International
mgenti
04-06-2009, 08:27 PM
Can I know the route from A<->D or can I broadcast from A->D with a "max hops" and know that 'B' is the first node on the mesh towards 'C' (can I see something back?) and subsequently 'D'?
In the current version there is not a way to see the route a packet took. We do have some scripts that can be loaded into Portal to help "map" out a network.
Will/Can 'B' reply to 'A' that they "know" the route (but perhaps the hop count prevents fully routing to 'D')?
Yes, you can limit the number of hops that a node is allowed to use to determine a route. See the mesh configuration parameters in the SNAP Reference Manual.
The above is a bit like "traceroute" and I do understand that the route can change but can I know anything about routing at all?
The best option for the currently released version of SNAP would be to use some scripts in Portal to map out all possible routes. In the upcoming 2.2 version of SNAP and Portal we will be adding better support for determining routes.
Given the same "linear topology" if I change node 'C' to be a DIFFERENT network ID, will I still route a packet from 'B' to 'D' with 'C' just doing a "store and forward"? That is, will all Synapse nodes route all packets, regardless of network id? (This assumes network id is not 0xffff).
I am guessing not, but am I wrong in this?
No, if node C is on a different network ID he will not route or hear any packets from other nodes on the same channel.
wbschindler
04-06-2009, 09:29 PM
Thanks for the quick reply. You did in fact confirm my suspicion that the routing could not be known, at least now.
Now, I have a serial bridge running (I think, will test tomorrow), but I am confused at bit more ... silly me, I am confused alot.
If I have a node on the network and I don't want to cross-connect to a serial port (for further processing), given I have "Stdio" which is really "StdIn and StdOout" how do I capture the flow? That is, I get a character from the wireless network, properly addressed to me, how do I capture it in SnapPy? I can "print" to send?? but how do I "getc()"?
In my application, I would very much like to get the Network RX data, do something with it, and then (optionally) forward it elsewhere. How do I do this?
I realize that I am a novice in your forum so I hope you can forgive the "silly" questions.
Thanks again
Bill
mgenti
04-06-2009, 10:06 PM
If I have a node on the network and I don't want to cross-connect to a serial port (for further processing), given I have "Stdio" which is really "StdIn and StdOout" how do I capture the flow? That is, I get a character from the wireless network, properly addressed to me, how do I capture it in SnapPy? I can "print" to send?? but how do I "getc()"?
You can register for a STDIN event in your SNAPpy script so that you can receive notification of characters. There should be some examples in the included scripts or in the SNAP reference manual. Also check out this older thread.
vamsee.vardhan
09-03-2009, 04:53 PM
I am thinking of using the .DOT file to map Network Address <-> MAC address <-> Physical Topology. But as I see, there is no info about who is beside the portal. Can I know this ? If so how ? Please reply at the earliest.
mgenti
09-03-2009, 05:01 PM
What program are you using to view the .DOT file? We tested this functionality in the latest beta and did not see any problems with it generating files.
vamsee.vardhan
09-03-2009, 05:18 PM
Thanks for quick reply.
I just used wordpad. Is there any support within? Didn't see any documentation on the option.
It would be great if there is anything that you would like to comment from the application perspective also. like Is there any other option which would help me know more about the network ?
mgenti
09-03-2009, 09:38 PM
I would recommend using a .DOT file viewer to see the connections between nodes.
You can do a search with your favorite search engine and a few options should come up since it is a open file format.
vBulletin® v3.7.5, Copyright ©2000-2010, Jelsoft Enterprises Ltd.