- How to deploy a testbed to experiment routing protocols for UnetStack acoustic modems communication in an underwater network?
- Which modem (model) is more suitable for this experiment?
UnetStack - Routing Protocols
293 Views Asked by B R Chandavarkar At
1
There are 1 best solutions below
Related Questions in UNETSTACK
- When sending packets using the unetstack simulator, the packets are split and transmitted
- Why is the use of preamble codes not supported when sending passband signals using the baseband service?
- Wrong average arrival time on PoissonBehavior in Unetstack
- Why does the baseband signal have a carrier?
- The issue encountered when using the baseband service to send and receive data
- Can UnetStack run offline?
- Implementing neighbour discovery in a Unetagent
- Running UnetStack simulations using a build script (gradle)
- How to receive messages from unet audio with python
- Broadcast- UNET Stack
- Need help in analyzing the graph
- Does there a 3 way handshake happens when we send datagram using tansport service?
- Sending file to remote modem using unetstack
- Uploading files to acoustical modem
- Stuck with the UNET Stack .nam Trace File
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Answer to Q1
The default stack when you boot up a Unet simulator or a modem with UnetStack support has two agents that relate to routing protocols.
The
routeragent (org.arl.unet.net.Router) does packet routing based on its routing tables. Theroutes,addroute,delroute,delroutestoanddelroutesclosures allow you to manually modify the routing tables. Just typehelp routerin the Unet shell to get more information:The
rdpagent (org.arl.unet.net.RouteDiscoveryProtocol) populates the routing table for therouteragent. Therreqandtraceclosures allow you to interact with this agent. Typehelp rdpfor more information:If you want to implement your own routing protocol, the easiest option is to create your own agent that populates the routing table for
router. This is done by sendingRouteDiscoveryNtfmessages to therouteragent. For many routing protocols, this is sufficient, and easy to do.If your routing protocol is more complicated and cannot be implemented by changing routing tables dynamically, you can remove the default
routeragent (frometc/setup.groovyfile) and add your own routing agent implementation instead. Your routing agent must support the Routing service: A routing agent essentially accepts datagrams for any destination and sends them on the next hop. The agent also listens to datagram notifications from the Link agent, and forwards them on the next hop, if they are meant to be packets to be routed. Typically, a routing agent will have to add its own headers to know which packets are to be routed and to where, based on the protocol being implemented.Answer to Q2
Any modem that supports UnetStack should work. Here's a list of known modems that currently support UnetStack.