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

Issue 11345043: 11n all-in-one

Can't Edit
Can't Publish+Mail
Start Review
Created:
10 years, 8 months ago by gbadawy
Modified:
9 years, 11 months ago
CC:
ns-3-reviews_googlegroups.com
Visibility:
Public.

Description

This code adds the new 11n data rates, support for short guard interval, greenfield and mixed HT preambles and HT wifi mac. It also adds the HT-Capabilities information element It does not add HT operations information elelment, A-MPDU, or CTS-To-Self and is thus not yet full 802.11n support.

Patch Set 1 #

Total comments: 17

Patch Set 2 : corrected the interference-helper error and some other comments for 11n #

Total comments: 20

Patch Set 3 : Added a test and implemented the comments #

Patch Set 4 : Added test in wifi-interference-test-suite #

Patch Set 5 : Divided HighLatencyTxVectorTag to 3 separate tags #

Unified diffs Side-by-side diffs Delta from patch set Stats (+4380 lines, -386 lines) Patch
M CHANGES.html View 1 chunk +22 lines, -0 lines 0 comments Download
M RELEASE_NOTES View 1 chunk +1 line, -0 lines 0 comments Download
A examples/wireless/ht-wifi-network.cc View 1 2 1 chunk +244 lines, -0 lines 0 comments Download
M examples/wireless/wscript View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M src/mesh/model/dot11s/airtime-metric.cc View 3 chunks +6 lines, -2 lines 0 comments Download
M src/test/ns3wifi/wifi-interference-test-suite.cc View 1 2 3 6 chunks +31 lines, -6 lines 0 comments Download
M src/wifi/doc/wifi.rst View 1 3 chunks +24 lines, -1 line 0 comments Download
M src/wifi/examples/wifi-phy-test.cc View 4 chunks +13 lines, -3 lines 0 comments Download
A src/wifi/helper/ht-wifi-mac-helper.h View 1 chunk +60 lines, -0 lines 0 comments Download
A src/wifi/helper/ht-wifi-mac-helper.cc View 1 chunk +55 lines, -0 lines 0 comments Download
M src/wifi/helper/yans-wifi-helper.cc View 1 2 chunks +3 lines, -1 line 0 comments Download
M src/wifi/model/aarf-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/aarf-wifi-manager.cc View 1 2 1 chunk +6 lines, -6 lines 0 comments Download
M src/wifi/model/aarfcd-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/aarfcd-wifi-manager.cc View 1 2 1 chunk +6 lines, -6 lines 0 comments Download
M src/wifi/model/amrr-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/amrr-wifi-manager.cc View 1 2 3 chunks +8 lines, -7 lines 0 comments Download
M src/wifi/model/ap-wifi-mac.h View 2 chunks +2 lines, -1 line 0 comments Download
M src/wifi/model/ap-wifi-mac.cc View 1 8 chunks +73 lines, -3 lines 0 comments Download
M src/wifi/model/arf-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/arf-wifi-manager.cc View 1 2 2 chunks +8 lines, -6 lines 0 comments Download
M src/wifi/model/cara-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/cara-wifi-manager.cc View 1 2 2 chunks +8 lines, -6 lines 0 comments Download
M src/wifi/model/constant-rate-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/constant-rate-wifi-manager.cc View 1 2 2 chunks +8 lines, -6 lines 0 comments Download
M src/wifi/model/edca-txop-n.h View 1 chunk +4 lines, -1 line 0 comments Download
A src/wifi/model/ht-capabilities.h View 1 2 1 chunk +123 lines, -0 lines 0 comments Download
A src/wifi/model/ht-capabilities.cc View 1 2 1 chunk +336 lines, -0 lines 0 comments Download
M src/wifi/model/ideal-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/ideal-wifi-manager.cc View 1 2 4 chunks +8 lines, -7 lines 0 comments Download
M src/wifi/model/interference-helper.h View 5 chunks +5 lines, -2 lines 0 comments Download
M src/wifi/model/interference-helper.cc View 1 2 3 6 chunks +235 lines, -42 lines 0 comments Download
M src/wifi/model/mac-low.h View 9 chunks +32 lines, -12 lines 0 comments Download
M src/wifi/model/mac-low.cc View 1 2 33 chunks +338 lines, -76 lines 0 comments Download
M src/wifi/model/mgt-headers.h View 9 chunks +14 lines, -1 line 0 comments Download
M src/wifi/model/mgt-headers.cc View 20 chunks +60 lines, -4 lines 0 comments Download
M src/wifi/model/minstrel-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/minstrel-wifi-manager.cc View 1 2 4 chunks +11 lines, -7 lines 0 comments Download
M src/wifi/model/nist-error-rate-model.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/wifi/model/onoe-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/onoe-wifi-manager.cc View 1 2 3 chunks +9 lines, -6 lines 0 comments Download
M src/wifi/model/regular-wifi-mac.h View 4 chunks +28 lines, -0 lines 0 comments Download
M src/wifi/model/regular-wifi-mac.cc View 5 chunks +51 lines, -0 lines 0 comments Download
M src/wifi/model/rraa-wifi-manager.h View 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/rraa-wifi-manager.cc View 1 2 3 chunks +8 lines, -6 lines 0 comments Download
M src/wifi/model/sta-wifi-mac.h View 1 chunk +3 lines, -0 lines 0 comments Download
M src/wifi/model/sta-wifi-mac.cc View 1 10 chunks +75 lines, -1 line 0 comments Download
M src/wifi/model/supported-rates.h View 1 1 chunk +2 lines, -2 lines 0 comments Download
M src/wifi/model/wifi-information-element.h View 1 chunk +1 line, -1 line 0 comments Download
M src/wifi/model/wifi-mac.h View 4 chunks +13 lines, -0 lines 0 comments Download
M src/wifi/model/wifi-mac.cc View 5 chunks +37 lines, -2 lines 0 comments Download
M src/wifi/model/wifi-mac-header.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/wifi/model/wifi-mac-header.cc View 5 chunks +20 lines, -1 line 0 comments Download
M src/wifi/model/wifi-mode.h View 2 chunks +7 lines, -1 line 0 comments Download
M src/wifi/model/wifi-mode.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M src/wifi/model/wifi-phy.h View 1 2 9 chunks +179 lines, -9 lines 0 comments Download
M src/wifi/model/wifi-phy.cc View 1 2 13 chunks +605 lines, -16 lines 0 comments Download
M src/wifi/model/wifi-phy-standard.h View 1 2 1 chunk +6 lines, -1 line 0 comments Download
M src/wifi/model/wifi-preamble.h View 1 chunk +3 lines, -1 line 0 comments Download
M src/wifi/model/wifi-remote-station-manager.h View 1 2 15 chunks +117 lines, -10 lines 0 comments Download
M src/wifi/model/wifi-remote-station-manager.cc View 1 2 3 4 16 chunks +592 lines, -72 lines 0 comments Download
A src/wifi/model/wifi-tx-vector.h View 1 2 1 chunk +131 lines, -0 lines 0 comments Download
A src/wifi/model/wifi-tx-vector.cc View 1 2 1 chunk +119 lines, -0 lines 0 comments Download
M src/wifi/model/yans-wifi-channel.h View 3 chunks +3 lines, -2 lines 0 comments Download
M src/wifi/model/yans-wifi-channel.cc View 2 chunks +5 lines, -4 lines 0 comments Download
M src/wifi/model/yans-wifi-phy.h View 1 2 8 chunks +112 lines, -6 lines 0 comments Download
M src/wifi/model/yans-wifi-phy.cc View 1 2 3 11 chunks +452 lines, -12 lines 0 comments Download
M src/wifi/test/tx-duration-test.cc View 1 2 5 chunks +22 lines, -4 lines 0 comments Download
M src/wifi/test/wifi-test.cc View 1 2 3 1 chunk +0 lines, -1 line 0 comments Download
M src/wifi/wscript View 2 chunks +6 lines, -0 lines 0 comments Download

