Hello,
I have implemented a 6lowpan/IPv6 stack for TinyOS 2.0.
The implementation parses Mesh Addressing and Broadcast
headers. 6lowpan fragmentation and fragment reassembly are fully
supported. The 6lowpan-specified HC1 compression of the IPv6 header
and the HC_UDP compression of the UDP header are supported as well as
handling of the uncompressed headers. The implementation can respond
to ICMP echo requests and handles communication over the UDP
protocol. It has been tested on the TelosB and MicaZ motes.
In addition a 6lowpan-translating daemon has been implemented to
allow a linux PC to use a mote as an 802.15.4 interface.
Shortcomings and missing features:
* 6lowpan payload is sent as Active Message payload. This means that
the 802.15.4 payload is prefixed with the 1-byte AM Type field.
* non-zero Traffic Class and Flow Label are not supported by the
current HC1 implementation
* UDP port numbers compression is not supported and port numbers are
always sent in full by the current HC_UDP implementation
* Neighbor Discovery has not been implemented and link local
broadcasts are used instead.
* Not all fragments of a datagram seem to be always received by the
mote. A workaround is to add a usleep(10000) before sending subsequent
fragments in the daemon on the PC.
More details can be found in my MSc Thesis
http://www.eecs.iu-bremen.de/users/harvan/docs/msc-thesis.pdf
Source code is available from
http://www.eecs.iu-bremen.de/users/harvan/files/6lowpan.tar.gz
Best regards,
Matus
_______________________________________________
6lowpan mailing list
[email protected]
https://www1.ietf.org/mailman/listinfo/6lowpan