Commit Graph

89 Commits

Author SHA1 Message Date
Simon Duquennoy
33cfd92475 RPL MRHOF with ETX: bypass weighted moving average when setting a parent's link metric for the first time 2014-04-29 16:25:16 +02:00
Nicolas Tsiftes
ce2ed95b93 Merge pull request #585 from g-oikonomou/generic-icmp6-in-hooks
Generic ICMPv6 input hooks
2014-04-14 16:12:10 +02:00
George Oikonomou
017697f91d Register generic ICMPv6 handlers for RPL 2014-04-04 00:09:27 +01:00
Nicolas Tsiftes
0a202d3952 Cleaned up some of the comments and output strings. 2014-03-28 13:38:52 +01:00
Nicolas Tsiftes
7f4d3e3d7b Avoid calling rpl_lock_parent for uninitialized memory. Renamed p to parent to make reading easier. 2014-03-27 15:55:38 +01:00
George Oikonomou
da4ce5b54d RPL Multicast group management with MOP 3 2014-03-05 20:31:15 +00:00
George Oikonomou
067bbc9ee0 Check for DAO fwd loop early, before processing DAO options 2014-03-05 20:18:14 +00:00
Adam Dunkels
5f3fe7f7c7 Updated include paths for the moved files under net/ 2014-01-26 23:20:23 +01:00
Adam Dunkels
b0460317b8 Moved variable declaration to the start of the function block 2013-11-24 15:17:52 +01:00
Adam Dunkels
faff1c2a7e Preliminary support for RPL node types. This change allows a node to be in any of three given types:
* Mesh: this is the normal case. Nodes route data on behalf of others and the node can be reached via a DAO route.
* Leaf: the node does not route data on behalf of others, but others can route data to the node (it has a RPL DAO route).
* Feather: this is a new type of node. A feather node routes data on behalf of others, but does not install DAO routes in the network. Feather nodes allow having a larger number of nodes than the RPL network can sustain in terms of routing tables.

