Commit graph

977 commits

Author SHA1 Message Date
adamdunkels 4c9793f428 Let ContikiMAC remember the state that the radio should have when duty cycling is turned off. This fixes a bug in which the radio was turned on after sending, even when NETSTACK_RDC.off(0) was enabled. 2010-12-06 09:08:22 +00:00
dak664 f34e5ec798 Convert implicit printf to PRINTF 2010-12-04 21:06:04 +00:00
dak664 e54d7d6f9c Fix compiler warnings 2010-12-02 15:55:17 +00:00
adamdunkels 6d556d5c13 Fixed bug with link-layer ACKs. Refactored the ACK reception code. 2010-11-25 08:44:34 +00:00
adamdunkels 2f66db3ded Added a debug mode that keeps track of where individual queuebufs are allocated, which is useful when debugging queuebuf leakage problems. 2010-11-25 08:43:59 +00:00
nifi 3bd78893e5 Renamed nullrdc to nullrdc-noframer and nullrdc-framer to nullrdc.
nullrdc (previously nullrdc-framer) is now a RDC implementation that
does not do any radio duty cycling but supports link layer addresses
and frame format via framer (for example 802.15.4). nullrdc can now be
used in the same way as contikimac, xmac, etc.

nullrdc-noframer (previously nullrdc) is a null RDC implementation
that does not do any radio duty cycling, does not add any header of its
own to the packets, and does not support link layer addresses.
2010-11-23 18:11:00 +00:00
dak664 62d7832fff Fix compiler warning and possible bug 2010-11-13 16:37:42 +00:00
nifi 05d78522d3 Added MAC-layer duplicate message suppression when using 802.15.4 auto ack 2010-11-12 12:53:16 +00:00
adamdunkels 8f745a6ea6 Added a function for obtaining the current parent 2010-11-06 14:32:10 +00:00
adamdunkels 9750eb93bf Turn off debug messages 2010-11-03 15:41:23 +00:00
adamdunkels a891a2ffe8 Bugfix: allow ICMPv6 to send packets larger than those whose length fits in one byte. Bugfix by mathieupouillot 2010-11-03 11:56:11 +00:00
adamdunkels b7df18a96a Turned off streaming by default to save code space; made guard time a little more conservative 2010-11-02 11:00:08 +00:00
adamdunkels 1b5001b226 Bugfix: out-of-order fragments were not handled correctly. minor style fixes 2010-11-02 10:56:57 +00:00
adamdunkels 5230e64112 Use the new shared ND-packet queue buffers 2010-10-29 05:36:07 +00:00
joxe 9a1f902881 made rank use full resolution when using OF-ETX 2010-10-28 20:39:06 +00:00
adamdunkels f5031861ac When IPv6 ND kicks in, the packet that caused the ND can either be dropped or saved in a buffer to be send when the NS reply returns. This commit reimplements the buffer management to avoid having one buffer per neighbor, but instead use a buffer pool from which buffers can be allocated for different neighbors. 2010-10-28 15:42:56 +00:00
adamdunkels 677575fc8c Rewrote proactive link estimator to be invoked randomly instead of triggered by an empty queue; this makes network bootups because nodes are not synchronized 2010-10-28 15:36:02 +00:00
joxe 932fed8cc7 improved ETX calculation 2010-10-28 08:54:54 +00:00
nifi 25ceab07d2 Update annotation when removing preferred parent. 2010-10-27 12:27:57 +00:00
nifi d2a3f1f257 We found that the preferred parent should be reset in the rpl_remove_parent function. 2010-10-27 12:20:35 +00:00
nvt-se d528039f9a Created a separate function for local repair. Added a statistics structure. Improved the control of malformed packets. 2010-10-27 00:46:40 +00:00
nvt-se c2c0505402 Increased alpha to 85 in order to get slower changes in the ETX. Put back the start guess to 3. 2010-10-27 00:45:24 +00:00
joxe 43023ab425 made number of transmissions configurable 2010-10-26 13:25:32 +00:00
nvt-se 1fbc651bf3 Lowered the first guess for the ETX of a link. 2010-10-25 20:06:17 +00:00
nvt-se 127c87efcc Fixed debug printfs. Added control of max_rankinc parameter. 2010-10-25 20:03:37 +00:00
nvt-se 19d7543267 Added detection of loops in DAO forwarding. 2010-10-25 19:49:12 +00:00
adamdunkels 9ecc0437f4 Left-over debug printf removed 2010-10-25 12:25:39 +00:00
adamdunkels 42f37ca1d3 Bugfix: removed old leftover code statement 2010-10-25 11:59:09 +00:00
adamdunkels 3bbd6a00a9 Replace old neighbors according to an LRU policy when a new neighbor needs to be added 2010-10-25 11:58:07 +00:00
adamdunkels e680276954 ARP fix for multicast transmissions. (Patch by Robert Quattlebaum.) 2010-10-24 22:29:39 +00:00
adamdunkels a8848517dd UDP checksum is mandatory with IPv6. (Patch by Robert Quattlebaum.) 2010-10-24 22:28:43 +00:00
adamdunkels 77ecfb0366 Rewrote parts of the retransmission logic so that collect is robust against the situation where the MAC layer will fail to callback after a packet has been transmitted. 2010-10-24 21:08:19 +00:00
adamdunkels 8fa7bf6c31 Always restore the queuebuf to the packetbuf before calling the upper layers. Reduce the waiting time between successive MAC layer retransmissions. 2010-10-24 21:07:00 +00:00
adamdunkels 73f5535754 Made the guard time slightly more conservative - found an occasion where this was needed 2010-10-24 21:06:17 +00:00
adamdunkels 8f8741c7f0 Small style fixes 2010-10-24 21:05:42 +00:00
nvt-se 00a000cca0 Print the rank correctly in the debug output. 2010-10-22 15:40:10 +00:00
nvt-se 86823a84fb Export fix-point representation of the ETX. Make RPL temporarily use the same representation as before. 2010-10-22 13:50:13 +00:00
joxe 804d23e9f4 made DIS Interval configurable 2010-10-22 13:13:40 +00:00
joxe e414c8c5a4 added function for retrieving link etx to neighbor 2010-10-22 11:34:24 +00:00
nvt-se 6e28b1d3fb Reduced ETX_LIMIT in order to avoid overflows. Removed ETX_LOSS_PENALTY and set packet_etx to ETX_LIMIT instead upon packet loss. 2010-10-21 19:46:21 +00:00
adamdunkels 9cb830ed37 Timing bugfix in the waiting period between channel samples to check if the coast is clear before sending a packet. 2010-10-20 22:25:24 +00:00
adamdunkels 3ffcff0656 Added mechanisms for explicit de-synchronization of synchronized neighbors. Added link-layer ACKs. Fixed bugs with MAC-layer interaction. Now seems to work somewhat (didn't work at all before, in some cases), but there are still problems with packet loss. 2010-10-20 15:23:43 +00:00
adamdunkels 5585d72c86 A simple but substantial change: uIP used the htons()/HTONS() macro
functions for converting between host and network byte order. These
names are the de facto standard names for this functionality because
of the original BSD TCP/IP implementation. But they cause problems for
uIP/Contiki: some platforms define these names themselves (Mac OS,
most notably), causing compilation problems for Contiki on those
platforms.

This commit changes all htons to uip_htons instead. Same goes for
htonl, ntohs, and ntohl. All-caps versions as well.
2010-10-19 18:29:03 +00:00
adamdunkels 34cba78ca8 Bugfix: bump advertisements only when a parent changes, not because of an upstream parent change 2010-10-19 07:34:29 +00:00
nifi e2b4956a7f Bug fix: release the packet and notify the sender if RDC returned an error 2010-10-14 19:08:39 +00:00
oliverschmidt 2f89e69ff7 Fixed build for platforms which use the default value for QUEUEBUF_NUM. 2010-10-12 19:51:28 +00:00
adamdunkels 020da4e8ba Added a function for obtaining beacon intervals 2010-10-11 23:44:24 +00:00
adamdunkels ec716ea62d Do not reduce transmission interval, unless explicitly told so with the bump flag 2010-10-11 23:43:01 +00:00
adamdunkels 37adf130b4 Rewrite of the congestion logic. A node now report it being congested
when half the transmission queue is full. When a neighbor is heard to
be congested, the rtmetric of that node is inflated to avoid sending
more traffic in its direction.

Fixed problems with beacon intervals: intervals are now not reduced
when a path gets significantly worse, only when they get better.
2010-10-11 23:42:01 +00:00
adamdunkels d821ba5e22 Added a lifetime for link estimates: if they are too old, they are
reset so that a new probing period can produce more up-to-date
estimates. Added a congestion mechanism whereby a neighbor can be
marked as being congested for a period of time, during which the ETX
for the neighbor will be artificially inflated.
2010-10-11 23:38:46 +00:00