Commit graph

1452 commits

Author SHA1 Message Date
adamdunkels 591766e663 Significant improvements to the Collect protocol:
* Loop detection and untangling. Now uses in-band loop detection that
  works.

* Link quality estimation. Now starts with a conservative /
  pessimistic estimate for new links.

* Retransmissions. MAC layer and network layer retransmissions are now
  decoupled.

* Loss handling. Deals better with losses now.

* Concurrent applications. Each connection now maintains its own
  neighbor table with separated cost to sink estimates for each
  connection.
2010-09-13 13:28:14 +00:00
oliverschmidt a0b8927777 Allow to exit the process owning the foreground window by pressing ctrl-c. This is especially useful if there's no closebutton on the window frames (or no windows at all). 2010-09-09 20:21:26 +00:00
adamdunkels 4e0744954a Rewrite of important parts of the Collect logic: link estimation
calculation and parent selection.  This fixes a severe bug that caused
loops when packets were erroneously retransmitted due to ACK loss.
2010-09-08 19:21:45 +00:00
nifi f05952c926 Changed packet id to use 8 bit instead of 4 bit 2010-08-31 13:14:49 +00:00
nifi d06a1ecc0c corrected include path 2010-08-25 18:35:52 +00:00
dak664 12479c32bc Fix compiler warnings 2010-08-01 21:18:07 +00:00
oliverschmidt 89f6235c13 Using wherex() to determine the length of the string printed with cputsn() fails if the right edge of the screen was reached as wherex() then returns 0.
Therefore we rather count the chars actually printed in cputsn() and return that value thus avoiding usage of wherex() in those scenarios altogether.
2010-07-20 22:19:23 +00:00
nvt-se 11760059d3 The second predicate is not needed. 2010-07-03 23:52:02 +00:00
nifi 3e6113be72 removed debug output 2010-06-30 09:03:20 +00:00
nvt-se 007d4a4001 Improved logic for processing DIOs 2010-06-28 14:51:23 +00:00
nifi c44cf73e4f Adapted to new SPI and CC2420 naming 2010-06-24 11:25:55 +00:00
nifi f609cb0f7c Added macro to read from CC2420 RAM 2010-06-24 11:25:07 +00:00
nifi 30db4eff52 Made QUEUEBUF_STATS configurable 2010-06-24 09:48:21 +00:00
nifi 49a2ca6b1e Fixed naming of CC2420 macros 2010-06-24 09:28:38 +00:00
nifi fb3c2e75cf removed obsolete definitions 2010-06-24 09:28:12 +00:00
nifi c6b6b6625c removed obsolete header file for CC2420 2010-06-24 09:20:28 +00:00
joxe f7a82a9145 split SPI code into generic and CC2420-related and renamed constants in CC2420 2010-06-23 10:15:28 +00:00
joxe bc398ca546 removed platform dependent loop-count from cc2420 - moved to platform config instead 2010-06-21 19:48:00 +00:00
joxe a5d7b197eb added support for the Z1 platform and its 8Mhz 2010-06-21 19:09:35 +00:00
joxe 1f0a43bf01 fixed timer bug - did not do equality comparison 2010-06-21 19:07:24 +00:00
joxe 546504516b changed timer comparison to avoid crashing mspgcc4 2010-06-21 09:41:49 +00:00
nifi e965b74cf5 added missing include 2010-06-18 08:28:56 +00:00
nifi 4741b95858 added missing include 2010-06-16 10:10:10 +00:00
nifi 21828ad782 Changed the retransmission time to be based on the configured MAC channel check rate when the RDC has no channel check interval. 2010-06-16 10:08:30 +00:00
adamdunkels 7647cbd8aa Use the list_item_next() API 2010-06-15 19:22:25 +00:00
adamdunkels 560c84a2fe Added a function for getting the first global IPv6 address 2010-06-15 19:16:22 +00:00
adamdunkels a84cc7c8a0 Added a function for obtaining the next item on the list. This makes list iterations nicer, as the ->next pointer now is hidden within the list abstraction. 2010-06-15 18:54:27 +00:00
nifi 01b1359b1f removed unused (and slightly problematic) code 2010-06-15 14:19:22 +00:00
nifi 46f9f7e6c0 corrected include path 2010-06-15 13:31:22 +00:00
adamdunkels 3fa8ffda1a Moved the modules packetbuf, queuebuf, and packetqueue from net/rime to net/, since they are not Rime-specific 2010-06-14 19:19:16 +00:00
adamdunkels 951fd78f6c ctimer moved from net/rime to sys/ 2010-06-14 18:58:45 +00:00
nvt-se fad2b1def9 Clarified the function naming for neighbor information callbacks - names now indicate where the information is from. 2010-06-14 18:35:04 +00:00
nifi adc38568ad Minor optimization: replaced init loops with memset to reduce code size 2010-06-14 13:51:13 +00:00
nifi 7499939c94 removed debug output 2010-06-14 13:07:09 +00:00
nvt-se e000b1abf3 A major update to ContikiRPL resulting in a reduced code footprint by
300 bytes, as well as cleaner protocol logic.

