1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

15 Commits

Author SHA1 Message Date
Cenk Gündoğan
f3c6ef7e66 rpl: remove common globals by prefixing with static 2015-02-02 12:54:58 +01:00
Oleg Hahm
6715bccf5b Merge pull request #2190 from cgundogan/rpl_new_parent_dodag_assignment
rpl: wrong dodag assignment to parent
2015-01-29 11:24:38 +01:00
Joakim Gebart
526a84093b rpl: Remove extra definition of rpl_process_pid. 2015-01-23 19:46:26 +01:00
Cenk Gündoğan
c4b01b87bc rpl: RPL/Trickle with only *one* thread
This PR proposes an approach to reduce the thread count of RPL.

The current RPL/Trickle stack needs about 5 threads to handle tasks
like updating the trickle timer, routing entries and the transmission of
DAOs.

This PR modifies RPL to use only one thread with a looped `msg_recv()` call.
The message is then multiplexed to the right task.
2015-01-14 19:42:13 +01:00
Cenk Gündoğan
eeafd426d5 rpl: wrong dodag assignment to parent
`dodag` is the representation of the incoming DIO and thus is temporary.
Assigning this to the parent would lead to failure when reading/writing
to/from the parent's dodag attribute later.
`my_dodag`on the other hand is the local persistent representation of
the DIO's dodag and therefore the right choice.
2014-12-14 09:41:42 +01:00
Fabian Brandt
12cd62c689 Introduction of RPL non-storing mode.
This implementation is based on RFC 6550 with addition of RFC 6554 (Source Routing Header for RPL). Both can be found under the following links:
- http://tools.ietf.org/html/rfc6550
- http://tools.ietf.org/html/rfc6554

The PR provides basic functionality for handling and forwarding packages in non-storing mode. In addition the structure of the previous implemented RPL storing mode is now revised, so that readability and modularity is increased. The following features are implemented:
- building function for a SRH and integration in common packets
- source-route build algorithm based on the structure of the DODAG
- an RPL-based interpretation of the SRH and removal at destination
- new structure for RPl-module with extracted beaconing-functionality
- leaf nodes are now supported

There are some missed goals and should be included in future updates:
- building a common routing table structure for different types of routing protocols
- routing tables are statically assigned via source code, future update should have an optional variable at build-time, which sets the size of the routing table depending on the desired functionality of a node in the network (root, node, leaf)
2014-11-27 21:42:40 +01:00
Oleg Hahm
46d5947044 rpl: mute RPL
Removes all but one occurrence of printf and puts within routing (the
remaining puts is called from a debug function.
2014-09-10 18:04:17 +02:00
Oleg Hahm
8b34d323e2 rpl: moved headers to sys/net/include 2014-08-21 21:34:45 +02:00
Ludwig Ortmann
3ca4f18479 doc: use lgplv2.1-short license header instead of lgpl-short-riot 2014-07-31 22:57:20 +02:00
Fabian Brandt
7fb462cd2c Split RPL into core and mode related functions. 2014-07-03 20:23:57 +02:00
René Kijewski
9a9caf2c68 Exterminate old-style function definitions 2014-05-12 21:57:09 +02:00
Martin Lenders
00acab920b Let IPv6 and ICMP use new 6LoWPAN layer (+fixes) 2014-03-01 15:08:18 +01:00
Martin Lenders
bc4befb4e9 Fix coding conventions for sixlowpan and rpl module 2014-03-01 14:44:21 +01:00
Martin Lenders
4119e15e6b Fix possible null pointer dereference 2014-02-20 02:29:33 +01:00
Oleg Hahm
acd304e1cc moved RPL into routing subfolder 2013-12-19 19:13:26 +01:00