-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
routing: add OLSRv2 #2294
routing: add OLSRv2 #2294
Conversation
Implement link metrics and differentiate between flooding and routing MPRs
other targets lack <assert.h> or have no radio
are there plans to remove the RFC5444 code from this PR and use the NHDP implementation from @fnack instead? |
Might make sense indeed. Will try to check with @fnack. |
This adds a simple single linked list which allocates and deallocates memory for it's elements on it's own. It also provides functions to search for and iterate over elements.
@@ -16,6 +16,9 @@ | |||
* @author René Kijewski | |||
*/ | |||
|
|||
#ifndef KERNEL_MACROS_ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the diff of this file could be completely moved to its own PR. seems unrelated to OLSR to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
9f184dd
to
45554bf
Compare
Is this still planned for 2015.12 ? |
Definitely not - most likely a mishap while retagging some PRs and issues. |
I have to admit: I was not very successful adopting this PR... |
In consultation with @benpicco I take over PR #765. Original description:
This adds an implementation of the OLSRv2 routing protocol (without metrics), based on oonf_api.
The interface offered to applications currently consists of only a olsr_init function which will set up and start a sender and receiver thread for RFC5444 based (UDP on port 269) HELLO and Topology Control messages.
That means that every HELLO_REFRESH_INTERVAL (2s + random jitter) a non-forwarded HELLO message is send for neighborhood discovery. Every TC_REFRESH_INTERVAL (5s + random jitter) a topology control message is broadcast (only by selected flooding MPRs) through the network.
This happens transparent to the application, IP packets are now routed to known hosts within the MANET once a path has been established.
print_topology_set will output the forwarding table with all known mesh nodes.
Does work well on native with #680, but still crashes on the testbed after some time.
Each known MANET router requires 72 byte of memory + 12 bytes for each alternative route to the node.
Depends on #630