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

This class implements service flows as described by the IEEE-802.16 standard. More...

#include "service-flow.h"

+ Collaboration diagram for ns3::ServiceFlow:

Public Types

enum  CsSpecification {
  ATM = 99 , IPV4 = 100 , IPV6 = 101 , ETHERNET = 102 ,
  VLAN = 103 , IPV4_OVER_ETHERNET = 104 , IPV6_OVER_ETHERNET = 105 , IPV4_OVER_VLAN = 106 ,
  IPV6_OVER_VLAN = 107
}
 section 11.13.19.2 CS parameter encoding rules, page 707 More...
 
enum  Direction { SF_DIRECTION_DOWN , SF_DIRECTION_UP }
 Direction enumeration. More...
 
enum  ModulationType {
  MODULATION_TYPE_BPSK_12 , MODULATION_TYPE_QPSK_12 , MODULATION_TYPE_QPSK_34 , MODULATION_TYPE_QAM16_12 ,
  MODULATION_TYPE_QAM16_34 , MODULATION_TYPE_QAM64_23 , MODULATION_TYPE_QAM64_34
}
 Modulation type enumeration, Table 356 and 362. More...
 
enum  SchedulingType {
  SF_TYPE_NONE = 0 , SF_TYPE_UNDEF = 1 , SF_TYPE_BE = 2 , SF_TYPE_NRTPS = 3 ,
  SF_TYPE_RTPS = 4 , SF_TYPE_UGS = 6 , SF_TYPE_ALL = 255
}
 section 11.13.11 Service flow scheduling type, page 701 More...
 
enum  Type { SF_TYPE_PROVISIONED , SF_TYPE_ADMITTED , SF_TYPE_ACTIVE }
 Type enumeration. More...
 

Public Member Functions

 ServiceFlow ()
 Default constructor.
 
 ServiceFlow (const ServiceFlow &sf)
 Constructor.
 
 ServiceFlow (Direction direction)
 Constructor.
 
 ServiceFlow (Tlv tlv)
 creates a service flow from a TLV
 
 ServiceFlow (uint32_t sfid, Direction direction, Ptr< WimaxConnection > connection)
 Constructor.
 
 ~ServiceFlow ()
 Destructor.
 
bool CheckClassifierMatch (Ipv4Address srcAddress, Ipv4Address dstAddress, uint16_t srcPort, uint16_t dstPort, uint8_t proto) const
 check classifier match.
 
void CleanUpQueue ()
 Shall be called only by BS.
 
void CopyParametersFrom (ServiceFlow sf)
 Copy parameters from another service flow.
 
uint16_t GetArqBlockLifeTime () const
 Get ARQ block lifetime.
 
uint16_t GetArqBlockSize () const
 Get ARQ block size.
 
uint8_t GetArqDeliverInOrder () const
 Get ARQ deliver in order.
 
uint8_t GetArqEnable () const
 Get ARQ enable.
 
uint16_t GetArqPurgeTimeout () const
 Get ARQ purge timeout.
 
uint16_t GetArqRetryTimeoutRx () const
 Get ARQ retry timeout receive.
 
uint16_t GetArqRetryTimeoutTx () const
 Get ARQ retry timeout transmit.
 
uint16_t GetArqSyncLoss () const
 Get ARQ sync loss.
 
uint16_t GetArqWindowSize () const
 Get ARQ retry timeout transmit.
 
uint16_t GetCid () const
 Get CID.
 
Ptr< WimaxConnectionGetConnection () const
 Can return a null connection is this service flow has not been associated yet to a connection.
 
CsParameters GetConvergenceSublayerParam () const
 Get convergence sublayer.
 
CsSpecification GetCsSpecification () const
 Get CS specification.
 
Direction GetDirection () const
 Get direction.
 
uint8_t GetFixedversusVariableSduIndicator () const
 Get fixed versus variable SDU indicator.
 
bool GetIsEnabled () const
 Get is enabled flag.
 
bool GetIsMulticast () const
 Get is multicast.
 
uint32_t GetMaximumLatency () const
 Get maximum latency.
 
uint32_t GetMaxSustainedTrafficRate () const
 Get max sustained traffic rate.
 
uint32_t GetMaxTrafficBurst () const
 Get max traffic burst.
 
uint32_t GetMinReservedTrafficRate () const
 Get minimum reserved traffic rate.
 
uint32_t GetMinTolerableTrafficRate () const
 Get minimum tolerable traffic rate.
 
WimaxPhy::ModulationType GetModulation () const
 Get modulation.
 
uint8_t GetQosParamSetType () const
 Get QOS parameter set type.
 
Ptr< WimaxMacQueueGetQueue () const
 Get pointer to queue.
 
ServiceFlowRecordGetRecord () const
 Get service flow record.
 
uint32_t GetRequestTransmissionPolicy () const
 Get request transmission policy.
 
ServiceFlow::SchedulingType GetSchedulingType () const
 Get scheduling type.
 
char * GetSchedulingTypeStr () const
 Get scheduling type string.
 
uint8_t GetSduSize () const
 Get SDU size.
 
std::string GetServiceClassName () const
 Get service class name.
 
ServiceFlow::SchedulingType GetServiceSchedulingType () const
 Get service scheduling type.
 
uint32_t GetSfid () const
 Get SFID.
 
uint16_t GetTargetSAID () const
 Get target SAID.
 
uint32_t GetToleratedJitter () const
 Get tolerated jitter.
 
uint8_t GetTrafficPriority () const
 Get traffic priority.
 
Type GetType () const
 Get type of service flow.
 
uint16_t GetUnsolicitedGrantInterval () const
 Get unsolicited grant interval.
 
uint16_t GetUnsolicitedPollingInterval () const
 Get unsolicited polling interval.
 
bool HasPackets () const
 Check if packets are present.
 
bool HasPackets (MacHeaderType::HeaderType packetType) const
 Check if packets of particular type are present.
 
void InitValues ()
 Initialize values.
 
ServiceFlowoperator= (const ServiceFlow &o)
 assignment operator
 
void PrintQoSParameters () const
 Print QoS parameters.
 
void SetArqBlockLifeTime (uint16_t lifeTime)
 Set ARQ block lifetime.
 
void SetArqBlockSize (uint16_t size)
 Set ARQ block size.
 
void SetArqDeliverInOrder (uint8_t inOrder)
 Set ARQ deliver in order.
 
void SetArqEnable (uint8_t arqEnable)
 Set ARQ enable.
 
void SetArqPurgeTimeout (uint16_t timeout)
 Set ARQ purge timeout.
 
void SetArqRetryTimeoutRx (uint16_t timeout)
 Set ARQ retry timeout receive.
 
void SetArqRetryTimeoutTx (uint16_t timeout)
 Set ARQ retry timeout transmit.
 
void SetArqSyncLoss (uint16_t syncLoss)
 Set ARQ sync loss.
 
void SetArqWindowSize (uint16_t arqWindowSize)
 Set ARQ retry timeout transmit.
 
void SetConnection (Ptr< WimaxConnection > connection)
 Set connection.
 
