A Discrete-Event Network Simulator
API
wifi-manager-example.cc File Reference
#include "ns3/log.h"
#include "ns3/config.h"
#include "ns3/uinteger.h"
#include "ns3/boolean.h"
#include "ns3/double.h"
#include "ns3/enum.h"
#include "ns3/tuple.h"
#include "ns3/gnuplot.h"
#include "ns3/command-line.h"
#include "ns3/yans-wifi-helper.h"
#include "ns3/ssid.h"
#include "ns3/propagation-loss-model.h"
#include "ns3/propagation-delay-model.h"
#include "ns3/rng-seed-manager.h"
#include "ns3/mobility-helper.h"
#include "ns3/wifi-net-device.h"
#include "ns3/packet-socket-helper.h"
#include "ns3/packet-socket-client.h"
#include "ns3/packet-socket-server.h"
#include "ns3/ht-configuration.h"
#include "ns3/he-configuration.h"
+ Include dependency graph for wifi-manager-example.cc:

Go to the source code of this file.

Classes

struct  StandardInfo
 StandardInfo structure. More...
 
struct  Step
 Step structure. More...
 

Functions

void ChangeSignalAndReportRate (Ptr< FixedRssLossModel > rssModel, Step step, double rss, Gnuplot2dDataset &rateDataset, Gnuplot2dDataset &actualDataset)
 
void PacketRx (Ptr< const Packet > pkt, const Address &addr)
 
void RateChange (uint64_t oldVal, uint64_t newVal)
 

Variables

double g_intervalBytes = 0
 
uint64_t g_intervalRate = 0
 
const double NOISE_DBM_Hz = -174.0
 
double noiseDbm = NOISE_DBM_Hz
 

Detailed Description

Usage

$ ./ns3 run "wifi-manager-example [Program Options]"

Program Options

–maxSsrc
The maximum number of retransmission attempts for a RTS packet [7]
–maxSlrc
The maximum number of retransmission attempts for a Data packet [7]
–rtsThreshold
RTS threshold [999999]
–maxAmpduSize
Max A-MPDU size [65535]
–stepSize
Power between steps (dBm) [1]
–stepTime
Time on each step (seconds) [1]
–broadcast
Send broadcast instead of unicast [false]
–serverChannelWidth
Set channel width of the server (valid only for 802.11n or ac) [0]
–clientChannelWidth
Set channel width of the client (valid only for 802.11n or ac) [0]
–serverNss
Set nss of the server (valid only for 802.11n or ac) [1]
–clientNss
Set nss of the client (valid only for 802.11n or ac) [1]
–serverShortGuardInterval
Set short guard interval of the server (802.11n/ac/ax) in nanoseconds [800]
–clientShortGuardInterval
Set short guard interval of the client (802.11n/ac/ax) in nanoseconds [800]
–standard
Set standard (802.11a, 802.11b, 802.11g, 802.11p-10MHz, 802.11p-5MHz, 802.11n-5GHz, 802.11n-2.4GHz, 802.11ac, 802.11ax-6GHz, 802.11ax-5GHz, 802.11ax-2.4GHz) [802.11a]
–wifiManager
Set wifi rate manager (Aarf, Aarfcd, Amrr, Arf, Cara, Ideal, Minstrel, MinstrelHt, Onoe, Rraa, ThompsonSampling) [Ideal]
–infrastructure
Use infrastructure instead of adhoc [false]

Definition in file wifi-manager-example.cc.

Function Documentation

◆ ChangeSignalAndReportRate()

void ChangeSignalAndReportRate ( Ptr< FixedRssLossModel rssModel,
Step  step,
double  rss,
Gnuplot2dDataset rateDataset,
Gnuplot2dDataset actualDataset 
)

◆ PacketRx()

void PacketRx ( Ptr< const Packet pkt,
const Address addr 
)

Definition at line 74 of file wifi-manager-example.cc.

References g_intervalBytes, and ns3::Packet::GetSize().

+ Here is the call graph for this function:

◆ RateChange()

void RateChange ( uint64_t  oldVal,
uint64_t  newVal 
)

Definition at line 80 of file wifi-manager-example.cc.

References g_intervalRate, and NS_LOG_DEBUG.

Variable Documentation

◆ g_intervalBytes

double g_intervalBytes = 0

Definition at line 70 of file wifi-manager-example.cc.

Referenced by ChangeSignalAndReportRate(), and PacketRx().

◆ g_intervalRate

uint64_t g_intervalRate = 0

Definition at line 71 of file wifi-manager-example.cc.

Referenced by ChangeSignalAndReportRate(), and RateChange().

◆ NOISE_DBM_Hz

const double NOISE_DBM_Hz = -174.0

Definition at line 67 of file wifi-manager-example.cc.

◆ noiseDbm

double noiseDbm = NOISE_DBM_Hz

Definition at line 68 of file wifi-manager-example.cc.

Referenced by ChangeSignalAndReportRate().