Matus Harvan wrote:
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
Matus,
This is great news. The TinyOS net2 working group would love to get this
into the TinyOS distribution. Omprakash Gnawali (USC) is the chair, you
should contact him if you're interested. Recently, net2 has been focused
on a binary dissemination protocol, but its future agenda is focused on
pulling in new protocols, such as a ZigBee stack and a DYMO implementation.
Have you taken a look at TEP 125? Jonathan Hui, David Moss, and I
proposed introducing a new frame format for TinyOS (the I-Frame) which
would allow it to exist along side a 6lowpan network without causing
packet confusion. To some degree, we were waiting for a solid 6lowpan
implementation before pushing this forward. The 2.0.2 release is slated
for early July.
Phil
_______________________________________________
6lowpan mailing list
[email protected]
https://www1.ietf.org/mailman/listinfo/6lowpan