5G-LENA nr-v4.0
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
ns3::NrRrComponentCarrierManager Class Reference

Component carrier manager implementation that splits traffic equally among carriers. More...

#include "nr-no-op-component-carrier-manager.h"

+ Inheritance diagram for ns3::NrRrComponentCarrierManager:
+ Collaboration diagram for ns3::NrRrComponentCarrierManager:

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::NrNoOpComponentCarrierManager
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::NrGnbComponentCarrierManager
static TypeId GetTypeId ()
 Get the type ID.
 

Protected Member Functions

void DoTransmitBufferStatusReport (NrMacSapProvider::BufferStatusReportParameters params) override
 Buffer status report.
 
void DoUlReceiveMacCe (nr::MacCeListElement_s bsr, uint8_t componentCarrierId) override
 Forwards uplink BSR to CCM, called by MAC through CCM SAP interface.
 
void DoUlReceiveSr (uint16_t rnti, uint8_t componentCarrierId) override
 Forward uplink SR to CCM, called by MAC through CCM SAP interface.
 
- Protected Member Functions inherited from ns3::NrNoOpComponentCarrierManager
virtual void DoAddLc (NrGnbCmacSapProvider::LcInfo lcInfo, NrMacSapUser *msu)
 Add LC.
 
virtual void DoAddUe (uint16_t rnti, uint8_t state)
 Add UE.
 
virtual NrMacSapUserDoConfigureSignalBearer (NrGnbCmacSapProvider::LcInfo lcinfo, NrMacSapUser *msu)
 Configure the signal bearer.
 
void DoDispose () override
 
void DoInitialize () override
 
virtual void DoNotifyHarqDeliveryFailure ()
 Notify HARQ delivery failure.
 
virtual void DoNotifyPrbOccupancy (double prbOccupancy, uint8_t componentCarrierId)
 Function implements the function of the SAP interface of CCM instance which is used by MAC to notify the PRB occupancy reported by scheduler.
 
virtual void DoNotifyTxOpportunity (NrMacSapUser::TxOpportunityParameters txOpParams)
 Notify transmit opportunity.
 
virtual void DoReceivePdu (NrMacSapUser::ReceivePduParameters rxPduParams)
 Receive PDU.
 
virtual std::vector< uint8_t > DoReleaseDataRadioBearer (uint16_t rnti, uint8_t lcid)
 Release data radio bearer.
 
virtual void DoRemoveUe (uint16_t rnti)
 Remove UE.
 
void DoReportUeMeas (uint16_t rnti, NrRrcSap::MeasResults measResults) override
 Implementation of ReportUeMeas.
 
virtual std::vector< NrCcmRrcSapProvider::LcsConfigDoSetupDataRadioBearer (NrEpsBearer bearer, uint8_t bearerId, uint16_t rnti, uint8_t lcid, uint8_t lcGroup, NrMacSapUser *msu)
 Setup data radio bearer.
 
virtual void DoTransmitPdu (NrMacSapProvider::TransmitPduParameters params)
 Transmit PDU.
 
- Protected Member Functions inherited from ns3::NrGnbComponentCarrierManager
void DoDispose () override
 

Additional Inherited Members

- Public Member Functions inherited from ns3::NrGnbComponentCarrierManager
virtual NrCcmMacSapUserGetNrCcmMacSapUser ()
 This function returns a pointer to the NrCcmMacSapUser interface, which is used by MAC to communicate to CCM when e.g. UL buffer status report is received, or to notify CCM about PRB occupancy, and similar. Functions that are specific for the communication between MAC and CCM.
 
virtual NrCcmRrcSapProviderGetNrCcmRrcSapProvider ()
 Export the "provider" part of the NrComponentCarrier Management SAP interface.
 
virtual NrMacSapProviderGetNrMacSapProvider ()
 Returns the pointer to the NrMacSapProvider interface, the provider of MAC, which is this new architecture served by NrGnbComponentCarrierManager object which will behave as a proxy, and will forward calls between to MAC objects of component carriers based on the logic implemented in the specific component carrier manager.
 
