[riot-devel] CSMA MAC-layer, Open Issues

Martine Lenders authmillenon at gmail.com
Fri Mar 20 19:44:15 CET 2015


Hi Jonas,

2015-03-20 18:02 GMT+01:00 Jonas Remmert <j.remmert at phytec.de>:

> Hi,
>
> […]
>
> 2. The drivers send function builds the IEEE 802.15.4 MAC header on its
> own. The alternative would be to let the MAC layer do this job. This would
> avoid code duplication and make it easier to implement new radio drivers.
> Is there any reason to do this in the driver implementation?
>

Yes, the MAC layers should be as independent from the drivers as possible
(with protocols like TSCH for IEEE 802.15.4e this is obviously not
possible, but your CSMA implementation might also be used with a cc1100 or
other radios). As for avoiding code duplication with IEEE 802.15.4 header
building, there is the `ieee802154` [1] module for that. There is  also an
older PR by Hauke [2], that hopefully will be updated to the new network
stack scheme soon ;-).


> […]
>
> 4. Generally, a successfull TX of a packet is not signalized to upper
> layers. But how do we handle a packet that could not be sent to the channel
> (e.g. channel busy)? Should upper layer be informed about the failure?
>

No, it just will be dropped (or the MAC must queue it).


> […]

a nice Weekend,
> Jonas
>

Have a nice weekend too,
Martine

[1]
https://github.com/RIOT-OS/RIOT/blob/master/sys/net/include/ieee802154_frame.h
[2] https://github.com/RIOT-OS/RIOT/pull/2355
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/devel/attachments/20150320/32f08c01/attachment.html>


More information about the devel mailing list