This commit introduces the RPL node types and the feather mode, but does not add support for the leaf node type.
2013-11-24 15:17:52 +01:00
Adam Dunkels
af24d07848 Forward no-path DAOs up the tree to allow the root to repair the network if needed 2013-11-24 15:17:52 +01:00
Adam Dunkels
4e6fe7dda6 Add a neighbor table entry if a DAO is received from a node where we don't yet have a neighbor table entry. 2013-11-24 15:17:52 +01:00
Sébastien Dawans
a60d3bf6cf Removed duplicate code in rpl-icmp6 2013-10-23 15:43:16 +02:00
Adam Dunkels
4d0ecaae02 Make sure our parent's IP address isn't NULL. 2013-08-19 17:48:32 +02:00
Adam Dunkels
e5a6565137 Loop detection via DAO: if we get a DAO from a parent, that parent thinks we are its parent. We poison it and recalulate our parents. 2013-08-19 17:48:32 +02:00
Adam Dunkels
a027832f94 Fixed a bunch of compiler warnings 2013-08-19 17:48:31 +02:00
Adam Dunkels
c52fc2fd19 Defensive programming: check for the argument being NULL. 2013-08-19 17:48:31 +02:00
Adam Dunkels
82e8eb420d Added and updated debugging printouts and reformatted code to make it a little easier to read. 2013-08-19 17:48:31 +02:00
Simon Duquennoy
c50d10aa53 Make RPL use neighbor tables. RPL locks the neighbor used as preferred parent. 2013-08-19 17:48:30 +02:00
Simon Duquennoy
09d26f8060 Make uip-ds6-route use neighbor table. Instead of storing a global list of routing entries that contain both the next hop and the destination, we have a separate list of reachable destination for each neighbor in the global table. 2013-08-19 17:48:30 +02:00
Adam Dunkels
54f2109134 Merge pull request #290 from simonduq/rpl-mrhof-etx-nomc
Update of RPL MRHOF (use no metric container with ETX [RFC6719])
2013-07-29 00:56:25 -07:00
Sébastien Dawans
a05d635512 Improve readability of DAO output variables 2013-07-25 11:22:38 +02:00
Sébastien Dawans
0bd26d83c8 Ignore No-Path DAO if target is already reachable through a different route than the DAO sender 2013-07-25 11:21:04 +02:00
Sébastien Dawans
c4a121bf18 No-Path DAO Propagation 2013-07-25 11:19:56 +02:00
Simon Duquennoy
defcc639ce Use no metric container when having MRHOF with ETX, as specified in RFC6719. Renamed rpl-of-etx to rpl-mrhof. 2013-07-23 19:36:38 +02:00
Adam Dunkels
927cc8d895 Added #if UIP_CONF_IPV6 around the IPv6 code in the uIP source tree to allow the C files to be compiled even if IPv6 is not configured. 2013-03-18 09:45:30 +01:00
Mariano Alvira
03fdb53af1 Add some debug PRINTFs for RPL_LEAF_ONLY mode. 2013-02-20 18:25:32 -05:00
Rémy Léone
e378f171d6 chmod correction 2012-10-29 14:15:38 +01:00
nvt
534c734465 Removed redundant code and improve code style and documentation. 2012-04-22 00:18:07 +02:00
nvt
6071b5aee7 Remove obsolete support for broadcast DAOs. 2012-04-17 23:04:20 +02:00
Matthias Kovatsch
87cd18539b Eliminated RPL_CONF_ADJUST_LLH_LEN correction by using uip_l3_icmp_hdr_len instead of uip_l2_l3_icmp_hdr_len. 2012-03-08 00:48:04 +01:00
Joakim Eriksson
729a434d0f always send DAO to refresh routes 2012-02-29 15:01:59 -08:00
Nicolas Tsiftes
d0e2d9b47e Cleaned up code style, comments, and print outs. Set default DAG parameters when the DIO configuration option is missing. 2012-02-29 21:59:50 +01:00
Nicolas Tsiftes
f112fa99d5 Removed the force flag from rpl_reset_dio_timer. Removed an unnecessary DIO timer reset when changing rank but keeping the same preferred parent. 2012-01-04 11:22:11 +01:00
Nicolas Tsiftes
2b1549bfe8 Continued merge with sf master 2011-11-21 15:25:13 +01:00
Nicolas Tsiftes
0e32956a63 Merge remote-tracking branch 'sf/master' into rpl-patch 2011-11-21 14:59:31 +01:00
Nicolas Tsiftes
ea73f1d767 Do not force DIO reset on certain events where it is not needed. 2011-11-16 09:49:22 +01:00
Nicolas Tsiftes
b405571e32 Update next-hop address for existing routes. 2011-11-16 09:05:34 +01:00
Nicolas Tsiftes
ef0ce944e5 Split management of extension headers into a separate file and fixed coding style. 2011-11-16 09:00:19 +01:00
Joakim Eriksson
2a94b3ce82 added debug callbacks 2011-10-27 12:32:16 +02:00
nvt
ab0c04b041 Move 16-bit integer conversion operations into functions, as is done already with 32-bit ops. 2011-09-06 17:28:39 +02:00
nvt
644f1c627d Initialize the DIO object in case options are missing. Updated the terminology regarding options. 2011-09-05 20:28:50 +02:00
Vincent Brillault
dc9cbe647d Changes in RPL implementation :
- Structural modification of RPL data storage.
- Support multiple gateways (multiple DODAG-ID with a unique InstanceID)
- Use Lollipop counters
- Add leaf-only configuration option for RPL
Bugfix :
- Correctly send "Grounded" flag in DIO
2011-07-11 16:52:45 +02:00
Nicolas Tsiftes
77a44c560a The flags field got widened to 9 bits. 2011-06-28 17:49:32 +02:00
Nicolas Tsiftes
b1fea35e47 Fixed issues with propagation of the route lifetime configuration. Removed deprecated configuration parameters. 2011-06-28 17:08:44 +02:00
David Kopf
c48b7ab78d Add RPL nodes and border router to minimal-net platform (cygwin only) 2011-06-28 08:19:48 -04:00
Joakim Eriksson
6554e87c00 Merge branch 'master' of ssh://contiki.git.sourceforge.net/gitroot/contiki/contiki 2011-03-15 14:15:55 +01:00
Joakim Eriksson
5f4d4550fc fixed RPL statistics bug and added parent switch stats 2011-03-15 14:14:41 +01:00
nvt
4739143126 Generalized MRHOF and added partial support for energy objects in DAG metric containers. 2011-03-15 01:16:20 +01:00
Joakim Eriksson
fa0fbf5dab fixed format of transit subopt 2011-03-01 12:33:34 +01:00