coreemu / core

Common Open Research Emulator
BSD 2-Clause "Simplified" License
684 stars 165 forks source link

How to do multi-hop wireless network using CORE #447

Closed szl0144 closed 4 years ago

szl0144 commented 4 years ago

Hi, image

I run the demo with a default EMANE TDMA wlan and several MDRs according to the tutorial, but I am not sure how to implement a multi-hop network in CORE. my idea is let node1 transmit data to node5, n4 which is in MDR type performs as a relay, can you tell whether the CORE topology in GUI is right?

I also confused about the structure of wlan and MDR in CORE, can they all use EMANE TDMA structure? and I also confused about where the EMANE traffic flow generator is, are they in PC(n1 and n5)? How can I see the received packet header and data information generated by the generator in CORE?

Best, Shaoyi

bharnden commented 4 years ago

I think for your multi-hop example you could accomplish that through having one wlan node running EMANE TDMA, with the three nodes connected n2, n4, and n7. Typically the assumption is that those nodes would be the MDR nodes. Same would apply to just using the basic WLAN.

If you wanted it to work across two two sets of EMANE nodes on two separate radios like wlan3/wlan6 they would have to likely be on the same frequencies etc to be compatible. Although my EMANE specific knowledge is not the best.

I would refer to EMANE documentation for more specifics to EMANE: https://github.com/adjacentlink/emane

The basics of the MDR connected to a WLAN running EMANE is as follows. The node gets associated with the EMANE network, with its set configurations. This results in the node creating necessary EMANE xml files and then initiating an EMANE daemon process within the node.

The traffic generator I assume you are talking about from the GUI is something that would try to leverage the mgen tool for convenience to initiate sending different types of traffic. You can then monitor this traffic in the nodes they hit using tcpdump, wireshark, or anything else along those lines.

szl0144 commented 4 years ago

I think for your multi-hop example you could accomplish that through having one wlan node running EMANE TDMA, with the three nodes connected n2, n4, and n7. Typically the assumption is that those nodes would be the MDR nodes. Same would apply to just using the basic WLAN.

If you wanted it to work across two two sets of EMANE nodes on two separate radios like wlan3/wlan6 they would have to likely be on the same frequencies etc to be compatible. Although my EMANE specific knowledge is not the best.

I would refer to EMANE documentation for more specifics to EMANE: https://github.com/adjacentlink/emane

The basics of the MDR connected to a WLAN running EMANE is as follows. The node gets associated with the EMANE network, with its set configurations. This results in the node creating necessary EMANE xml files and then initiating an EMANE daemon process within the node.

The traffic generator I assume you are talking about from the GUI is something that would try to leverage the mgen tool for convenience to initiate sending different types of traffic. You can then monitor this traffic in the nodes they hit using tcpdump, wireshark, or anything else along those lines.

szl0144 commented 4 years ago

Hi,

Thank you for your detailed and patient explanation very much.

I think I want to let the packet go across two EMANE TDMA nodes, the packet generated by n1 is sent to a TDMA radio and then received by another EMANE TDMA node (n4), then n4 send it again using a TDMA radio then received by n7, I think my fig is what I say by your words.

About your first plan, three MDR nodes n2, n4, and n7 are connected to the wlan, can these MDR nodes send packet using radio to each other?

Yes, the generator I said is mgen, because mgen has a log file to record all the packets information, I don't know if I can open the log file when I use CORE to see packets information. Because it is convenient to collect mgen log file data. I also don't know where the generator is, is it in n1 or n2? (because I don't know if the MDR can run without a data source pc)

Best, Shaoyi

bharnden commented 4 years ago

n2, n4, and n7 linked to one WLAN set in EMANE mode, would give each node its own EMANE radio. I believe that gives you what you want and you do not need a wlan6.

The traffic generator GUI is just a convenience to help automate running things. You can run any software you like on any node in whatever way you like.

Double clicking a node while it is running will bring up its terminal and you can then proceed to run desired commands from there. It's really up to you to decide what you want to run and how at that point.

szl0144 commented 4 years ago

I got it this time, I can use ping in terminal to achieve my desired routing with just one wlan. And I can use mgen command line to add packet information I want by the CORE traffic flow configuration GUI, I also can get a log file with receiving packet data on destination node. Your explanation is very helpful!

Thank you for your help!