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

Issue 273510043: Add coexistence and protection mechanisms for 802.11b stations in 802.11g networks

Can't Edit
Can't Publish+Mail
Start Review
Created:
8 years, 4 months ago by S. Deronne
Modified:
8 years, 1 month ago
Reviewers:
Tom Henderson
CC:
ns-3-reviews_googlegroups.com
Visibility:
Public.

Description

Those changes are related to bug 2120 in the Bugzilla tracker: - avoid that simulation fails or give null throughput when a 802.11b station is connected to a 802.11g access point; - add ERP information field in management frames; - support for short slot time; - support for protection mechanisms (RTS/CTS and CTS-TO-SELF) in order to protect ERP transmissions agains non-ERP stations; - add an example script to simulate a mixed b/g scenario.

Patch Set 1 #

Total comments: 12

Patch Set 2 : handled review comments, reworked example and fixed bugs #

Total comments: 13

Patch Set 3 : handle Tom's review comments #

Patch Set 4 : fasten test example #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1640 lines, -174 lines) Patch
M examples/wireless/examples-to-run.py View 1 1 chunk +1 line, -0 lines 0 comments Download
A examples/wireless/mixed-bg-network.cc View 1 2 3 1 chunk +306 lines, -0 lines 0 comments Download
M examples/wireless/wscript View 1 1 chunk +3 lines, -0 lines 0 comments Download
M src/wifi/model/aarf-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/aarfcd-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/amrr-wifi-manager.cc View 1 2 1 chunk +10 lines, -2 lines 0 comments Download
M src/wifi/model/ap-wifi-mac.h View 1 4 chunks +27 lines, -2 lines 0 comments Download
M src/wifi/model/ap-wifi-mac.cc View 1 13 chunks +157 lines, -3 lines 0 comments Download
M src/wifi/model/aparf-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/arf-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/capability-information.h View 1 2 chunks +17 lines, -1 line 0 comments Download
M src/wifi/model/capability-information.cc View 2 chunks +17 lines, -0 lines 0 comments Download
M src/wifi/model/cara-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
A src/wifi/model/erp-information.h View 1 2 1 chunk +119 lines, -0 lines 0 comments Download
A src/wifi/model/erp-information.cc View 1 2 1 chunk +151 lines, -0 lines 0 comments Download
M src/wifi/model/ideal-wifi-manager.cc View 1 2 1 chunk +24 lines, -7 lines 0 comments Download
M src/wifi/model/mac-low.cc View 1 2 3 17 chunks +78 lines, -17 lines 0 comments Download
M src/wifi/model/mgt-headers.h View 12 chunks +50 lines, -22 lines 0 comments Download
M src/wifi/model/mgt-headers.cc View 11 chunks +34 lines, -1 line 0 comments Download
M src/wifi/model/minstrel-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/onoe-wifi-manager.cc View 1 2 1 chunk +10 lines, -2 lines 0 comments Download
M src/wifi/model/parf-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/regular-wifi-mac.h View 1 5 chunks +45 lines, -1 line 0 comments Download
M src/wifi/model/regular-wifi-mac.cc View 1 2 7 chunks +68 lines, -26 lines 0 comments Download
M src/wifi/model/rraa-wifi-manager.cc View 1 2 1 chunk +10 lines, -1 line 0 comments Download
M src/wifi/model/sta-wifi-mac.cc View 1 7 chunks +81 lines, -3 lines 0 comments Download
M src/wifi/model/wifi-mac.h View 3 chunks +20 lines, -12 lines 0 comments Download
M src/wifi/model/wifi-mac.cc View 2 chunks +4 lines, -4 lines 0 comments Download
M src/wifi/model/wifi-phy.h View 1 1 chunk +3 lines, -3 lines 0 comments Download
M src/wifi/model/wifi-remote-station-manager.h View 1 2 11 chunks +115 lines, -15 lines 0 comments Download
M src/wifi/model/wifi-remote-station-manager.cc View 1 2 16 chunks +200 lines, -31 lines 0 comments Download
M src/wifi/model/yans-wifi-phy.h View 1 2 chunks +4 lines, -4 lines 0 comments Download
M src/wifi/model/yans-wifi-phy.cc View 1 3 chunks +14 lines, -10 lines 0 comments Download
M src/wifi/wscript View 1 2 chunks +2 lines, -0 lines 0 comments Download

Messages

