A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::DsssErrorRateModel Class Reference

an implementation of DSSS error rate model More...

#include "dsss-error-rate-model.h"

+ Collaboration diagram for ns3::DsssErrorRateModel:

Static Public Member Functions

static double DqpskFunction (double x)
 A function DQPSK.
 
static double GetDsssDbpskSuccessRate (double sinr, uint64_t nbits)
 Return the chunk success rate of the differential BPSK.
 
static double GetDsssDqpskCck11SuccessRate (double sinr, uint64_t nbits)
 Return the chunk success rate of the differential encoded QPSK for 11Mbps data rate.
 
static double GetDsssDqpskCck5_5SuccessRate (double sinr, uint64_t nbits)
 Return the chunk success rate of the differential encoded QPSK for 5.5Mbps data rate.
 
static double GetDsssDqpskSuccessRate (double sinr, uint64_t nbits)
 Return the chunk success rate of the differential encoded QPSK.
 

Static Protected Attributes

static const double WLAN_SIR_IMPOSSIBLE = 0.1
 WLAN impossible.
 
static const double WLAN_SIR_PERFECT = 10.0
 WLAN perfect.
 

Detailed Description

an implementation of DSSS error rate model

The 802.11b modulations:

  • 1 Mbps mode is based on DBPSK. BER is from equation 5.2-69 from John G. Proakis Digital Communications, 2001 edition
  • 2 Mbps model is based on DQPSK. Equation 8 from "Tight bounds and accurate approximations for DQPSK transmission bit error rate", G. Ferrari and G.E. Corazza ELECTRONICS LETTERS, 40(20):1284-1285, September 2004
  • 5.5 Mbps and 11 Mbps are based on equations (18) and (17) from "Properties and performance of the IEEE 802.11b complementarycode-key signal sets", Michael B. Pursley and Thomas C. Royster. IEEE TRANSACTIONS ON COMMUNICATIONS, 57(2):440-449, February 2009.

This model is designed to run with highest accuracy using the GNU Scientific Library (GSL), but if GSL is not installed on the platform, will fall back to (slightly less accurate) Matlab-derived models for the CCK modulation types.

More detailed description and validation can be found in http://www.nsnam.org/~pei/80211b.pdf

Definition at line 61 of file dsss-error-rate-model.h.

Member Function Documentation

◆ DqpskFunction()

double ns3::DsssErrorRateModel::DqpskFunction ( double x)
static

A function DQPSK.

Parameters
xthe input variable
Returns
DQPSK (x)

Definition at line 33 of file dsss-error-rate-model.cc.

References NS_LOG_FUNCTION_NOARGS.

Referenced by GetDsssDqpskSuccessRate().

+ Here is the caller graph for this function:

◆ GetDsssDbpskSuccessRate()

double ns3::DsssErrorRateModel::GetDsssDbpskSuccessRate ( double sinr,
uint64_t nbits )
static

Return the chunk success rate of the differential BPSK.

Parameters
sinrthe SINR ratio (not dB) of the chunk
nbitsthe size of the chunk
Returns
the chunk success rate of the differential BPSK

Definition at line 41 of file dsss-error-rate-model.cc.

References NS_LOG_FUNCTION_NOARGS.

Referenced by WifiErrorRateModelsTestCaseDsss::DoRun(), and ns3::ErrorRateModel::GetChunkSuccessRate().

+ Here is the caller graph for this function:

◆ GetDsssDqpskCck11SuccessRate()

double ns3::DsssErrorRateModel::GetDsssDqpskCck11SuccessRate ( double sinr,
uint64_t nbits )
static

Return the chunk success rate of the differential encoded QPSK for 11Mbps data rate.

Parameters
sinrthe SINR ratio (not dB) of the chunk
nbitsthe size of the chunk
Returns
the chunk success rate of the differential encoded QPSK for

Definition at line 93 of file dsss-error-rate-model.cc.

References NS_LOG_DEBUG, NS_LOG_FUNCTION_NOARGS, NS_LOG_WARN, WLAN_SIR_IMPOSSIBLE, and WLAN_SIR_PERFECT.

Referenced by WifiErrorRateModelsTestCaseDsss::DoRun(), and ns3::ErrorRateModel::GetChunkSuccessRate().

+ Here is the caller graph for this function:

◆ GetDsssDqpskCck5_5SuccessRate()

double ns3::DsssErrorRateModel::GetDsssDqpskCck5_5SuccessRate ( double sinr,
uint64_t nbits )
static

Return the chunk success rate of the differential encoded QPSK for 5.5Mbps data rate.

Parameters
sinrthe SINR ratio (not dB) of the chunk
nbitsthe size of the chunk
Returns
the chunk success rate of the differential encoded QPSK for

Definition at line 59 of file dsss-error-rate-model.cc.

References NS_LOG_FUNCTION_NOARGS, NS_LOG_WARN, WLAN_SIR_IMPOSSIBLE, and WLAN_SIR_PERFECT.

Referenced by WifiErrorRateModelsTestCaseDsss::DoRun(), and ns3::ErrorRateModel::GetChunkSuccessRate().

+ Here is the caller graph for this function:

◆ GetDsssDqpskSuccessRate()

double ns3::DsssErrorRateModel::GetDsssDqpskSuccessRate ( double sinr,
uint64_t nbits )
static

Return the chunk success rate of the differential encoded QPSK.

Parameters
sinrthe SINR ratio (not dB) of the chunk
nbitsthe size of the chunk
Returns
the chunk success rate of the differential encoded QPSK.

Definition at line 50 of file dsss-error-rate-model.cc.

References DqpskFunction(), and NS_LOG_FUNCTION_NOARGS.

Referenced by WifiErrorRateModelsTestCaseDsss::DoRun(), and ns3::ErrorRateModel::GetChunkSuccessRate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ WLAN_SIR_IMPOSSIBLE

const double ns3::DsssErrorRateModel::WLAN_SIR_IMPOSSIBLE = 0.1
staticprotected

WLAN impossible.

Definition at line 119 of file dsss-error-rate-model.h.

Referenced by GetDsssDqpskCck11SuccessRate(), and GetDsssDqpskCck5_5SuccessRate().

◆ WLAN_SIR_PERFECT

const double ns3::DsssErrorRateModel::WLAN_SIR_PERFECT = 10.0
staticprotected

WLAN perfect.

Definition at line 117 of file dsss-error-rate-model.h.

Referenced by GetDsssDqpskCck11SuccessRate(), and GetDsssDqpskCck5_5SuccessRate().


The documentation for this class was generated from the following files: