Simon Duquennoy
df6a435d42
struct frame802154_t: make sure dest_addr and src_addr are aligned
2014-11-10 15:40:24 +01:00
Nicolas Tsiftes
6fb7dd238e
Merge pull request #648 from cetic/pr-csma-fixes
...
High throughput fixes for csma and sixlowpan
2014-10-21 12:17:03 +02:00
Laurent Deru
7cbd59df03
Add per neighbor packet throttle
2014-08-13 10:11:02 +02:00
Laurent Deru
91d84a3086
Improve csma debug traces
2014-08-13 10:11:02 +02:00
kkrentz
2cf7d98cad
ContikiMAC: Create and parse ContikiMAC header in special framer; Expanded framer interface
...
to allow for creating and securing frames in advance; Create and secure frames in advance when sending bursts; Do neither recreate nor resecure frames that come from phase
2014-08-05 05:07:06 -07:00
kkrentz
515287ef17
llsec: Removed superseded NETSTACK_ENCRYPT, NETSTACK_DECRYPT, and
...
NETSTACK_ENCRYPTION_INIT macros
2014-08-05 05:07:05 -07:00
kkrentz
41c5dbf961
llsec: Disable duplicate detection when the LLSEC driver provides replay protection anyway.
2014-08-05 05:07:05 -07:00
kkrentz
eaae9f1100
llsec: Calling NETSTACK_LLSEC.on_frame_created()
2014-08-05 05:04:15 -07:00
kkrentz
8659c97fb0
framer-802154: Support for explicit keys
2014-08-05 05:04:15 -07:00
kkrentz
124dde25f3
framer-802154: Conditional compilation of security-related code
2014-08-05 05:04:14 -07:00
kkrentz
fb6d2270ab
framer-802154: Simplification of frame802154_create
2014-08-05 05:04:14 -07:00
kkrentz
11495a011c
framer-802154: Renamed variable for the sake of consistency
2014-08-05 05:04:14 -07:00
kkrentz
1d324e50d2
framer-802154: Sequence number fix
2014-08-05 05:04:14 -07:00
kkrentz
9dc9e4bd9f
framer-802154: Support for setting and accessing the frame type
...
attribute
2014-08-05 05:04:14 -07:00
kkrentz
19c9ef0a95
framer-802154: Support for creating and parsing frames with security headers
2014-08-05 05:04:14 -07:00
kkrentz
be22883724
framer-802154: Introduced mnemonic variable
2014-08-05 05:04:14 -07:00
kkrentz
c9ad9c04bd
framer-802154: Style fixes
2014-08-04 01:09:57 -07:00
kkrentz
bb74fc320f
llsec: Configuration option for defining a constant LoWPAN-wide security level
2014-08-04 01:09:57 -07:00
kkrentz
c396a85364
llsec: Added a layer in between NETSTACK_MAC and NETSTACK_NETWORK for implementing link layer security
2014-08-04 01:09:57 -07:00
Adam Dunkels
cff30a394b
Merge pull request #635 from nfi/linkaddr-size
...
Use LINKADDR_SIZE instead of sizeof(linkaddr_t) to avoid struct padding problems.
2014-06-11 23:18:27 +02:00
Adam Dunkels
eceaf0c59b
Merge pull request #631 from nfi/framer-len
...
Added function to framer that returns the estimated header length
2014-06-11 23:17:47 +02:00
Rémy Léone
25c8b0835d
Closing doxygen groups
2014-05-30 11:01:20 +02:00
Niclas Finne
b1335b08a8
Changed to use LINKADDR_SIZE instead of sizeof() to select between
...
short address and long address as some platforms might use padding in
the struct. This fixes #555 .
2014-04-11 17:24:16 +02:00
Niclas Finne
68730566a3
Added method to framer that returns the header length if the framer
...
would create a header with the current packet information.
This allows sicslowpan to calculate the max payload size without
consuming a sequence number or clearing/restoring the packet buffer.
2014-04-11 17:03:23 +02:00
Adam Dunkels
5b1a9f5bc2
Bugfix: when a packet is sent by the RDC layer, we should count the number of transmissions made because a single callback can pertain to multiple transmissions at the RDC layer.
2014-03-24 08:36:18 +01:00
Adam Dunkels
45265249fc
Changed the name of the rimeaddr module to linkaddr
2014-01-29 20:12:24 +01:00
Adam Dunkels
bddd96d5c8
Removed all module makefiles. Instead, all .c files in a module directory are compiled.
2014-01-26 23:20:46 +01:00
Adam Dunkels
8eace27f9b
Moved net/rime.h to net/rime/rime.h
2014-01-26 23:20:45 +01:00
Adam Dunkels
0fe08205e1
Moved the rimeaddr.[ch] code from the core/net/rime module to the core/net module, as it is used not only by rime code
2014-01-26 23:20:36 +01:00
Adam Dunkels
0f255606b0
Turned sicslowmac into a module
2014-01-26 23:20:28 +01:00
Adam Dunkels
b78ab6753c
Added makefiles to make core/net/mac into a separate module
2014-01-26 23:20:26 +01:00
Adam Dunkels
d777ae14e4
Moved cxmac into a separate module
2014-01-26 23:20:26 +01:00
Adam Dunkels
083fe0b594
Moved the contikimac code into a core/net/mac/contikimac module
2014-01-26 23:20:25 +01:00
Adam Dunkels
5f3fe7f7c7
Updated include paths for the moved files under net/
2014-01-26 23:20:23 +01:00
Martin Heusse
662eb4db14
Fix compilation error when DEBUG enabled in core/net/mac/framer-nullmac.c
2014-01-24 20:23:26 +01:00
Adam Dunkels
0908924f91
Removed the lpp.c code
2013-11-28 15:24:40 +01:00
Adam Dunkels
f86aaf7c14
Removed the xmac.c code
2013-11-28 15:24:22 +01:00
Nicolas Tsiftes
db4cada4e7
Merge pull request #462 from adamdunkels/push/no-reserved-double-inclusion-defines
...
Remove all leading double underscore inclusion #defines
2013-11-26 14:26:37 -08:00
Benoît Thébaudeau
4deba89f81
rdc: duplicate packets: Keep only the last sequence number for each address
...
According to IEEE 802.15.4e (§6.4.3.9), in order to detect duplicate received
MAC-layer frames, only the most recently received frame's sequence number needs
to be stored for each unique device address. Doing so limits the possible false
duplicate packet detections to a single sequence number. This also allows to
keep the last sequence number of more device addresses for the same value of
MAX_SEQNOS.
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-11-25 13:01:11 +01:00
Benoît Thébaudeau
477a4a7178
rdc: duplicate packets: Factor out detection code
...
The code detecting duplicate packets in the RDC layer had been copied into most
RDC implementations. Factor it out into a new mac-sequence module in order to
have a single instance of this code.
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-11-25 13:01:11 +01:00
Benoît Thébaudeau
14db3382af
csma: Initialize sequence number with random value
...
According to IEEE 802.15.4 (§5.1.6.1, §6.4.2), the MAC sequence numbers should
be initialized to random values. This was already the case in
framer-802154.c:create(), but not in csma.c:send_packet(), sometimes causing
false detections of duplicate MAC-layer packets in other devices when a device
was restarted too quickly. This patch decreases the probability of such an
event.
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-11-25 13:01:11 +01:00
Adam Dunkels
bb2dcaa057
A massive all-tree automated update of all double inclusion guard #defines that changes from using two underscores as a prefix, which are reserved, to not using two underscores as a prefix
2013-11-24 20:20:11 +01:00
Adam Dunkels
bec721d313
Allow payload len to be larger than 256 bytes
2013-11-16 14:22:48 +01:00
Simon Duquennoy
03dcca15cb
Implement a truncated exponential backoff for csma
2013-11-14 15:02:36 +01:00
Enrico Joerns
4ba22102fd
[core/net/mac] Removed invalid struct member u8 in PRINTADDR
2013-10-15 01:43:26 +02:00
Simon Duquennoy
248301a041
Fix naming issues and includes in uip-ds6-nbr.h
2013-08-19 17:48:30 +02:00
Simon Duquennoy
5a1d8d8006
Make phase module use neighbor-table.
2013-08-19 17:48:29 +02:00
Fredrik Osterlind
8041f66d8c
link-layer acks support for cooja motes
2013-08-15 14:32:35 +02:00
Adam Dunkels
0aa448f190
6lowpan fragmentation bugfix: the 6lowpan code had an unfortunate
...
interaction with the behavior of the rdc layer. If the first packet of a
fragment transmission was lost, the remaining packets would get dropped
on reception. Moreover, the reception code contained a bug that
sometimes would cause fragments to be misidentified as fragments. Taken
together, these problems would result in a pathelogical network
breakdown if too many fragmented packets would occur simultaneously.
2013-08-11 14:27:20 +02:00
Jelmer Tiete
cf894b8b95
changed inter packet interval to 0.4ms
2013-06-21 13:15:45 +02:00