void SetConvergenceSublayerParam (CsParameters csparam)
 Set convergence sublayer parameters.
 
void SetCsSpecification (CsSpecification spec)
 Set CS specification.
 
void SetDirection (Direction direction)
 Set direction.
 
void SetFixedversusVariableSduIndicator (uint8_t sduIndicator)
 Set fixed versus variable SDU indicator.
 
void SetIsEnabled (bool isEnabled)
 Set is enabled flag.
 
void SetIsMulticast (bool isMulticast)
 Set is multicast.
 
void SetMaximumLatency (uint32_t MaximumLatency)
 Set maximum latency.
 
void SetMaxSustainedTrafficRate (uint32_t maxSustainedRate)
 Set max sustained traffic rate.
 
void SetMaxTrafficBurst (uint32_t maxTrafficBurst)
 Set maximum traffic burst.
 
void SetMinReservedTrafficRate (uint32_t minResvRate)
 Set minimum reserved traffic rate.
 
void SetMinTolerableTrafficRate (uint32_t minJitter)
 Set minimum tolerable traffic rate.
 
void SetModulation (WimaxPhy::ModulationType modulationType)
 Set modulation.
 
void SetQosParamSetType (uint8_t type)
 Set QOS parameter set type.
 
void SetRecord (ServiceFlowRecord *record)
 Set service flow record.
 
void SetRequestTransmissionPolicy (uint32_t policy)
 Set request transmission policy.
 
void SetSduSize (uint8_t sduSize)
 Set SDU size.
 
void SetServiceClassName (std::string name)
 Set service class name.
 
void SetServiceSchedulingType (ServiceFlow::SchedulingType schedType)
 Set service scheduling type.
 
void SetSfid (uint32_t sfid)
 Set SFID.
 
void SetTargetSAID (uint16_t targetSaid)
 Set target SAID.
 
void SetToleratedJitter (uint32_t jitter)
 Set tolerated jitter.
 
void SetTrafficPriority (uint8_t priority)
 Set traffic priority.
 
void SetType (Type type)
 Set type of service flow.
 
void SetUnsolicitedGrantInterval (uint16_t unsolicitedGrantInterval)
 Set unsolicited grant interval.
 
void SetUnsolicitedPollingInterval (uint16_t unsolicitedPollingInterval)
 Set unsolicited polling interval.
 
Tlv ToTlv () const
 creates a TLV from this service flow
 

Private Attributes

uint16_t m_arqBlockLifeTime
 ARQ block life time.
 
uint16_t m_arqBlockSize
 ARQ block size.
 
uint8_t m_arqDeliverInOrder
 ARQ deliver in order.
 
uint8_t m_arqEnable
 ARQ enable.
 
uint16_t m_arqPurgeTimeout
 ARQ purge timeout.
 
uint16_t m_arqRetryTimeoutRx
 ARQ retry timeout receive.
 
uint16_t m_arqRetryTimeoutTx
 ARQ retry timeout transmit.
 
uint16_t m_arqSyncLoss
 ARQ sync loss.
 
uint16_t m_arqWindowSize
 ARQ window size.
 
Ptr< WimaxConnectionm_connection
 connection
 
CsParameters m_convergenceSublayerParam
 convergence sublayer parameters
 
CsSpecification m_csSpecification
 CS specification.
 
Direction m_direction
 direction
 
uint8_t m_fixedversusVariableSduIndicator
 fixed versus variable SDI indicator
 
bool m_isEnabled
 is enabled?
 
bool m_isMulticast
 is multicast?
 
uint32_t m_maximumLatency
 maximum latency
 
uint32_t m_maxSustainedTrafficRate
 maximum sustained traffic rate
 
uint32_t m_maxTrafficBurst
 maximum traffic burst
 
uint32_t m_minReservedTrafficRate
 minimum reserved traffic rate
 
uint32_t m_minTolerableTrafficRate
 minimum tolerable traffic rate
 
WimaxPhy::ModulationType m_modulationType
 modulation type
 
uint8_t m_qosParamSetType
 QOS parameter type.
 
ServiceFlowRecordm_record
 service flow record
 
uint32_t m_requestTransmissionPolicy
 request transmission policy
 
ServiceFlow::SchedulingType m_schedulingType
 scheduling type
 
uint8_t m_sduSize
 SDU size.
 
std::string m_serviceClassName
 service class name
 
uint32_t m_sfid
 SFID.
 
uint16_t m_targetSAID
 target SAID
 
uint32_t m_toleratedJitter
 tolerated jitter
 
uint8_t m_trafficPriority
 traffic priority
 
Type m_type
 type
 
uint16_t m_unsolicitedGrantInterval
 unsolicited grant interval
 
uint16_t m_unsolicitedPollingInterval
 unsolicited polling interval
 

Detailed Description

This class implements service flows as described by the IEEE-802.16 standard.

Definition at line 31 of file service-flow.h.

Member Enumeration Documentation

◆ CsSpecification

section 11.13.19.2 CS parameter encoding rules, page 707

Enumerator
ATM 
IPV4 
IPV6 
ETHERNET 
VLAN 
IPV4_OVER_ETHERNET 
IPV6_OVER_ETHERNET 
IPV4_OVER_VLAN 
IPV6_OVER_VLAN 

Definition at line 62 of file service-flow.h.

◆ Direction

Direction enumeration.

Enumerator
SF_DIRECTION_DOWN 
SF_DIRECTION_UP 

Definition at line 35 of file service-flow.h.

◆ ModulationType

Modulation type enumeration, Table 356 and 362.

Enumerator
MODULATION_TYPE_BPSK_12 
MODULATION_TYPE_QPSK_12 
MODULATION_TYPE_QPSK_34 
MODULATION_TYPE_QAM16_12 
MODULATION_TYPE_QAM16_34 
MODULATION_TYPE_QAM64_23 
MODULATION_TYPE_QAM64_34 

Definition at line 76 of file service-flow.h.

◆ SchedulingType

section 11.13.11 Service flow scheduling type, page 701

Enumerator
SF_TYPE_NONE 
SF_TYPE_UNDEF 
SF_TYPE_BE 
SF_TYPE_NRTPS 
SF_TYPE_RTPS 
SF_TYPE_UGS 
SF_TYPE_ALL 

Definition at line 50 of file service-flow.h.

◆ Type

Type enumeration.

Enumerator
SF_TYPE_PROVISIONED 
SF_TYPE_ADMITTED 
SF_TYPE_ACTIVE 

Definition at line 42 of file service-flow.h.

Constructor & Destructor Documentation

◆ ServiceFlow() [1/5]

ns3::ServiceFlow::ServiceFlow ( Tlv tlv)

creates a service flow from a TLV

Parameters
tlvthe tlv from which the service flow will be created

Definition at line 61 of file service-flow.cc.