Messages

Total messages: 10
Matías Richart
Hi again Ghada. I think I found a bug. https://codereview.appspot.com/11345043/diff/1/src/wifi/model/interference-helper.cc File src/wifi/model/interference-helper.cc (right): https://codereview.appspot.com/11345043/diff/1/src/wifi/model/interference-helper.cc#newcode514 src/wifi/model/interference-helper.cc:514: ...
10 years, 8 months ago (2013-07-17 19:39:31 UTC) #1
Junling Bu
I am not familiar with 802.11n, so I just give my personal thought after reviewing. ...
10 years, 8 months ago (2013-07-18 12:42:02 UTC) #2
gbadawy
On 2013/07/17 19:39:31, Matías Richart wrote: > Hi again Ghada. > I think I found ...
10 years, 8 months ago (2013-07-18 15:56:09 UTC) #3
gbadawy
On 2013/07/18 12:42:02, Junling Bu wrote: > I am not familiar with 802.11n, so I ...
10 years, 8 months ago (2013-07-18 17:13:06 UTC) #4
Junling Bu
10 years, 8 months ago (2013-07-20 13:53:14 UTC) #5
Daniel L.
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h File src/wifi/model/wifi-phy.h (right): https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h#newcode254 src/wifi/model/wifi-phy.h:254: static uint32_t GetPlcpHtTrainingSymboldDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble, WifiTxVector txvector); ...
10 years, 8 months ago (2013-07-28 23:07:42 UTC) #6
gbadawy
On 2013/07/28 23:07:42, Daniel L. wrote: > https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h > File src/wifi/model/wifi-phy.h (right): > > https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h#newcode254 ...
10 years, 8 months ago (2013-07-29 15:36:54 UTC) #7
Daniel L.
Hi Ghada, It's just how the variable declarations are aligned, for example: aligned: uint32_t a ...
10 years, 8 months ago (2013-07-29 15:42:09 UTC) #8
Nicola Baldo
First of all, thanks for this contribution! Clearly there is a significant amount of work ...
10 years, 8 months ago (2013-07-30 18:21:50 UTC) #9
gbadawy
10 years, 8 months ago (2013-08-01 15:37:13 UTC) #10
> First of all, thanks for this contribution! Clearly there is a significant
> amount of work behind this patch. Plus, I am glad that someone finally found
the
> TxVector patch useful :-)
> 
> As a general question, it would be good to have some tests for some key
> functionalities which are being modified/enhanced, such as the TX duration
> calculation and the interference calculation. 
> 
> Please find below some detailed comments on the code.
> 
> Regards,
> 
> Nicola

