The official git repository for OSD-Contiki, the open source OS for the Internet of Things
Find a file
Timofei Istomin 65ef375bdb Re-create a routing table entry if the next hop is changed.
The next-hop address did not get updated in the routing table
in case an entry for the destination already existed.

This patch resolves the issue by removing the entry and
having it re-created from scratch.

The issue causes a routing error triggering reconstruction of
the DODAG through version increase.

In case of somewhat frequent downward traffic in not (yet) stabilized DODAG
a vicious circle is formed: unstable topology means churn, downward
routing under churn causes reconstruction of DODAG. In this situation
the network does not have chance to stabilize.

We encountered a constant churn caused by this bug
in a network of 50 nodes and a periodic traffic (a packet every 5
seconds) generated at the root.

More info and a PCAP demonstrating the issue can be found here:
https://github.com/contiki-os/contiki/issues/496
2014-06-13 13:31:15 +02:00
apps Removed references to missing DTLS implementation. 2014-05-15 20:29:05 +02:00
core Re-create a routing table entry if the next hop is changed. 2014-06-13 13:31:15 +02:00
cpu Merge pull request #691 from hexluthor/rts-cts 2014-06-04 09:22:58 +01:00
dev Fixed CC2420 to return RADIO_RESULT_INVALID_VALUE if trying to set a 2014-04-13 21:43:37 +02:00
doc Bumped the version number from 2.6 to 3.x, which is to be used in the development branch 2013-12-12 17:33:18 +01:00
examples Merge pull request #617 from nfi/extended-radio-api 2014-06-03 21:32:53 +02:00
platform Merge pull request #682 from g-oikonomou/watchdog-cc2538 2014-06-03 22:05:08 +01:00
regression-tests Merge pull request #620 from adamdunkels/push/socket-api 2014-04-09 22:12:59 +02:00
tools Added missing license file referenced in z1-bsl-* scripts 2014-05-15 16:02:57 +02:00
.gitignore Adds support for ADF7023 sub-GHz radio from Analog Devices and RL78 series MCU from Renesas. 2014-01-04 18:56:51 -05:00
.gitmodules Added the cc2538-bsl submodule to the tools dir 2014-03-07 15:44:29 +01:00
.travis.yml Fix Travis failure 2014-04-26 14:06:53 +01:00
LICENSE Removed the explicit year 2012 to make it more generic 2012-10-25 23:08:54 +02:00
Makefile.include Makefile.include: Setting RELSTR based on git tags requires to be in 2014-04-09 19:11:35 +02:00
README-BUILDING.md Rename to md 2013-03-26 23:15:37 +01:00
README-EXAMPLES.md Several minor consistency improvements. 2013-07-31 00:55:31 +02:00
README.md Rename to md 2013-03-26 23:15:37 +01:00

The Contiki Operating System

Build Status

Contiki is an open source operating system that runs on tiny low-power microcontrollers and makes it possible to develop applications that make efficient use of the hardware while providing standardized low-power wireless communication for a range of hardware platforms.

Contiki is used in numerous commercial and non-commercial systems, such as city sound monitoring, street lights, networked electrical power meters, industrial monitoring, radiation monitoring, construction site monitoring, alarm systems, remote house monitoring, and so on.

For more information, see the Contiki website:

http://contiki-os.org