References ns3::VectorTlvValue::Begin(), ns3::SfVectorTlvValue::CID, ns3::CreateObject(), ns3::SfVectorTlvValue::CS_Specification, ns3::Tlv::DOWNLINK_SERVICE_FLOW, ns3::VectorTlvValue::End(), ns3::SfVectorTlvValue::Fixed_length_versus_Variable_length_SDU_Indicator, ns3::Tlv::GetType(), InitValues(), ns3::SfVectorTlvValue::IPV4_CS_Parameters, m_connection, m_convergenceSublayerParam, m_csSpecification, m_direction, m_fixedversusVariableSduIndicator, m_isEnabled, m_isMulticast, m_maximumLatency, m_maxSustainedTrafficRate, m_maxTrafficBurst, m_minReservedTrafficRate, m_minTolerableTrafficRate, m_modulationType, m_qosParamSetType, m_record, m_requestTransmissionPolicy, m_schedulingType, m_sfid, m_toleratedJitter, m_trafficPriority, ns3::SfVectorTlvValue::Maximum_Latency, ns3::SfVectorTlvValue::Maximum_Sustained_Traffic_Rate, ns3::SfVectorTlvValue::Maximum_Traffic_Burst, ns3::SfVectorTlvValue::Minimum_Reserved_Traffic_Rate, ns3::SfVectorTlvValue::Minimum_Tolerable_Traffic_Rate, ns3::WimaxPhy::MODULATION_TYPE_QPSK_12, NS_ASSERT_MSG, ns3::Tlv::PeekValue(), ns3::SfVectorTlvValue::QoS_Parameter_Set_Type, ns3::SfVectorTlvValue::Request_Transmission_Policy, ns3::SfVectorTlvValue::Service_Flow_Scheduling_Type, SF_DIRECTION_DOWN, SF_DIRECTION_UP, ns3::SfVectorTlvValue::SFID, ns3::SfVectorTlvValue::Tolerated_Jitter, ns3::SfVectorTlvValue::Traffic_Priority, ns3::Cid::TRANSPORT, and ns3::Tlv::UPLINK_SERVICE_FLOW.

+ Here is the call graph for this function:

◆ ServiceFlow() [2/5]

ns3::ServiceFlow::ServiceFlow ( )

Default constructor.

Definition at line 34 of file service-flow.cc.

References InitValues(), m_isMulticast, m_modulationType, and ns3::WimaxPhy::MODULATION_TYPE_QPSK_12.

+ Here is the call graph for this function:

◆ ServiceFlow() [3/5]

ns3::ServiceFlow::ServiceFlow ( Direction direction)

Constructor.

Parameters
directionthe direction

Definition at line 21 of file service-flow.cc.

References InitValues(), m_connection, m_direction, m_isEnabled, m_isMulticast, m_modulationType, m_record, m_sfid, m_type, ns3::WimaxPhy::MODULATION_TYPE_QPSK_12, and SF_TYPE_PROVISIONED.

+ Here is the call graph for this function:

◆ ServiceFlow() [4/5]

ns3::ServiceFlow::ServiceFlow ( const ServiceFlow & sf)

◆ ServiceFlow() [5/5]

ns3::ServiceFlow::ServiceFlow ( uint32_t sfid,
Direction direction,
Ptr< WimaxConnection > connection )

Constructor.

Parameters
sfidthe SFID
directionthe direction
connectionthe connection object

Definition at line 47 of file service-flow.cc.

References InitValues(), m_connection, m_direction, m_isEnabled, m_isMulticast, m_modulationType, m_record, m_sfid, m_type, ns3::WimaxPhy::MODULATION_TYPE_QPSK_12, and SF_TYPE_PROVISIONED.

+ Here is the call graph for this function:

◆ ~ServiceFlow()

ns3::ServiceFlow::~ServiceFlow ( )

Destructor.

Definition at line 157 of file service-flow.cc.

References m_connection, and m_record.

Member Function Documentation

◆ CheckClassifierMatch()

bool ns3::ServiceFlow::CheckClassifierMatch ( Ipv4Address srcAddress,
Ipv4Address dstAddress,
uint16_t srcPort,
uint16_t dstPort,
uint8_t proto ) const

check classifier match.

Parameters
srcAddressthe source ip address
dstAddressthe destination ip address
srcPortthe source port
dstPortthe destination port
protothe layer 4 protocol
Returns
true if the passed parameters match the classifier of the service flow, false otherwise

Definition at line 876 of file service-flow.cc.

References ns3::IpcsClassifierRecord::CheckMatch(), ns3::CsParameters::GetPacketClassifierRule(), and m_convergenceSublayerParam.

+ Here is the call graph for this function:

◆ CleanUpQueue()

void ns3::ServiceFlow::CleanUpQueue ( )

Shall be called only by BS.

Definition at line 265 of file service-flow.cc.

References GetMaximumLatency(), m_connection, ns3::MilliSeconds(), and ns3::Simulator::Now().

+ Here is the call graph for this function:

◆ CopyParametersFrom()

void ns3::ServiceFlow::CopyParametersFrom ( ServiceFlow sf)

Copy parameters from another service flow.

Parameters
sfthe service flow

Definition at line 705 of file service-flow.cc.

References GetArqEnable(), GetArqRetryTimeoutRx(), GetArqRetryTimeoutTx(), GetArqWindowSize(), GetConvergenceSublayerParam(), GetCsSpecification(), GetDirection(), GetFixedversusVariableSduIndicator(), GetIsMulticast(), GetMaximumLatency(), GetMaxSustainedTrafficRate(), GetMaxTrafficBurst(), GetMinReservedTrafficRate(), GetMinTolerableTrafficRate(), GetModulation(), GetQosParamSetType(), GetRequestTransmissionPolicy(), GetSduSize(), GetServiceClassName(), GetServiceSchedulingType(), GetTargetSAID(), GetToleratedJitter(), GetTrafficPriority(), GetUnsolicitedGrantInterval(), GetUnsolicitedPollingInterval(), m_arqEnable, m_arqRetryTimeoutRx, m_arqRetryTimeoutTx, m_arqWindowSize, m_convergenceSublayerParam, m_csSpecification, m_direction, m_fixedversusVariableSduIndicator, m_isMulticast, m_maximumLatency, m_maxSustainedTrafficRate, m_maxTrafficBurst, m_minReservedTrafficRate, m_minTolerableTrafficRate, m_modulationType, m_qosParamSetType, m_requestTransmissionPolicy, m_schedulingType, m_sduSize, m_serviceClassName, m_targetSAID, m_toleratedJitter, m_trafficPriority, m_unsolicitedGrantInterval, and m_unsolicitedPollingInterval.

Referenced by ns3::BsServiceFlowManager::ProcessDsaReq().

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

◆ GetArqBlockLifeTime()

uint16_t ns3::ServiceFlow::GetArqBlockLifeTime ( ) const

Get ARQ block lifetime.

Returns
the ARQ block lifetime

Definition at line 421 of file service-flow.cc.

References m_arqBlockLifeTime.

◆ GetArqBlockSize()

uint16_t ns3::ServiceFlow::GetArqBlockSize ( ) const

Get ARQ block size.

Returns
the ARQ block size

Definition at line 445 of file service-flow.cc.

References m_arqBlockSize.

◆ GetArqDeliverInOrder()

uint8_t ns3::ServiceFlow::GetArqDeliverInOrder ( ) const

Get ARQ deliver in order.