Hi Nicola,
Thanks for the txVecto patch it was very useful :) Also thank you for the test
idea I needed some I will upload a new patch with at txDuration test case and I
am working on the interference one

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/ht-capabili...
> File src/wifi/model/ht-capabilities.cc (right):
> 
>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/ht-capabili...
> src/wifi/model/ht-capabilities.cc:3: * Copyright (c) 2010 CTTC
> really? :-)
Deleted

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/interferenc...
> File src/wifi/model/interference-helper.cc (right):
> 
>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/interferenc...
> src/wifi/model/interference-helper.cc:319: /* else if (current
> >=plcpHtTrainingSymbolsStart)
> kill dead code
Done

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy-st...
> File src/wifi/model/wifi-phy-standard.h (right):
> 
>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy-st...
> src/wifi/model/wifi-phy-standard.h:52: //added by Ghada Badawy
> These comments are not needed. We use mercurial's history for this purpose.
Done

> https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h
> File src/wifi/model/wifi-phy.h (right):
> 
>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h#...
> src/wifi/model/wifi-phy.h:363: virtual uint32_t GetBssMembershipSelector
> (uint32_t selector) const=0;
> please add doxygen for all these public methods
Done

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-phy.h#...
> src/wifi/model/wifi-phy.h:566: virtual void SetStbc (bool stbc)=0;
> please add doxygen to all public methods
Done

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-tx-vec...
> File src/wifi/model/wifi-tx-vector.h (right):
> 
>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/wifi-tx-vec...
> src/wifi/model/wifi-tx-vector.h:52: WifiMode GetMode (void) const;
> please add doxygen for public members
Done

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/yans-wifi-p...
> File src/wifi/model/yans-wifi-phy.h (right):
> 
>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/yans-wifi-p...
> src/wifi/model/yans-wifi-phy.h:158: virtual void SetFreq (uint32_t freq);
> What is the relation between SetFreq and SetChannelNumber()? Are both really
> needed?
In all previous IEEE standards the standard defined one operation frequency
until 11n where the standard defines 2 the 2.4 GHz and the 5GHz so I created
SetFrequency() to set the m_channelstartingfrequency depending on the user
input. Before there was no access to m_channelstartingfrequency it was set
automatically in ConfigureX() where X represents the chosen standard. I had a
variable called m_frequency. I deleted that one as it is a duplicate to
m_channelstartingfrequency. So does that make sense now?

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/yans-wifi-p...
> src/wifi/model/yans-wifi-phy.h:162: virtual void SetNumberOfTx (uint32_t tx);
> is "number of transmitters" a standard naming? If it's not, I'd propose a more
> meaningful "number of transmitting antennas".
changed to NumberOfTransmitAntennas as in the standard

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/yans-wifi-p...
> src/wifi/model/yans-wifi-phy.h:166: virtual void SetNumberOfRx (uint32_t rx) ;
> same as previous comment
Done

>
https://codereview.appspot.com/11345043/diff/22001/src/wifi/model/yans-wifi-p...
> src/wifi/model/yans-wifi-phy.h:174: * \paramif LDPC is supported or not
> \paramif ?
Changed

Thanks
Ghada
Sign in to reply to this message.

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