Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1191)

Issue 8339045: initial ns-3 lr-wpan module

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years ago by Tom Henderson
Modified:
10 years, 5 months ago
Reviewers:
Sascha Jopen
CC:
ns-3-reviews_googlegroups.com
Visibility:
Public.

Description

This is being submitted for potential inclusion to ns-3.18 release cycle. This is not a full 802.15.4 model but covers these items for now: - APIs for PD, PLME, MCPS, MLME, and classes implementing Mac and Phy based on the spectrum architecture - 802.15.4 header/trailer, and PPDU formats - CSMA/CA state machine for unslotted operation - initial phy, error rate, and loss models for 2.4 GHz OQPSK

Patch Set 1 #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+9329 lines, -0 lines) Patch
A src/lr-wpan/doc/802-15-4-ber.eps View 1 chunk +1030 lines, -0 lines 0 comments Download
A src/lr-wpan/doc/802-15-4-psr-distance.eps View 1 chunk +908 lines, -0 lines 0 comments Download
A src/lr-wpan/doc/lr-wpan.rst View 1 chunk +224 lines, -0 lines 0 comments Download
A src/lr-wpan/doc/lr-wpan-arch.dia View Binary file 0 comments Download
A src/lr-wpan/doc/lr-wpan-data-example.dia View Binary file 0 comments Download
A src/lr-wpan/doc/lr-wpan-primitives.dia View Binary file 0 comments Download
A src/lr-wpan/examples/lr-wpan-data.cc View 1 chunk +153 lines, -0 lines 0 comments Download
A src/lr-wpan/examples/lr-wpan-error-distance-plot.cc View 1 chunk +163 lines, -0 lines 0 comments Download
A src/lr-wpan/examples/lr-wpan-error-model-plot.cc View 1 chunk +84 lines, -0 lines 0 comments Download
A src/lr-wpan/examples/lr-wpan-packet-print.cc View 1 chunk +53 lines, -0 lines 0 comments Download
A src/lr-wpan/examples/lr-wpan-phy-test.cc View 1 chunk +94 lines, -0 lines 0 comments Download
A src/lr-wpan/examples/wscript View 1 chunk +17 lines, -0 lines 0 comments Download
A src/lr-wpan/helper/lr-wpan-helper.h View 1 chunk +116 lines, -0 lines 0 comments Download
A src/lr-wpan/helper/lr-wpan-helper.cc View 1 chunk +324 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-csmaca.h View 1 chunk +148 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-csmaca.cc View 1 chunk +366 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-error-model.h View 1 chunk +59 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-error-model.cc View 1 chunk +79 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-error-rate-model.h View 1 chunk +51 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-error-rate-model.cc View 1 chunk +79 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-mac.h View 1 chunk +388 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-mac.cc View 1 chunk +634 lines, -0 lines 4 comments Download
A src/lr-wpan/model/lr-wpan-mac-header.h View 1 chunk +241 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-mac-header.cc View 1 chunk +834 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-mac-trailer.h View 1 chunk +49 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-mac-trailer.cc View 1 chunk +73 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-net-device.h View 1 chunk +128 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-net-device.cc View 1 chunk +392 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-phy.h View 1 chunk +477 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-phy.cc View 1 chunk +1036 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-spectrum-signal-parameters.h View 1 chunk +61 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-spectrum-signal-parameters.cc View 1 chunk +49 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-spectrum-value-helper.h View 1 chunk +68 lines, -0 lines 0 comments Download
A src/lr-wpan/model/lr-wpan-spectrum-value-helper.cc View 1 chunk +133 lines, -0 lines 0 comments Download
A src/lr-wpan/model/wpan-address.h View 1 chunk +53 lines, -0 lines 0 comments Download
A src/lr-wpan/model/wpan-address.cc View 1 chunk +68 lines, -0 lines 0 comments Download
A src/lr-wpan/model/wpan-spectrum-propagation-loss-model.h View 1 chunk +58 lines, -0 lines 0 comments Download
A src/lr-wpan/model/wpan-spectrum-propagation-loss-model.cc View 1 chunk +91 lines, -0 lines 0 comments Download
A src/lr-wpan/test/examples-to-run.py View 1 chunk +23 lines, -0 lines 0 comments Download
A src/lr-wpan/test/lr-wpan-error-model-test.cc View 1 chunk +184 lines, -0 lines 0 comments Download
A src/lr-wpan/test/lr-wpan-packet-test.cc View 1 chunk +121 lines, -0 lines 0 comments Download
A src/lr-wpan/test/lr-wpan-pd-plme-sap-test.cc View 1 chunk +99 lines, -0 lines 0 comments Download
A src/lr-wpan/test/lr-wpan-spectrum-value-helper-test.cc View 1 chunk +78 lines, -0 lines 0 comments Download
A src/lr-wpan/wscript View 1 chunk +43 lines, -0 lines 0 comments Download

Messages

Total messages: 1
Sascha Jopen
10 years, 5 months ago (2013-11-05 14:50:04 UTC) #1
Hi,

i started using the lr-wpan code and found that it is missing acknowledgements.
While i am trying to implement this feature, i found some lines of code which i
either do not fully understand, or which are not correct. Because the lr-wpan
module is not part of ns-3-dev, i used this code review to drop my comments.

I'm willing to contribute my future implementation of the ACK feature to this
module.

Regards,
Sascha

https://codereview.appspot.com/8339045/diff/1/src/lr-wpan/model/lr-wpan-mac.cc
File src/lr-wpan/model/lr-wpan-mac.cc (right):

https://codereview.appspot.com/8339045/diff/1/src/lr-wpan/model/lr-wpan-mac.c...
src/lr-wpan/model/lr-wpan-mac.cc:223: //extract the last 3 bits in TxOptions and
map to macHdr
Maybe the "bits" should have symbolic names from an enum like
int b0 = params.m_txOptions & TX_OPTION_ACK;
int b1 = params.m_txOptions & TX_OPTION_GTS;
int b2 = params.m_txOptions & TX_OPTION_INDIRECT;

https://codereview.appspot.com/8339045/diff/1/src/lr-wpan/model/lr-wpan-mac.c...
src/lr-wpan/model/lr-wpan-mac.cc:310: m_mcpsDataConfirmCallback (confirmParams);
MCPS_DATA.confirm with status SUCCESS should be called after successfull
transmission by the PHY, including the acknowlegment, if requested, see Figure
84, page 223 IEEE 802.15.4-2009.

https://codereview.appspot.com/8339045/diff/1/src/lr-wpan/model/lr-wpan-mac.c...
src/lr-wpan/model/lr-wpan-mac.cc:316: if (m_txQueue.empty ())
I think there should be no queuing involved in packet transmission. Only if this
is a PAN coordinator and we received a packet for indirect transmission, the
packet should be put into a transaction queue. Queuing should be done by the
NetDevice if appropriate.

https://codereview.appspot.com/8339045/diff/1/src/lr-wpan/model/lr-wpan-mac.c...
src/lr-wpan/model/lr-wpan-mac.cc:321: Simulator::ScheduleNow
(&LrWpanCsmaCa::Start, m_csmaCa);
Shouldn't we do a PLME-SET-TRX-STATE.request(RX_ON) before starting the CCA?
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b