ns-3
ns3::RateErrorModel Class Reference

Determine which packets are errored corresponding to an underlying distribution, rate, and unit. More...

#include <error-model.h>

Inheritance diagram for ns3::RateErrorModel:
Collaboration diagram for ns3::RateErrorModel:

List of all members.

Public Member Functions

enum ErrorUnit GetUnit (void) const
void SetUnit (enum ErrorUnit error_unit)
double GetRate (void) const
void SetRate (double rate)
void SetRandomVariable (const RandomVariable &ranvar)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::RateErrorModel.

Detailed Description

Determine which packets are errored corresponding to an underlying distribution, rate, and unit.

This object is used to flag packets as being lost/errored or not. The two parameters that govern the behavior are the rate (or equivalently, the mean duration/spacing between errors), and the unit (which may be per-bit, per-byte, and per-packet). Users can optionally provide a RandomVariable object; the default is to use a Uniform(0,1) distribution.

Reset() on this model will do nothing

IsCorrupt() will not modify the packet data buffer


Member Function Documentation

double ns3::RateErrorModel::GetRate ( void  ) const
Returns:
the error rate being applied by the model

References NS_LOG_FUNCTION_NOARGS.

This method returns the TypeId associated to ns3::RateErrorModel.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::CsmaNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::ErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::PointToPointNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::SimpleNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::CsmaNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::CsmaNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::ErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::PointToPointNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::SimpleNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::PointToPointNetDevice/ReceiveErrorModel/$ns3::RateErrorModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::SimpleNetDevice/ReceiveErrorModel/$ns3::RateErrorModel

Attributes defined for this type:

  • ErrorUnit: The error unit
    • Set with class: ns3::EnumValue
    • Underlying type: EU_BYTE|EU_PKT|EU_BIT
    • Initial value: EU_BYTE
    • Flags: construct write read
  • ErrorRate: The error rate.
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 0
    • Flags: construct write read
  • RanVar: The decision variable attached to this error model.

Attributes defined in parent class ns3::ErrorModel:

  • IsEnabled: Whether this ErrorModel is enabled or not.
    • Set with class: BooleanValue
    • Underlying type: bool
    • Initial value: true
    • Flags: construct write read

No TraceSources defined for this type.

Reimplemented from ns3::ErrorModel.

References ns3::TypeId::SetParent().

enum ErrorUnit ns3::RateErrorModel::GetUnit ( void  ) const
Returns:
the ErrorUnit being used by the underlying model

References NS_LOG_FUNCTION_NOARGS.

Parameters:
ranvarA random variable distribution to generate random variates

References NS_LOG_FUNCTION_NOARGS.

void ns3::RateErrorModel::SetRate ( double  rate)
Parameters:
ratethe error rate to be used by the model

References NS_LOG_FUNCTION_NOARGS.

void ns3::RateErrorModel::SetUnit ( enum ErrorUnit  error_unit)
Parameters:
error_unitthe ErrorUnit to be used by the underlying model

References NS_LOG_FUNCTION_NOARGS.


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