Returns
the ARQ deliver in order

Definition at line 433 of file service-flow.cc.

References m_arqDeliverInOrder.

◆ GetArqEnable()

uint8_t ns3::ServiceFlow::GetArqEnable ( ) const

Get ARQ enable.

Returns
the ARQ enable

Definition at line 397 of file service-flow.cc.

References m_arqEnable.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetArqPurgeTimeout()

uint16_t ns3::ServiceFlow::GetArqPurgeTimeout ( ) const

Get ARQ purge timeout.

Returns
the ARQ purge timeout value

Definition at line 439 of file service-flow.cc.

References m_arqPurgeTimeout.

◆ GetArqRetryTimeoutRx()

uint16_t ns3::ServiceFlow::GetArqRetryTimeoutRx ( ) const

Get ARQ retry timeout receive.

Returns
the ARQ retry timeout receive

Definition at line 415 of file service-flow.cc.

References m_arqRetryTimeoutRx.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetArqRetryTimeoutTx()

uint16_t ns3::ServiceFlow::GetArqRetryTimeoutTx ( ) const

Get ARQ retry timeout transmit.

Returns
the ARQ retry timeout transmit

Definition at line 409 of file service-flow.cc.

References m_arqRetryTimeoutTx.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetArqSyncLoss()

uint16_t ns3::ServiceFlow::GetArqSyncLoss ( ) const

Get ARQ sync loss.

Returns
the ARQ sync loss value

Definition at line 427 of file service-flow.cc.

References m_arqSyncLoss.

◆ GetArqWindowSize()

uint16_t ns3::ServiceFlow::GetArqWindowSize ( ) const

Get ARQ retry timeout transmit.

Returns
the ARQ retry timeout

Definition at line 403 of file service-flow.cc.

References m_arqWindowSize.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetCid()

uint16_t ns3::ServiceFlow::GetCid ( ) const

Get CID.

Returns
the CID

Definition at line 303 of file service-flow.cc.

References m_connection.

Referenced by ns3::SubscriberStationNetDevice::DoSend(), ns3::BsServiceFlowManager::ProcessDsaReq(), ns3::SsServiceFlowManager::ProcessDsaRsp(), and ToTlv().

+ Here is the caller graph for this function:

◆ GetConnection()

◆ GetConvergenceSublayerParam()

CsParameters ns3::ServiceFlow::GetConvergenceSublayerParam ( ) const

Get convergence sublayer.

Returns
the convergence sublayer

Definition at line 457 of file service-flow.cc.

References m_convergenceSublayerParam.

Referenced by ServiceFlow(), CopyParametersFrom(), operator=(), and ns3::BsServiceFlowManager::ProcessDsaReq().

+ Here is the caller graph for this function:

◆ GetCsSpecification()

ServiceFlow::CsSpecification ns3::ServiceFlow::GetCsSpecification ( ) const

Get CS specification.

Returns
the CS specification

Definition at line 451 of file service-flow.cc.

References m_csSpecification.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetDirection()

ServiceFlow::Direction ns3::ServiceFlow::GetDirection ( ) const

Get direction.

Returns
the direction

Definition at line 174 of file service-flow.cc.

References m_direction.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), operator=(), and ns3::BsServiceFlowManager::ProcessDsaReq().

+ Here is the caller graph for this function:

◆ GetFixedversusVariableSduIndicator()

uint8_t ns3::ServiceFlow::GetFixedversusVariableSduIndicator ( ) const

Get fixed versus variable SDU indicator.

Returns
the fixed vs variable SDU indicator

Definition at line 379 of file service-flow.cc.

References m_fixedversusVariableSduIndicator.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetIsEnabled()

bool ns3::ServiceFlow::GetIsEnabled ( ) const

Get is enabled flag.

Returns
is enabled

Definition at line 211 of file service-flow.cc.

References m_isEnabled.

Referenced by ServiceFlow(), ns3::BaseStationNetDevice::DoSend(), ns3::SubscriberStationNetDevice::DoSend(), and operator=().

+ Here is the caller graph for this function:

◆ GetIsMulticast()

bool ns3::ServiceFlow::GetIsMulticast ( ) const

Get is multicast.

Returns
the is multicast flag

Definition at line 475 of file service-flow.cc.

References m_isMulticast.

Referenced by ServiceFlow(), CopyParametersFrom(), operator=(), ns3::UplinkSchedulerMBQoS::SetupServiceFlow(), ns3::UplinkSchedulerRtps::SetupServiceFlow(), and ns3::UplinkSchedulerSimple::SetupServiceFlow().

+ Here is the caller graph for this function:

◆ GetMaximumLatency()

uint32_t ns3::ServiceFlow::GetMaximumLatency ( ) const

Get maximum latency.

Returns
the maximum latency

Definition at line 373 of file service-flow.cc.

References m_maximumLatency.