* Made parent management uniform.

* Simplified the DIO processing.

* Improved the Objective Function API and its documentation.

* Removed redundant code at various places.

* Improved identifier naming.

* Switched visualization from candidate parents to preferred parents only.

* Made DAO ACK transmissions configurable.

* Improved initial ETX guess by using a cached local confidence value.

* Added a periodical rank recalculation function to reduce
  the maximum stack depth.

* Increased the Trickle redundancy constant to ensure faster
  topological updates.
2010-06-14 12:44:37 +00:00
adamdunkels a890cd3d49 Moved ctimer.[ch] from their old and illogical location in core/net/rime to a more appropriate place in core/sys 2010-06-14 11:33:58 +00:00
adamdunkels 97708d6235 Documentation group set accordingly 2010-06-14 07:35:53 +00:00
adamdunkels 8f8393aadc Moved ctimer.[ch] from their old and illogical location in core/net/rime to a more appropriate place in core/sys 2010-06-14 07:34:36 +00:00
adamdunkels baa62e9314 Addresses are not const 2010-06-14 06:55:26 +00:00
adamdunkels 2647f879c2 Bugfix: select the best parent if current parent is NULL 2010-06-14 06:54:47 +00:00
adamdunkels 8d1680fed5 Filter duplicate packets 2010-06-14 06:52:41 +00:00
adamdunkels a6bd51f361 If a packet is lost due to NOACK or TXERR, we count the number of transmissions and we add an additional loss penalty (currently one) 2010-06-14 06:51:58 +00:00
joxe 1095997b66 made DIOs and OCP 09 compliant 2010-06-12 10:55:46 +00:00
nvt-se 75b624eb71 Refactored the code, removed void pointer arithmetic, and fixed invalid list removal after freeing of memb object. 2010-06-11 12:32:48 +00:00
nvt-se 8a43743a42 Updated declaration for rpl_alloc_dag. 2010-06-08 21:41:02 +00:00
nvt-se b1521e4950 Check correctly if a DAG already exists in the same instance. 2010-06-08 21:37:22 +00:00
adamdunkels 296c828ac2 Removed instant reaction to packet loss. Previously, a neighbor was dropped if no MAC layer ack was received. 2010-06-08 19:25:40 +00:00
nvt-se 4a08f545c9 Make the distinction between incoming and outgoing DTSN clear. 2010-06-08 16:21:54 +00:00
nvt-se b8848f29eb Replaced invalid attempt to switch preferred parent when its DS6 neighbor entry got purged. 2010-06-08 15:40:50 +00:00
nvt-se 4e61d69a49 Removed redundant code, moved the control of acceptable rank increases into a separate function. 2010-06-07 14:01:22 +00:00