virtual bool SetCcmMacSapProviders (uint8_t componentCarrierId, NrCcmMacSapProvider *sap)
 Set NrCcmMacSapProvider interface for the MAC object of the specified component carrier. Through this interface CCM communicates with MAC, e.g. it notifies MAC of the specific carrier when to scheduler UL BSR.
 
virtual bool SetMacSapProvider (uint8_t componentCarrierId, NrMacSapProvider *sap)
 Set NrMacSapProvider interface for the MAC object of the specified component carrier.
 
virtual void SetNrCcmRrcSapUser (NrCcmRrcSapUser *s)
 Set the "user" part of the NrComponentCarrier Management SAP interface that this NrComponentCarrier algorithm instance will interact with.
 
virtual void SetNumberOfComponentCarriers (uint16_t noOfComponentCarriers)
 Sets the total number of component carriers.
 
- Protected Attributes inherited from ns3::NrNoOpComponentCarrierManager
std::map< uint8_t, double > m_ccPrbOccupancy
 The physical resource block occupancy per carrier.
 
- Protected Attributes inherited from ns3::NrGnbComponentCarrierManager
std::map< uint8_t, NrCcmMacSapProvider * > m_ccmMacSapProviderMap
 
NrCcmMacSapUserm_ccmMacSapUser
 
NrCcmRrcSapProviderm_ccmRrcSapProvider
 
NrCcmRrcSapUserm_ccmRrcSapUser
 
NrMacSapProviderm_macSapProvider
 
std::map< uint8_t, NrMacSapProvider * > m_macSapProvidersMap
 A map of pointers to real SAP interfaces of MAC instances.
 
uint16_t m_noOfComponentCarriers
 
Ptr< NrGnbRrcm_rrc
 A pointer to the RRC instance of this eNb.
 
std::map< uint16_t, NrUeInfom_ueInfo
 The map from RNTI to UE information.
 

Detailed Description

Component carrier manager implementation that splits traffic equally among carriers.

Config Paths

ns3::NrRrComponentCarrierManager is accessible through the following paths with Config::Set and Config::Connect:

No Attributes are defined for this type.
No TraceSources are defined for this type.
Size of this type is 304 bytes (on a 64-bit architecture).

Definition at line 159 of file nr-no-op-component-carrier-manager.h.

Constructor & Destructor Documentation

◆ NrRrComponentCarrierManager()

ns3::NrRrComponentCarrierManager::NrRrComponentCarrierManager ( )

Definition at line 366 of file nr-no-op-component-carrier-manager.cc.

◆ ~NrRrComponentCarrierManager()

ns3::NrRrComponentCarrierManager::~NrRrComponentCarrierManager ( )
override

Definition at line 371 of file nr-no-op-component-carrier-manager.cc.

Member Function Documentation

◆ DoTransmitBufferStatusReport()

◆ DoUlReceiveMacCe()

void ns3::NrRrComponentCarrierManager::DoUlReceiveMacCe ( nr::MacCeListElement_s  bsr,
uint8_t  componentCarrierId 
)
overrideprotectedvirtual

◆ DoUlReceiveSr()

void ns3::NrRrComponentCarrierManager::DoUlReceiveSr ( uint16_t  rnti,
uint8_t  componentCarrierId 
)
overrideprotectedvirtual

Forward uplink SR to CCM, called by MAC through CCM SAP interface.

Parameters
rntiRNTI of the UE that requested SR
componentCarrierIdthe component carrier ID that forwarded the SR

Reimplemented from ns3::NrNoOpComponentCarrierManager.

Definition at line 468 of file nr-no-op-component-carrier-manager.cc.

References ns3::NrGnbComponentCarrierManager::m_ccmMacSapProviderMap, and ns3::NrGnbComponentCarrierManager::m_ueInfo.

◆ GetTypeId()

TypeId ns3::NrRrComponentCarrierManager::GetTypeId ( )
static

Get the type ID.

Returns
the object TypeId

Definition at line 377 of file nr-no-op-component-carrier-manager.cc.


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