Referenced by ServiceFlow(), CleanUpQueue(), CopyParametersFrom(), ns3::UplinkSchedulerMBQoS::DetermineDeadline(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetMaxSustainedTrafficRate()

uint32_t ns3::ServiceFlow::GetMaxSustainedTrafficRate ( ) const

Get max sustained traffic rate.

Returns
the maximum sustained traffic rate

Definition at line 331 of file service-flow.cc.

References m_maxSustainedTrafficRate.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetMaxTrafficBurst()

uint32_t ns3::ServiceFlow::GetMaxTrafficBurst ( ) const

Get max traffic burst.

Returns
the maximum traffic burst

Definition at line 337 of file service-flow.cc.

References m_maxTrafficBurst.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetMinReservedTrafficRate()

uint32_t ns3::ServiceFlow::GetMinReservedTrafficRate ( ) const

Get minimum reserved traffic rate.

Returns
the minimum reserved traffic rate

Definition at line 343 of file service-flow.cc.

References m_minReservedTrafficRate.

Referenced by ServiceFlow(), ns3::UplinkSchedulerMBQoS::CheckMinimumBandwidth(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), operator=(), ns3::UplinkSchedulerMBQoS::SetupServiceFlow(), ns3::UplinkSchedulerRtps::SetupServiceFlow(), ns3::UplinkSchedulerSimple::SetupServiceFlow(), and ns3::UplinkSchedulerMBQoS::UplinkSchedWindowTimer().

+ Here is the caller graph for this function:

◆ GetMinTolerableTrafficRate()

uint32_t ns3::ServiceFlow::GetMinTolerableTrafficRate ( ) const

Get minimum tolerable traffic rate.

Returns
the minimum tolerable traffic rate

Definition at line 349 of file service-flow.cc.

References m_minTolerableTrafficRate.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetModulation()

WimaxPhy::ModulationType ns3::ServiceFlow::GetModulation ( ) const

Get modulation.

Returns
the modulation

Definition at line 481 of file service-flow.cc.

References m_modulationType.

Referenced by ServiceFlow(), CopyParametersFrom(), operator=(), ns3::UplinkSchedulerMBQoS::SetupServiceFlow(), ns3::UplinkSchedulerRtps::SetupServiceFlow(), and ns3::UplinkSchedulerSimple::SetupServiceFlow().

+ Here is the caller graph for this function:

◆ GetQosParamSetType()

uint8_t ns3::ServiceFlow::GetQosParamSetType ( ) const

Get QOS parameter set type.

Returns
the QOS parameter set type

Definition at line 319 of file service-flow.cc.

References m_qosParamSetType.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetQueue()

Ptr< WimaxMacQueue > ns3::ServiceFlow::GetQueue ( ) const

Get pointer to queue.

Returns
pointer to the wimax mac queue

Definition at line 229 of file service-flow.cc.

References m_connection.

Referenced by ns3::BandwidthManager::SelectFlowForRequest().

+ Here is the caller graph for this function:

◆ GetRecord()

◆ GetRequestTransmissionPolicy()

uint32_t ns3::ServiceFlow::GetRequestTransmissionPolicy ( ) const

Get request transmission policy.

Returns
the request transmission policy

Definition at line 361 of file service-flow.cc.

References m_requestTransmissionPolicy.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetSchedulingType()

◆ GetSchedulingTypeStr()

char * ns3::ServiceFlow::GetSchedulingTypeStr ( ) const

Get scheduling type string.

Returns
the name of the scheduling type

Definition at line 813 of file service-flow.cc.

References m_schedulingType, NS_FATAL_ERROR, SF_TYPE_BE, SF_TYPE_NRTPS, SF_TYPE_RTPS, and SF_TYPE_UGS.

Referenced by ns3::UplinkSchedulerMBQoS::ServiceBandwidthRequests(), ns3::UplinkSchedulerRtps::ServiceBandwidthRequests(), ns3::UplinkSchedulerMBQoS::ServiceBandwidthRequestsBytes(), ns3::UplinkSchedulerMBQoS::ServiceUnsolicitedGrants(), and ns3::UplinkSchedulerRtps::ServiceUnsolicitedGrants().

+ Here is the caller graph for this function:

◆ GetSduSize()

uint8_t ns3::ServiceFlow::GetSduSize ( ) const

◆ GetServiceClassName()

std::string ns3::ServiceFlow::GetServiceClassName ( ) const

Get service class name.

Returns
the service class name

Definition at line 313 of file service-flow.cc.

References m_serviceClassName.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetServiceSchedulingType()

ServiceFlow::SchedulingType ns3::ServiceFlow::GetServiceSchedulingType ( ) const

Get service scheduling type.

Returns
the scheduling type

Definition at line 355 of file service-flow.cc.

References m_schedulingType.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetSfid()

◆ GetTargetSAID()

uint16_t ns3::ServiceFlow::GetTargetSAID ( ) const

Get target SAID.

Returns
the target SAID

Definition at line 391 of file service-flow.cc.

References m_targetSAID.

Referenced by ServiceFlow(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetToleratedJitter()

uint32_t ns3::ServiceFlow::GetToleratedJitter ( ) const

Get tolerated jitter.

Returns
the tolerated jitter

Definition at line 367 of file service-flow.cc.

References m_toleratedJitter.

Referenced by ServiceFlow(), CopyParametersFrom(), operator=(), ns3::UplinkSchedulerMBQoS::SetupServiceFlow(), ns3::UplinkSchedulerRtps::SetupServiceFlow(), and ns3::UplinkSchedulerSimple::SetupServiceFlow().

+ Here is the caller graph for this function:

◆ GetTrafficPriority()

uint8_t ns3::ServiceFlow::GetTrafficPriority ( ) const

Get traffic priority.

Returns
the traffic priority

Definition at line 325 of file service-flow.cc.

References m_trafficPriority.

Referenced by ServiceFlow(), CopyParametersFrom(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and operator=().

+ Here is the caller graph for this function:

◆ GetType()

ServiceFlow::Type ns3::ServiceFlow::GetType ( ) const

Get type of service flow.

Returns
the type

Definition at line 186 of file service-flow.cc.

References m_type.

Referenced by ServiceFlow(), and operator=().

+ Here is the caller graph for this function:

◆ GetUnsolicitedGrantInterval()

uint16_t ns3::ServiceFlow::GetUnsolicitedGrantInterval ( ) const

Get unsolicited grant interval.

Returns
the unsolicited grant interval

Definition at line 463 of file service-flow.cc.

References m_unsolicitedGrantInterval.

Referenced by ServiceFlow(), ns3::BandwidthManager::CalculateAllocationSize(), CopyParametersFrom(), and operator=().

+ Here is the caller graph for this function:

◆ GetUnsolicitedPollingInterval()

uint16_t ns3::ServiceFlow::GetUnsolicitedPollingInterval ( ) const

Get unsolicited polling interval.

Returns
the unsolicited polling interval

Definition at line 469 of file service-flow.cc.

References m_unsolicitedPollingInterval.

Referenced by ServiceFlow(), ns3::BandwidthManager::CalculateAllocationSize(), CopyParametersFrom(), ns3::UplinkSchedulerMBQoS::CountSymbolsJobs(), and operator=().

+ Here is the caller graph for this function:

◆ HasPackets() [1/2]

bool ns3::ServiceFlow::HasPackets ( ) const

Check if packets are present.

Returns
true if there are packets

Definition at line 245 of file service-flow.cc.

References m_connection.

Referenced by ns3::BSSchedulerRtps::CreateUgsBurst(), ns3::BSSchedulerSimple::CreateUgsBurst(), and ns3::BandwidthManager::SelectFlowForRequest().

+ Here is the caller graph for this function:

◆ HasPackets() [2/2]

bool ns3::ServiceFlow::HasPackets ( MacHeaderType::HeaderType packetType) const

Check if packets of particular type are present.

Parameters
packetTypethe packet type to select
Returns
true if there are packets of the packet type

Definition at line 255 of file service-flow.cc.

References m_connection.

◆ InitValues()

◆ operator=()

ServiceFlow & ns3::ServiceFlow::operator= ( const ServiceFlow & o)

assignment operator

Parameters
othe service flow to assign
Returns
the service flow

Definition at line 770 of file service-flow.cc.

References GetArqEnable(), GetArqRetryTimeoutRx(), GetArqRetryTimeoutTx(), GetArqWindowSize(), GetConnection(), GetConvergenceSublayerParam(), GetCsSpecification(), GetDirection(), GetFixedversusVariableSduIndicator(), GetIsEnabled(), GetIsMulticast(), GetMaximumLatency(), GetMaxSustainedTrafficRate(), GetMaxTrafficBurst(), GetMinReservedTrafficRate(), GetMinTolerableTrafficRate(), GetModulation(), GetQosParamSetType(), GetRecord(), GetRequestTransmissionPolicy(), GetSduSize(), GetServiceClassName(), GetServiceSchedulingType(), GetSfid(), GetTargetSAID(), GetToleratedJitter(), GetTrafficPriority(), GetType(), GetUnsolicitedGrantInterval(), GetUnsolicitedPollingInterval(), m_arqEnable, m_arqRetryTimeoutRx, m_arqRetryTimeoutTx, m_arqWindowSize, m_connection, m_convergenceSublayerParam, m_csSpecification, m_direction, m_fixedversusVariableSduIndicator, m_isEnabled, m_isMulticast, m_maximumLatency, m_maxSustainedTrafficRate, m_maxTrafficBurst, m_minReservedTrafficRate, m_minTolerableTrafficRate, m_modulationType, m_qosParamSetType, m_record, m_requestTransmissionPolicy, m_schedulingType, m_sduSize, m_serviceClassName, m_sfid, m_targetSAID, m_toleratedJitter, m_trafficPriority, m_type, m_unsolicitedGrantInterval, and m_unsolicitedPollingInterval.

+ Here is the call graph for this function:

◆ PrintQoSParameters()

void ns3::ServiceFlow::PrintQoSParameters ( ) const

Print QoS parameters.

Definition at line 290 of file service-flow.cc.

◆ SetArqBlockLifeTime()

void ns3::ServiceFlow::SetArqBlockLifeTime ( uint16_t lifeTime)

Set ARQ block lifetime.

Parameters
lifeTimethe ARQ block life time

Definition at line 603 of file service-flow.cc.

References m_arqBlockLifeTime.

◆ SetArqBlockSize()

void ns3::ServiceFlow::SetArqBlockSize ( uint16_t size)

Set ARQ block size.

Parameters
sizethe size

Definition at line 627 of file service-flow.cc.

References m_arqBlockSize.

◆ SetArqDeliverInOrder()

void ns3::ServiceFlow::SetArqDeliverInOrder ( uint8_t inOrder)

Set ARQ deliver in order.

Parameters
inOrderthe deliver in order setting

Definition at line 615 of file service-flow.cc.

References m_arqDeliverInOrder.

◆ SetArqEnable()

void ns3::ServiceFlow::SetArqEnable ( uint8_t arqEnable)

Set ARQ enable.

Parameters
arqEnablethe ARQ enable setting

Definition at line 579 of file service-flow.cc.

References m_arqEnable.

◆ SetArqPurgeTimeout()

void ns3::ServiceFlow::SetArqPurgeTimeout ( uint16_t timeout)

Set ARQ purge timeout.

Parameters
timeoutthe timeout value

Definition at line 621 of file service-flow.cc.

References m_arqPurgeTimeout, and timeout.

◆ SetArqRetryTimeoutRx()

void ns3::ServiceFlow::SetArqRetryTimeoutRx ( uint16_t timeout)

Set ARQ retry timeout receive.

Parameters
timeoutthe timeout

Definition at line 597 of file service-flow.cc.

References m_arqRetryTimeoutRx, and timeout.

◆ SetArqRetryTimeoutTx()

void ns3::ServiceFlow::SetArqRetryTimeoutTx ( uint16_t timeout)

Set ARQ retry timeout transmit.

Parameters
timeoutthe ARQ retry timeout transmit

Definition at line 591 of file service-flow.cc.

References m_arqRetryTimeoutTx, and timeout.

◆ SetArqSyncLoss()

void ns3::ServiceFlow::SetArqSyncLoss ( uint16_t syncLoss)

Set ARQ sync loss.

Parameters
syncLossthe ARQ sync loss

Definition at line 609 of file service-flow.cc.

References m_arqSyncLoss.

◆ SetArqWindowSize()

void ns3::ServiceFlow::SetArqWindowSize ( uint16_t arqWindowSize)

Set ARQ retry timeout transmit.

Parameters
arqWindowSizethe ARQ retry timeout transmit

Definition at line 585 of file service-flow.cc.

References m_arqWindowSize.

◆ SetConnection()

void ns3::ServiceFlow::SetConnection ( Ptr< WimaxConnection > connection)

Set connection.

Parameters
connectionthe connection

Definition at line 192 of file service-flow.cc.

References m_connection.

Referenced by ns3::SsServiceFlowManager::ProcessDsaRsp().

+ Here is the caller graph for this function:

◆ SetConvergenceSublayerParam()

void ns3::ServiceFlow::SetConvergenceSublayerParam ( CsParameters csparam)

Set convergence sublayer parameters.

Parameters
csparamthe convergence sublayer parameters

Definition at line 639 of file service-flow.cc.

References m_convergenceSublayerParam.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), Ns3WimaxSfTlvTestCase::DoRun(), and ns3::BsServiceFlowManager::ProcessDsaReq().

+ Here is the caller graph for this function:

◆ SetCsSpecification()

void ns3::ServiceFlow::SetCsSpecification ( ServiceFlow::CsSpecification spec)

Set CS specification.

Parameters
specthe CS specification

Definition at line 633 of file service-flow.cc.

References m_csSpecification.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetDirection()

void ns3::ServiceFlow::SetDirection ( Direction direction)

Set direction.

Parameters
directionthe direction value

Definition at line 168 of file service-flow.cc.

References m_direction.

◆ SetFixedversusVariableSduIndicator()

void ns3::ServiceFlow::SetFixedversusVariableSduIndicator ( uint8_t sduIndicator)

Set fixed versus variable SDU indicator.

Parameters
sduIndicatorfixed vs variable SDU indicator

Definition at line 561 of file service-flow.cc.

References m_fixedversusVariableSduIndicator.

◆ SetIsEnabled()

void ns3::ServiceFlow::SetIsEnabled ( bool isEnabled)

Set is enabled flag.

Parameters
isEnabledis enabled flag

Definition at line 205 of file service-flow.cc.

References m_isEnabled.

Referenced by ns3::SsServiceFlowManager::ProcessDsaRsp(), and ns3::BsServiceFlowManager::ScheduleDsaRsp().

+ Here is the caller graph for this function:

◆ SetIsMulticast()

void ns3::ServiceFlow::SetIsMulticast ( bool isMulticast)

Set is multicast.

Parameters
isMulticastthe is multicast flag

Definition at line 657 of file service-flow.cc.

References m_isMulticast.

◆ SetMaximumLatency()

void ns3::ServiceFlow::SetMaximumLatency ( uint32_t MaximumLatency)

Set maximum latency.

Parameters
MaximumLatencythe maximum latency

Definition at line 555 of file service-flow.cc.

References m_maximumLatency.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetMaxSustainedTrafficRate()

void ns3::ServiceFlow::SetMaxSustainedTrafficRate ( uint32_t maxSustainedRate)

Set max sustained traffic rate.

Parameters
maxSustainedRatethe maximum sustained traffic rate

Definition at line 513 of file service-flow.cc.

References m_maxSustainedTrafficRate.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetMaxTrafficBurst()

void ns3::ServiceFlow::SetMaxTrafficBurst ( uint32_t maxTrafficBurst)

Set maximum traffic burst.

Parameters
maxTrafficBurstthe maximum traffic burst

Definition at line 519 of file service-flow.cc.

References m_maxTrafficBurst.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetMinReservedTrafficRate()

void ns3::ServiceFlow::SetMinReservedTrafficRate ( uint32_t minResvRate)

Set minimum reserved traffic rate.

Parameters
minResvRatethe minimum reserved traffic rate

Definition at line 525 of file service-flow.cc.

References m_minReservedTrafficRate.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetMinTolerableTrafficRate()

void ns3::ServiceFlow::SetMinTolerableTrafficRate ( uint32_t minJitter)

Set minimum tolerable traffic rate.

Parameters
minJitterthe minimum tolerable traffic rate

Definition at line 531 of file service-flow.cc.

References m_minTolerableTrafficRate.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetModulation()

void ns3::ServiceFlow::SetModulation ( WimaxPhy::ModulationType modulationType)

Set modulation.

Parameters
modulationTypethe modulation type

Definition at line 663 of file service-flow.cc.

References m_modulationType.

◆ SetQosParamSetType()

void ns3::ServiceFlow::SetQosParamSetType ( uint8_t type)

Set QOS parameter set type.

Parameters
typethe QOS parameter set type

Definition at line 501 of file service-flow.cc.

References m_qosParamSetType.

◆ SetRecord()

void ns3::ServiceFlow::SetRecord ( ServiceFlowRecord * record)

Set service flow record.

Parameters
recordpointer to the service flow record

Definition at line 217 of file service-flow.cc.

References m_record.

◆ SetRequestTransmissionPolicy()

void ns3::ServiceFlow::SetRequestTransmissionPolicy ( uint32_t policy)

Set request transmission policy.

Parameters
policythe request transmission policy

Definition at line 543 of file service-flow.cc.

References m_requestTransmissionPolicy.

Referenced by ns3::WimaxHelper::CreateServiceFlow().

+ Here is the caller graph for this function:

◆ SetSduSize()

void ns3::ServiceFlow::SetSduSize ( uint8_t sduSize)

Set SDU size.

Parameters
sduSizethe SDU size

Definition at line 567 of file service-flow.cc.

References m_sduSize.

Referenced by ns3::WimaxHelper::CreateServiceFlow().

+ Here is the caller graph for this function:

◆ SetServiceClassName()

void ns3::ServiceFlow::SetServiceClassName ( std::string name)

Set service class name.

Parameters
namethe service class name

Definition at line 495 of file service-flow.cc.

References m_serviceClassName.

◆ SetServiceSchedulingType()

void ns3::ServiceFlow::SetServiceSchedulingType ( ServiceFlow::SchedulingType schedType)

Set service scheduling type.

Parameters
schedTypethe service scheduling type

Definition at line 537 of file service-flow.cc.

References m_schedulingType.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetSfid()

void ns3::ServiceFlow::SetSfid ( uint32_t sfid)

Set SFID.

Parameters
sfidthe SFID

Definition at line 489 of file service-flow.cc.

References m_sfid.

Referenced by DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetTargetSAID()

void ns3::ServiceFlow::SetTargetSAID ( uint16_t targetSaid)

Set target SAID.

Parameters
targetSaidthe target SAID value

Definition at line 573 of file service-flow.cc.

References m_targetSAID.

◆ SetToleratedJitter()

void ns3::ServiceFlow::SetToleratedJitter ( uint32_t jitter)

Set tolerated jitter.

Parameters
jitterthe tolerated jitter

Definition at line 549 of file service-flow.cc.

References m_toleratedJitter.

Referenced by ns3::WimaxHelper::CreateServiceFlow().

+ Here is the caller graph for this function:

◆ SetTrafficPriority()

void ns3::ServiceFlow::SetTrafficPriority ( uint8_t priority)

Set traffic priority.

Parameters
prioritythe traffic priority

Definition at line 507 of file service-flow.cc.

References m_trafficPriority.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), DsaRequestTestCase::DoRun(), and Ns3WimaxSfTlvTestCase::DoRun().

+ Here is the caller graph for this function:

◆ SetType()

void ns3::ServiceFlow::SetType ( Type type)

Set type of service flow.

Parameters
typethe type value

Definition at line 180 of file service-flow.cc.

References m_type.

Referenced by ns3::BsServiceFlowManager::ScheduleDsaRsp().

+ Here is the caller graph for this function:

◆ SetUnsolicitedGrantInterval()

void ns3::ServiceFlow::SetUnsolicitedGrantInterval ( uint16_t unsolicitedGrantInterval)

Set unsolicited grant interval.

Parameters
unsolicitedGrantIntervalthe unsolicited grant interval

Definition at line 645 of file service-flow.cc.

References m_unsolicitedGrantInterval.

Referenced by ns3::WimaxHelper::CreateServiceFlow(), ns3::BsServiceFlowManager::ProcessDsaReq(), ns3::SsServiceFlowManager::ProcessDsaRsp(), ns3::UplinkSchedulerMBQoS::SetupServiceFlow(), ns3::UplinkSchedulerRtps::SetupServiceFlow(), and ns3::UplinkSchedulerSimple::SetupServiceFlow().

+ Here is the caller graph for this function:

◆ SetUnsolicitedPollingInterval()

void ns3::ServiceFlow::SetUnsolicitedPollingInterval ( uint16_t unsolicitedPollingInterval)

Set unsolicited polling interval.

Parameters
unsolicitedPollingIntervalthe unsolicited polling interval

Definition at line 651 of file service-flow.cc.

References m_unsolicitedPollingInterval.

Referenced by ns3::BsServiceFlowManager::ProcessDsaReq(), ns3::SsServiceFlowManager::ProcessDsaRsp(), ns3::UplinkSchedulerMBQoS::SetupServiceFlow(), ns3::UplinkSchedulerRtps::SetupServiceFlow(), and ns3::UplinkSchedulerSimple::SetupServiceFlow().

+ Here is the caller graph for this function:

◆ ToTlv()

Tlv ns3::ServiceFlow::ToTlv ( ) const

creates a TLV from this service flow

Returns
the created tlv

Definition at line 832 of file service-flow.cc.

References ns3::VectorTlvValue::Add(), ns3::SfVectorTlvValue::CID, ns3::SfVectorTlvValue::CS_Specification, ns3::Tlv::DOWNLINK_SERVICE_FLOW, ns3::SfVectorTlvValue::Fixed_length_versus_Variable_length_SDU_Indicator, GetCid(), ns3::VectorTlvValue::GetSerializedSize(), m_convergenceSublayerParam, m_csSpecification, m_direction, m_fixedversusVariableSduIndicator, m_maximumLatency, m_maxSustainedTrafficRate, m_maxTrafficBurst, m_minReservedTrafficRate, m_minTolerableTrafficRate, m_qosParamSetType, m_requestTransmissionPolicy, m_schedulingType, m_sduSize, m_sfid, m_targetSAID, m_toleratedJitter, m_trafficPriority, ns3::SfVectorTlvValue::Maximum_Latency, ns3::SfVectorTlvValue::Maximum_Sustained_Traffic_Rate, ns3::SfVectorTlvValue::Maximum_Traffic_Burst, ns3::SfVectorTlvValue::Minimum_Reserved_Traffic_Rate, ns3::SfVectorTlvValue::Minimum_Tolerable_Traffic_Rate, ns3::SfVectorTlvValue::QoS_Parameter_Set_Type, ns3::SfVectorTlvValue::Request_Transmission_Policy, ns3::SfVectorTlvValue::SDU_Size, ns3::SfVectorTlvValue::Service_Flow_Scheduling_Type, SF_DIRECTION_UP, ns3::SfVectorTlvValue::SFID, ns3::SfVectorTlvValue::Target_SAID, ns3::SfVectorTlvValue::Tolerated_Jitter, ns3::CsParameters::ToTlv(), ns3::SfVectorTlvValue::Traffic_Priority, and ns3::Tlv::UPLINK_SERVICE_FLOW.

Referenced by Ns3WimaxSfTlvTestCase::DoRun(), ns3::DsaReq::GetSerializedSize(), ns3::DsaRsp::GetSerializedSize(), ns3::DsaReq::Serialize(), and ns3::DsaRsp::Serialize().

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

Member Data Documentation

◆ m_arqBlockLifeTime

uint16_t ns3::ServiceFlow::m_arqBlockLifeTime
private

ARQ block life time.

Definition at line 578 of file service-flow.h.

Referenced by GetArqBlockLifeTime(), InitValues(), and SetArqBlockLifeTime().

◆ m_arqBlockSize

uint16_t ns3::ServiceFlow::m_arqBlockSize
private

ARQ block size.

Definition at line 582 of file service-flow.h.

Referenced by GetArqBlockSize(), InitValues(), and SetArqBlockSize().

◆ m_arqDeliverInOrder

uint8_t ns3::ServiceFlow::m_arqDeliverInOrder
private

ARQ deliver in order.

Definition at line 580 of file service-flow.h.

Referenced by GetArqDeliverInOrder(), InitValues(), and SetArqDeliverInOrder().

◆ m_arqEnable

uint8_t ns3::ServiceFlow::m_arqEnable
private

ARQ enable.

Definition at line 574 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetArqEnable(), InitValues(), operator=(), and SetArqEnable().

◆ m_arqPurgeTimeout

uint16_t ns3::ServiceFlow::m_arqPurgeTimeout
private

ARQ purge timeout.

Definition at line 581 of file service-flow.h.

Referenced by GetArqPurgeTimeout(), InitValues(), and SetArqPurgeTimeout().

◆ m_arqRetryTimeoutRx

uint16_t ns3::ServiceFlow::m_arqRetryTimeoutRx
private

ARQ retry timeout receive.

Definition at line 577 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetArqRetryTimeoutRx(), InitValues(), operator=(), and SetArqRetryTimeoutRx().

◆ m_arqRetryTimeoutTx

uint16_t ns3::ServiceFlow::m_arqRetryTimeoutTx
private

ARQ retry timeout transmit.

Definition at line 576 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetArqRetryTimeoutTx(), InitValues(), operator=(), and SetArqRetryTimeoutTx().

◆ m_arqSyncLoss

uint16_t ns3::ServiceFlow::m_arqSyncLoss
private

ARQ sync loss.

Definition at line 579 of file service-flow.h.

Referenced by GetArqSyncLoss(), InitValues(), and SetArqSyncLoss().

◆ m_arqWindowSize

uint16_t ns3::ServiceFlow::m_arqWindowSize
private

ARQ window size.

Definition at line 575 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetArqWindowSize(), InitValues(), operator=(), and SetArqWindowSize().

◆ m_connection

◆ m_convergenceSublayerParam

CsParameters ns3::ServiceFlow::m_convergenceSublayerParam
private

◆ m_csSpecification

CsSpecification ns3::ServiceFlow::m_csSpecification
private

◆ m_direction

Direction ns3::ServiceFlow::m_direction
private

◆ m_fixedversusVariableSduIndicator

uint8_t ns3::ServiceFlow::m_fixedversusVariableSduIndicator
private

◆ m_isEnabled

bool ns3::ServiceFlow::m_isEnabled
private

is enabled?

Definition at line 590 of file service-flow.h.

Referenced by ServiceFlow(), ServiceFlow(), ServiceFlow(), ServiceFlow(), GetIsEnabled(), operator=(), and SetIsEnabled().

◆ m_isMulticast

bool ns3::ServiceFlow::m_isMulticast
private

◆ m_maximumLatency

uint32_t ns3::ServiceFlow::m_maximumLatency
private

◆ m_maxSustainedTrafficRate

uint32_t ns3::ServiceFlow::m_maxSustainedTrafficRate
private

◆ m_maxTrafficBurst

uint32_t ns3::ServiceFlow::m_maxTrafficBurst
private

◆ m_minReservedTrafficRate

uint32_t ns3::ServiceFlow::m_minReservedTrafficRate
private

◆ m_minTolerableTrafficRate

uint32_t ns3::ServiceFlow::m_minTolerableTrafficRate
private

◆ m_modulationType

WimaxPhy::ModulationType ns3::ServiceFlow::m_modulationType
private

◆ m_qosParamSetType

uint8_t ns3::ServiceFlow::m_qosParamSetType
private

◆ m_record

ServiceFlowRecord* ns3::ServiceFlow::m_record
private

service flow record

Definition at line 594 of file service-flow.h.

Referenced by ServiceFlow(), ServiceFlow(), ServiceFlow(), ServiceFlow(), ~ServiceFlow(), GetRecord(), operator=(), and SetRecord().

◆ m_requestTransmissionPolicy

uint32_t ns3::ServiceFlow::m_requestTransmissionPolicy
private

◆ m_schedulingType

◆ m_sduSize

uint8_t ns3::ServiceFlow::m_sduSize
private

SDU size.

Definition at line 572 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetSduSize(), InitValues(), operator=(), SetSduSize(), and ToTlv().

◆ m_serviceClassName

std::string ns3::ServiceFlow::m_serviceClassName
private

service class name

Definition at line 560 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetServiceClassName(), InitValues(), operator=(), and SetServiceClassName().

◆ m_sfid

uint32_t ns3::ServiceFlow::m_sfid
private

◆ m_targetSAID

uint16_t ns3::ServiceFlow::m_targetSAID
private

target SAID

Definition at line 573 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetTargetSAID(), InitValues(), operator=(), SetTargetSAID(), and ToTlv().

◆ m_toleratedJitter

uint32_t ns3::ServiceFlow::m_toleratedJitter
private

◆ m_trafficPriority

uint8_t ns3::ServiceFlow::m_trafficPriority
private

◆ m_type

Type ns3::ServiceFlow::m_type
private

type

Definition at line 588 of file service-flow.h.

Referenced by ServiceFlow(), ServiceFlow(), ServiceFlow(), GetType(), InitValues(), operator=(), and SetType().

◆ m_unsolicitedGrantInterval

uint16_t ns3::ServiceFlow::m_unsolicitedGrantInterval
private

unsolicited grant interval

Definition at line 585 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetUnsolicitedGrantInterval(), InitValues(), operator=(), and SetUnsolicitedGrantInterval().

◆ m_unsolicitedPollingInterval

uint16_t ns3::ServiceFlow::m_unsolicitedPollingInterval
private

unsolicited polling interval

Definition at line 586 of file service-flow.h.

Referenced by ServiceFlow(), CopyParametersFrom(), GetUnsolicitedPollingInterval(), InitValues(), operator=(), and SetUnsolicitedPollingInterval().


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