A Discrete-Event Network Simulator
API
ns3::DsssErrorRateModel Class Reference

an implementation of DSSS error rate modelThe 802.11b modulations: More...

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

Static Public Member Functions

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

Static Protected Attributes

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

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 Digitial 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 66 of file dsss-error-rate-model.h.

Member Function Documentation

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

A function DQPSK.

Parameters
xx
Returns
DQPSK (x)

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

References NS_LOG_FUNCTION_NOARGS, and sample-rng-plot::x.

Referenced by GetDsssDqpskSuccessRate().

+ Here is the caller graph for this function:

double ns3::DsssErrorRateModel::GetDsssDbpskSuccessRate ( double  sinr,
uint32_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 43 of file dsss-error-rate-model.cc.

References NS_LOG_FUNCTION_NOARGS.

Referenced by ns3::NistErrorRateModel::GetChunkSuccessRate(), and ns3::YansErrorRateModel::GetChunkSuccessRate().

+ Here is the caller graph for this function:

double ns3::DsssErrorRateModel::GetDsssDqpskCck11SuccessRate ( double  sinr,
uint32_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 95 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 ns3::NistErrorRateModel::GetChunkSuccessRate(), and ns3::YansErrorRateModel::GetChunkSuccessRate().

+ Here is the caller graph for this function:

double ns3::DsssErrorRateModel::GetDsssDqpskCck5_5SuccessRate ( double  sinr,
uint32_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 61 of file dsss-error-rate-model.cc.

References NS_LOG_FUNCTION_NOARGS, NS_LOG_WARN, WLAN_SIR_IMPOSSIBLE, and WLAN_SIR_PERFECT.

Referenced by ns3::NistErrorRateModel::GetChunkSuccessRate(), and ns3::YansErrorRateModel::GetChunkSuccessRate().

+ Here is the caller graph for this function:

double ns3::DsssErrorRateModel::GetDsssDqpskSuccessRate ( double  sinr,
uint32_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 52 of file dsss-error-rate-model.cc.

References DqpskFunction(), and NS_LOG_FUNCTION_NOARGS.

Referenced by ns3::NistErrorRateModel::GetChunkSuccessRate(), and ns3::YansErrorRateModel::GetChunkSuccessRate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

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

WLAN impossible.

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

Referenced by GetDsssDqpskCck11SuccessRate(), and GetDsssDqpskCck5_5SuccessRate().

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

WLAN perfect.

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

Referenced by GetDsssDqpskCck11SuccessRate(), and GetDsssDqpskCck5_5SuccessRate().


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