Total messages: 5
Tom Henderson
I'm mainly suggesting a bit more work on the example so we can add it ...
8 years, 3 months ago (2015-12-18 22:51:16 UTC) #1
S. Deronne
I am finishing patch set 2, mainly example has been reworked and few bugs were ...
8 years, 1 month ago (2016-02-08 21:35:22 UTC) #2
S. Deronne
https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/wifi-remote-station-manager.cc File src/wifi/model/wifi-remote-station-manager.cc (right): https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/wifi-remote-station-manager.cc#newcode1570 src/wifi/model/wifi-remote-station-manager.cc:1570: //This is a implemented here to avoid changes in ...
8 years, 1 month ago (2016-02-08 22:35:00 UTC) #3
Tom Henderson
https://codereview.appspot.com/273510043/diff/20001/examples/wireless/mixed-bg-network.cc File examples/wireless/mixed-bg-network.cc (right): https://codereview.appspot.com/273510043/diff/20001/examples/wireless/mixed-bg-network.cc#newcode3 examples/wireless/mixed-bg-network.cc:3: * Copyright (c) 2016 missing a copyright assignee (also ...
8 years, 1 month ago (2016-02-10 23:31:08 UTC) #4
S. Deronne
8 years, 1 month ago (2016-02-14 15:41:01 UTC) #5
Made a new patch set, taking into account Tom's review comments.

https://codereview.appspot.com/273510043/diff/20001/examples/wireless/mixed-b...
File examples/wireless/mixed-bg-network.cc (right):

https://codereview.appspot.com/273510043/diff/20001/examples/wireless/mixed-b...
examples/wireless/mixed-bg-network.cc:3: * Copyright (c) 2016
On 2016/02/10 23:31:08, Tom Henderson wrote:
> missing a copyright assignee (also in other new files)

Done.

https://codereview.appspot.com/273510043/diff/20001/examples/wireless/mixed-b...
examples/wireless/mixed-bg-network.cc:40: // less overhead than Rts-Cts, but is
not heard by hidden stations (and is thus generally only recommanded as a
protection
On 2016/02/10 23:31:08, Tom Henderson wrote:
> recommended

Done.

https://codereview.appspot.com/273510043/diff/20001/examples/wireless/mixed-b...
examples/wireless/mixed-bg-network.cc:42: // short slot time is only observed in
a pure-G configuration.
On 2016/02/10 23:31:08, Tom Henderson wrote:
> are only observed

Done.

https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/regular-wi...
File src/wifi/model/regular-wifi-mac.cc (right):

https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/regular-wi...
src/wifi/model/regular-wifi-mac.cc:960: &WifiMac::SetShortSlotTimeSupported),
On 2016/02/10 23:31:08, Tom Henderson wrote:
> I realize that this patch follows the pattern already established in this file
> of making separate accessor methods (Setters and Getters) for every attribute,
> but is it necessary?  There is a generic SetAttribute() method for objects.  I
> think that, in practice, these are just typically being set through the
> attribute system, right?
> 
> Maybe this should be cleaned up some day to reduce the lines of code...

I agree, I suggest to postpone this cleanup action to another commit.

https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/wifi-remot...
File src/wifi/model/wifi-remote-station-manager.cc (right):

https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/wifi-remot...
src/wifi/model/wifi-remote-station-manager.cc:1608: return
m_bssBasicRateSet[index];
On 2016/02/10 23:31:08, Tom Henderson wrote:
> this doesn't seem right to me; you are filtering results but what can happen
> here is that user requests Mode 'i' but you may return a mode that is not 'i'
> (in fact, the very last mode in the list), and it is not clear from the API
that
> this logic is being applied.
> 
> I understand that you are trying to avoid touching RAA but it seems to me that
> you ought to make those changes to RAA, for clarity's sake.  Perhaps you need
> two new methods that do what you have here:  GetNNonErpBasicModes() and
> GetNonErpBasicMode (i) and leave the original methods untouched.

Looks indeed better, I go for it.

https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/yans-wifi-...
File src/wifi/model/yans-wifi-phy.cc (right):

https://codereview.appspot.com/273510043/diff/20001/src/wifi/model/yans-wifi-...
src/wifi/model/yans-wifi-phy.cc:1318: YansWifiPhy::SetShortPlcpPreambleSupported
(bool enable)
There is a check in ApWifiMac and StaWifiMac, and if it is an ERP station, it
will always be true, regardless of the value of this attribute.
Sign in to reply to this message.

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