Difference between revisions of "Lr-wpan"

From Nsnam
Jump to: navigation, search
(802.15.4 status)
(Current status)
Line 16: Line 16:
 
In ns-3.19 release, a [http://www.nsnam.org/doxygen/group__sixlowpan.html 6LoWPAN model] was included, but the 6LoWPAN model precedes the 802.15.4 model, and hence can only run over wired links.
 
In ns-3.19 release, a [http://www.nsnam.org/doxygen/group__sixlowpan.html 6LoWPAN model] was included, but the 6LoWPAN model precedes the 802.15.4 model, and hence can only run over wired links.
  
= Current status =
+
= Current status and next steps =
  
The initial set of IEEE
+
A set of developers plans to contribute initial 802.15.4 support for ns-3.20.  This group plans to work on the ns-developers mailing list and propose a mergeable subset of full 802.15.4 support.  Full 802.15.4 support is expected to require a few release cycles.
  
=== 802.15.4 ===
+
== Goals for ns-3.20 ==
  
Some initial code is available at http://code.nsnam.org/tomh/ns-3-lr-wpan/.  
+
* Support for 6LoWPAN over 802.15.4 model
 +
* Align with 802.15.4-2011 version of the standard
 +
* Define clearly what features are modeled and validated, and which are for further study.
  
 +
Other goals are TBD and will later be listed here.
  
 +
== Initial patch for review ==
  
==== Missing Features / TODO ====
+
Sascha Alexandar Jopen and Margherita Filippetti have proposed recent patches to the base Boeing patch, and Sascha has merged much of them to a single patch for review.  This is being reviewed until mid-February, at which time it will be merged to http://code.nsnam.org/lr-wpan/ns-3-lr-wpan/, and the remaining workplan for ns-3.20 will be decided.
 +
 
 +
The code review is listed here: https://codereview.appspot.com/59240044/
 +
 
 +
== Old list of issues with 802.15.4 model ==
 +
 
 +
Some initial code has been available at http://code.nsnam.org/tomh/ns-3-lr-wpan/.
 +
 
 +
Some missing features have been identified:
 
* Extended adresses
 
* Extended adresses
 
* Expose all MAC and PHY variables as ns-3 attributes.
 
* Expose all MAC and PHY variables as ns-3 attributes.
Line 42: Line 54:
 
* Coordinator, GTS, CAP
 
* Coordinator, GTS, CAP
  
=== 6LoWPAN ===
+
= 6LoWPAN =
  
 
The 6LoWPAN module has been merged with ns-3-dev and will be available in ns-3.19. The current implementation is based on RFCs 4944 and 6282.
 
The 6LoWPAN module has been merged with ns-3-dev and will be available in ns-3.19. The current implementation is based on RFCs 4944 and 6282.
Line 54: Line 66:
 
Currently, due to lack of resources, the development is on hold. Anyone interested in this development can contact [mailto:tommaso.pecorella@unifi.it Tommaso Pecorella]
 
Currently, due to lack of resources, the development is on hold. Anyone interested in this development can contact [mailto:tommaso.pecorella@unifi.it Tommaso Pecorella]
  
=== RPL (Routing Over Low power and Lossy networks) ===
+
= RPL (Routing Over Low power and Lossy networks) =
  
 
[http://tools.ietf.org/wg/roll/ RPL] is being developed by Tommaso Pecorella (and others). No repository is actually available and only a restricted set of developers have access to the code. It will be released as soon as it's ready for the general use.
 
[http://tools.ietf.org/wg/roll/ RPL] is being developed by Tommaso Pecorella (and others). No repository is actually available and only a restricted set of developers have access to the code. It will be released as soon as it's ready for the general use.

Revision as of 22:04, 1 February 2014

Main Page - Current Development - Developer FAQ - Tools - Related Projects - Project Ideas - Summer Projects

Installation - Troubleshooting - User FAQ - HOWTOs - Samples - Models - Education - Contributed Code - Papers

This page is for coordinating development of the lr-wpan model for ns-3.

History

802.15.4 models have been worked on in ns-2 dating to 2003.

  • A thorough model for 802.15.4 is implemented in ns-2 and described here
  • This work did some additional work on the ns-2 model.
  • more description of the ns-2 implementation is here

Some initial 802.15.4 models were contributed by Boeing in the 2011 timeframe, and maintained at http://code.nsnam.org/tomh/ns-3-lr-wpan/. This repository is now considered obsolete, replaced by http://code.nsnam.org/lr-wpan/ns-3-lr-wpan/.

Please see Sphinx documentation for a description of what is already done in this repository. This repository is only the starting point for a full 802.15.4 model.

In ns-3.19 release, a 6LoWPAN model was included, but the 6LoWPAN model precedes the 802.15.4 model, and hence can only run over wired links.

Current status and next steps

A set of developers plans to contribute initial 802.15.4 support for ns-3.20. This group plans to work on the ns-developers mailing list and propose a mergeable subset of full 802.15.4 support. Full 802.15.4 support is expected to require a few release cycles.

Goals for ns-3.20

  • Support for 6LoWPAN over 802.15.4 model
  • Align with 802.15.4-2011 version of the standard
  • Define clearly what features are modeled and validated, and which are for further study.

Other goals are TBD and will later be listed here.

Initial patch for review

Sascha Alexandar Jopen and Margherita Filippetti have proposed recent patches to the base Boeing patch, and Sascha has merged much of them to a single patch for review. This is being reviewed until mid-February, at which time it will be merged to http://code.nsnam.org/lr-wpan/ns-3-lr-wpan/, and the remaining workplan for ns-3.20 will be decided.

The code review is listed here: https://codereview.appspot.com/59240044/

Old list of issues with 802.15.4 model

Some initial code has been available at http://code.nsnam.org/tomh/ns-3-lr-wpan/.

Some missing features have been identified:

  • Extended adresses
  • Expose all MAC and PHY variables as ns-3 attributes.
  • Calculate and check FCS if global attribute ChecksumEnable is set.
  • Class WpanAddress is not used, remove? Or use it instead of Mac16Address/Mac64Address.
  • NetDevice: LinkUp, LinkDown, remove? Or enable/disable transceiver.
  • NetDevice: 6LoWPAN: Do you need the MTU, which MTU should we export? The maximum, i.e. without security, only 16bit addresses and with only the destination address and pan id, or source and destination addresses with pan id compression?
  • NetDevice: NeedsArp: Only true for 6LoWPAN?
  • Helper for assigning MacAddresses and configuring the lr-wpan stack.
  • LrWpanSpectrumValueHelper: Make noise factor accessible through the ns-3 attribute system
  • LrWpanSpectrumValueHelper: Make all functions static?
  • PHY: More sophisticated handling of interference, i.e. handle it at all
  • PHY: Tracing should be reviewed, especially RxBegin, RxEnd, RxDrop
  • PHY: Do we really need m_rxTotalNum, or can we derive the information from m_rxTotalPsd?
  • Coordinator, GTS, CAP

6LoWPAN

The 6LoWPAN module has been merged with ns-3-dev and will be available in ns-3.19. The current implementation is based on RFCs 4944 and 6282. The module does not implement all the 6LoWPAN features (in particular BC0, MESH and HC2 are not implemented). Moreover stateful compression is not yet supported (as it requires 6LoWPAN-ND).

Interested users should read the Doxygen and ns-3 manual for a full description of the module functionalities and limitations.


The "Neighbor Discovery Optimization for Low Power and Lossy Networks", also called 6LoWPAN-ND (RFC 6775) is strongly being considered for implementation. It could be extremely useful to study WSN bootstrap operations and proper RPL neighbor discovery under limited (i.e., non-multicast capable) assumptions. Moreover, 6LoWPAN-ND is required for stateful 6LoWPAN header compression. Currently, due to lack of resources, the development is on hold. Anyone interested in this development can contact Tommaso Pecorella

RPL (Routing Over Low power and Lossy networks)

RPL is being developed by Tommaso Pecorella (and others). No repository is actually available and only a restricted set of developers have access to the code. It will be released as soon as it's ready for the general use. Some of the features that will be in the model are:

  • full support for custom metrics
  • Storing with multicast support MOP
  • P2P routes

The RPL model is currently at its 5th refactoring. Current development is focusing on a better handling of parents, along with their metric changes.The new code will support seamless integration of new metrics, up but not limited to:

  • HC (the dumbest metric)
  • ETX
  • SNR
  • Energy
  • etc.

Note that, in order to really use the Energy metric, a full refactoring of the lr-wpan model will be required.


Next steps

There is presently no layer above this 802.15.4 that makes use of this code; ZigBee is a technology that could build on this. Non-IP packet generation, and routing, could be two topics of further development.

This could be a placeholder section for who is doing what, in the future.