![]() |
5G-LENA nr-v3.3-81-g75c7590d
The 5G/NR module for the ns-3 simulator
|
#include "nr-gnb-rrc.h"
Public Types | |
enum | State { INITIAL_RANDOM_ACCESS = 0 , CONNECTION_SETUP , CONNECTION_REJECTED , ATTACH_REQUEST , CONNECTED_NORMALLY , CONNECTION_RECONFIGURATION , CONNECTION_REESTABLISHMENT , HANDOVER_PREPARATION , HANDOVER_JOINING , HANDOVER_PATH_SWITCH , HANDOVER_LEAVING , NUM_STATES } |
typedef void(* | StateTracedCallback) (const uint64_t imsi, const uint16_t cellId, const uint16_t rnti, const State oldState, const State newState) |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the type ID. | |
Protected Member Functions | |
void | DoDispose () override |
Friends | |
class | NrPdcpSpecificNrPdcpSapUser< NrUeManager > |
allow NrPdcpSpecificNrPdcpSapUser<NrUeManager> class friend access | |
Manages all the radio bearer information possessed by the gNB RRC for a single UE.
ns3::NrUeManager is accessible through the following paths with Config::Set and Config::Connect:
/NodeList/[i]/DeviceList/[i]/$ns3::NrGnbNetDevice/NrGnbRrc/UeMap/[i]
/NodeList/[i]/DeviceList/[i]/$ns3::NrNetDevice/$ns3::NrGnbNetDevice/NrGnbRrc/UeMap/[i]
Size of this type is 432 bytes (on a 64-bit architecture).
Definition at line 54 of file nr-gnb-rrc.h.
typedef void(* ns3::NrUeManager::StateTracedCallback) (const uint64_t imsi, const uint16_t cellId, const uint16_t rnti, const State oldState, const State newState) |
TracedCallback signature for state transition events.
[in] | imsi | |
[in] | cellId | |
[in] | rnti | |
[in] | oldState | |
[in] | newState |
Definition at line 437 of file nr-gnb-rrc.h.
The state of the NrUeManager at the gNB RRC
Definition at line 64 of file nr-gnb-rrc.h.
ns3::NrUeManager::NrUeManager | ( | ) |
Definition at line 131 of file nr-gnb-rrc.cc.
ns3::NrUeManager::NrUeManager | ( | Ptr< NrGnbRrc > | rrc, |
uint16_t | rnti, | ||
State | s, | ||
uint8_t | componentCarrierId | ||
) |
NrUeManager constructor
rrc | pointer to the NrGnbRrc holding this NrUeManager |
rnti | RNTI of the UE |
s | initial state of the NrUeManager |
componentCarrierId | primary component carrier ID |
Definition at line 136 of file nr-gnb-rrc.cc.
|
override |
Definition at line 329 of file nr-gnb-rrc.cc.
NrEpcX2Sap::HandoverCancelParams ns3::NrUeManager::BuildHoCancelMsg | ( | ) |
build handover cancel message
Definition at line 1528 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::HandoverCancelParams::cause, ns3::NrEpcX2Sap::HandoverCancelParams::newGnbUeX2apId, ns3::NrEpcX2Sap::HandoverCancelParams::oldGnbUeX2apId, ns3::NrEpcX2Sap::HandoverCancelParams::sourceCellId, and ns3::NrEpcX2Sap::HandoverCancelParams::targetCellId.
NrEpcX2Sap::HandoverPreparationFailureParams ns3::NrUeManager::BuildHoPrepFailMsg | ( | ) |
build handover preparation failure message
Definition at line 1514 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::HandoverPreparationFailureParams::cause, ns3::NrEpcX2Sap::HandoverPreparationFailureParams::criticalityDiagnostics, ns3::NrEpcX2Sap::HandoverPreparationFailureParams::oldGnbUeX2apId, ns3::NrEpcX2Sap::HandoverPreparationFailureParams::sourceCellId, and ns3::NrEpcX2Sap::HandoverPreparationFailureParams::targetCellId.
void ns3::NrUeManager::CancelPendingEvents | ( | ) |
Cancel all timers which are running for the UE
Definition at line 1503 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::CmacUeConfigUpdateInd | ( | NrGnbCmacSapUser::UeConfig | cmacParams | ) |
CMAC UE config update indication function
cmacParams | the UE config parameters |
Definition at line 1408 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::PhysicalConfigDedicated::antennaInfo, ns3::NrGnbCmacSapUser::UeConfig::m_transmissionMode, ScheduleRrcConnectionReconfiguration(), and ns3::NrRrcSap::AntennaInfoDedicated::transmissionMode.
void ns3::NrUeManager::CompleteSetupUe | ( | NrGnbRrcSapProvider::CompleteSetupUeParameters | params | ) |
Implement the NrGnbRrcSapProvider::CompleteSetupUe interface.
params | CompleteSetupUeParameters |
Definition at line 1138 of file nr-gnb-rrc.cc.
References ns3::NrGnbRrcSapProvider::CompleteSetupUeParameters::srb0SapUser, and ns3::NrGnbRrcSapProvider::CompleteSetupUeParameters::srb1SapUser.
void ns3::NrUeManager::Configure | ( | ) |
Perform post-creation configuration steps.
This method is called after the NrUeManager is created and added to the NrGnbRrc's UE map. This method configures the gNB side of the SRB0 and SRB1, the SAP objects, and propagates some information to the MAC and PHY layers.
Definition at line 155 of file nr-gnb-rrc.cc.
References ConfigureMacPhy(), ConfigureSap(), ConfigureSrb0(), and ConfigureSrb1().
void ns3::NrUeManager::ConfigureMacPhy | ( | ) |
Configure MAC and PHY aspects.
Generate UeUpdateConfigurationReq() towards the MAC, with RNTI and transmission mode. Generate SetSrsConfigurationIndex() towards the PHY. Schedule this NrUeManager instance to be deleted if the UE does not give any sign of life by the RRC connection request timeout duration.
Definition at line 284 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::PhysicalConfigDedicated::antennaInfo, ns3::NrGnbRrc::ConnectionRequestTimeout(), ns3::NrGnbRrc::HandoverJoiningTimeout(), ns3::NrGnbCmacSapProvider::UeConfig::m_rnti, ns3::NrGnbCmacSapProvider::UeConfig::m_transmissionMode, ns3::NrRrcSap::PhysicalConfigDedicated::soundingRsUlConfigDedicated, ns3::NrRrcSap::SoundingRsUlConfigDedicated::srsConfigIndex, and ns3::NrRrcSap::AntennaInfoDedicated::transmissionMode.
Referenced by Configure().
void ns3::NrUeManager::ConfigureSap | ( | ) |
Initialize the SAP objects.
Definition at line 165 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::PhysicalConfigDedicated::antennaInfo, ns3::NrRrcSap::PhysicalConfigDedicated::haveAntennaInfoDedicated, ns3::NrRrcSap::PhysicalConfigDedicated::havePdschConfigDedicated, ns3::NrRrcSap::PhysicalConfigDedicated::haveSoundingRsUlConfigDedicated, NrPdcpSpecificNrPdcpSapUser< NrUeManager >, ns3::NrRrcSap::PdschConfigDedicated::pa, ns3::NrRrcSap::PhysicalConfigDedicated::pdschConfigDedicated, ns3::NrRrcSap::PhysicalConfigDedicated::soundingRsUlConfigDedicated, ns3::NrRrcSap::SoundingRsUlConfigDedicated::srsBandwidth, ns3::NrRrcSap::SoundingRsUlConfigDedicated::srsConfigIndex, ns3::NrRrcSap::AntennaInfoDedicated::transmissionMode, and ns3::NrRrcSap::SoundingRsUlConfigDedicated::type.
Referenced by Configure().
void ns3::NrUeManager::ConfigureSrb0 | ( | ) |
Initialize the gNB side of SRB0.
Definition at line 189 of file nr-gnb-rrc.cc.
References ns3::NrGnbCmacSapProvider::LcInfo::gbrDl, ns3::NrGnbCmacSapProvider::LcInfo::gbrUl, ns3::NrGnbCmacSapProvider::LcInfo::lcGroup, ns3::NrGnbCmacSapProvider::LcInfo::lcId, ns3::NrGnbCmacSapProvider::LcInfo::mbrDl, ns3::NrGnbCmacSapProvider::LcInfo::mbrUl, ns3::NrGnbCmacSapProvider::LcInfo::qci, ns3::NrGnbCmacSapProvider::LcInfo::resourceType, ns3::NrGnbCmacSapProvider::LcInfo::rnti, and ns3::NrRlc::SetNrMacSapProvider().
Referenced by Configure().
void ns3::NrUeManager::ConfigureSrb1 | ( | ) |
Initialize the gNB side of SRB1.
Definition at line 230 of file nr-gnb-rrc.cc.
References ns3::NrEpsBearer::GBR_CONV_VOICE, ns3::NrGnbCmacSapProvider::LcInfo::gbrDl, ns3::NrGnbCmacSapProvider::LcInfo::gbrUl, ns3::NrGnbCmacSapProvider::LcInfo::lcGroup, ns3::NrGnbCmacSapProvider::LcInfo::lcId, ns3::NrGnbCmacSapProvider::LcInfo::mbrDl, ns3::NrGnbCmacSapProvider::LcInfo::mbrUl, ns3::NrGnbCmacSapProvider::LcInfo::qci, ns3::NrGnbCmacSapProvider::LcInfo::resourceType, ns3::NrGnbCmacSapProvider::LcInfo::rnti, ns3::NrRlc::SetNrMacSapProvider(), ns3::NrGnbRrcSapUser::SetupUeParameters::srb0SapProvider, and ns3::NrGnbRrcSapUser::SetupUeParameters::srb1SapProvider.
Referenced by Configure().
|
overrideprotected |
Definition at line 334 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::DoReceivePdcpSdu | ( | NrPdcpSapUser::ReceivePdcpSduParameters | params | ) |
Receive PDCP SDU function
params | the receive PDCP SDU parameters |
Definition at line 1424 of file nr-gnb-rrc.cc.
References ns3::NrPdcpSapUser::ReceivePdcpSduParameters::lcid, ns3::NrPdcpSapUser::ReceivePdcpSduParameters::pdcpSdu, ns3::NrPdcpSapUser::ReceivePdcpSduParameters::rnti, ns3::NrEpsBearerTag::SetBid(), and ns3::NrEpsBearerTag::SetRnti().
uint8_t ns3::NrUeManager::GetComponentCarrierId | ( | ) | const |
Definition at line 1451 of file nr-gnb-rrc.cc.
std::vector< NrEpcX2Sap::ErabToBeSetupItem > ns3::NrUeManager::GetErabList | ( | ) |
Definition at line 1008 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::ErabToBeSetupItem::dlForwarding, ns3::NrEpcX2Sap::ErabToBeSetupItem::erabId, ns3::NrEpcX2Sap::ErabToBeSetupItem::erabLevelQosParameters, ns3::NrEpcX2Sap::ErabToBeSetupItem::gtpTeid, and ns3::NrEpcX2Sap::ErabToBeSetupItem::transportLayerAddress.
Referenced by PrepareHandover().
uint64_t ns3::NrUeManager::GetImsi | ( | ) | const |
Definition at line 1445 of file nr-gnb-rrc.cc.
Referenced by ns3::NrStatsCalculator::FindImsiFromGnbRlcPath(), and RecvIdealUeContextRemoveRequest().
NrRrcSap::RadioResourceConfigDedicated ns3::NrUeManager::GetRadioResourceConfigForHandoverPreparationInfo | ( | ) |
Definition at line 884 of file nr-gnb-rrc.cc.
Referenced by PrepareHandover().
uint16_t ns3::NrUeManager::GetRnti | ( | ) | const |
Definition at line 1439 of file nr-gnb-rrc.cc.
NrRrcSap::RrcConnectionReconfiguration ns3::NrUeManager::GetRrcConnectionReconfigurationForHandover | ( | uint8_t | componentCarrierId | ) |
componentCarrierId | target component carrier ID |
Definition at line 891 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::MobilityControlInfo::carrierBandwidth, ns3::NrRrcSap::MobilityControlInfo::carrierFreq, ns3::NrRrcSap::CarrierBandwidthEutra::dlBandwidth, ns3::NrRrcSap::CarrierFreqEutra::dlCarrierFreq, ns3::NrRrcSap::MobilityControlInfo::haveCarrierBandwidth, ns3::NrRrcSap::MobilityControlInfo::haveCarrierFreq, ns3::NrRrcSap::RrcConnectionReconfiguration::haveMobilityControlInfo, ns3::NrRrcSap::RrcConnectionReconfiguration::haveNonCriticalExtension, ns3::NrRrcSap::RrcConnectionReconfiguration::mobilityControlInfo, ns3::NrRrcSap::RrcConnectionReconfiguration::nonCriticalExtension, ns3::NrRrcSap::NonCriticalExtensionConfiguration::sCellToReleaseList, ns3::NrRrcSap::MobilityControlInfo::targetPhysCellId, ns3::NrRrcSap::CarrierBandwidthEutra::ulBandwidth, and ns3::NrRrcSap::CarrierFreqEutra::ulCarrierFreq.
Referenced by PrepareHandover().
uint16_t ns3::NrUeManager::GetSrsConfigurationIndex | ( | ) | const |
Definition at line 1457 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::PhysicalConfigDedicated::soundingRsUlConfigDedicated, and ns3::NrRrcSap::SoundingRsUlConfigDedicated::srsConfigIndex.
NrUeManager::State ns3::NrUeManager::GetState | ( | ) | const |
Definition at line 1485 of file nr-gnb-rrc.cc.
|
static |
void ns3::NrUeManager::InitialContextSetupRequest | ( | ) |
Process Initial context setup request message from the MME. It triggers RRC connection reconfiguration.
Definition at line 398 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::PrepareHandover | ( | uint16_t | cellId | ) |
Start the handover preparation and send the handover request
cellId | id of the target cell |
Definition at line 674 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::HandoverPreparationInfo::asConfig, ns3::NrEpcX2Sap::HandoverRequestParams::bearers, ns3::NrEpcX2Sap::HandoverRequestParams::cause, ns3::NrRrcSap::SystemInformationBlockType1::cellAccessRelatedInfo, ns3::NrRrcSap::CellAccessRelatedInfo::cellIdentity, ns3::NrGnbCmacSapProvider::RachConfig::connEstFailCount, ns3::NrRrcSap::TxFailParam::connEstFailCount, ns3::NrRrcSap::CellAccessRelatedInfo::csgIdentity, ns3::NrRrcSap::CellAccessRelatedInfo::csgIndication, ns3::NrRrcSap::MasterInformationBlock::dlBandwidth, ns3::NrRrcSap::SystemInformationBlockType2::freqInfo, GetErabList(), GetRadioResourceConfigForHandoverPreparationInfo(), GetRrcConnectionReconfigurationForHandover(), ns3::NrGnbRrc::HandoverLeavingTimeout(), ns3::NrRrcSap::MobilityControlInfo::haveRachConfigDedicated, ns3::NrEpcX2Sap::HandoverRequestParams::mmeUeS1apId, ns3::NrRrcSap::RrcConnectionReconfiguration::mobilityControlInfo, ns3::NrRrcSap::MobilityControlInfo::newUeIdentity, ns3::NrGnbCmacSapProvider::RachConfig::numberOfRaPreambles, ns3::NrRrcSap::PreambleInfo::numberOfRaPreambles, ns3::NrEpcX2Sap::HandoverRequestParams::oldGnbUeX2apId, ns3::NrRrcSap::PlmnIdentityInfo::plmnIdentity, ns3::NrRrcSap::CellAccessRelatedInfo::plmnIdentityInfo, ns3::NrRrcSap::RachConfigCommon::preambleInfo, ns3::NrGnbCmacSapProvider::RachConfig::preambleTransMax, ns3::NrRrcSap::RaSupervisionInfo::preambleTransMax, ns3::NrRrcSap::RadioResourceConfigCommon::rachConfigCommon, ns3::NrRrcSap::RadioResourceConfigCommonSib::rachConfigCommon, ns3::NrRrcSap::MobilityControlInfo::rachConfigDedicated, ns3::NrRrcSap::MobilityControlInfo::radioResourceConfigCommon, ns3::NrRrcSap::SystemInformationBlockType2::radioResourceConfigCommon, ns3::NrGnbCmacSapProvider::AllocateNcRaPreambleReturnValue::raPrachMaskIndex, ns3::NrRrcSap::RachConfigDedicated::raPrachMaskIndex, ns3::NrGnbCmacSapProvider::AllocateNcRaPreambleReturnValue::raPreambleId, ns3::NrRrcSap::RachConfigDedicated::raPreambleIndex, ns3::NrGnbCmacSapProvider::RachConfig::raResponseWindowSize, ns3::NrRrcSap::RaSupervisionInfo::raResponseWindowSize, ns3::NrRrcSap::RachConfigCommon::raSupervisionInfo, ns3::NrEpcX2Sap::HandoverRequestParams::rrcContext, ns3::NrEpcX2Sap::HandoverRequestParams::sourceCellId, ns3::NrRrcSap::AsConfig::sourceDlCarrierFreq, ns3::NrRrcSap::AsConfig::sourceMasterInformationBlock, ns3::NrRrcSap::AsConfig::sourceMeasConfig, ns3::NrRrcSap::AsConfig::sourceRadioResourceConfig, ns3::NrRrcSap::AsConfig::sourceSystemInformationBlockType1, ns3::NrRrcSap::AsConfig::sourceSystemInformationBlockType2, ns3::NrRrcSap::AsConfig::sourceUeIdentity, ns3::NrRrcSap::MasterInformationBlock::systemFrameNumber, ns3::NrEpcX2Sap::HandoverRequestParams::targetCellId, ns3::NrRrcSap::MobilityControlInfo::targetPhysCellId, ns3::NrRrcSap::RachConfigCommon::txFailParam, ns3::NrEpcX2Sap::HandoverRequestParams::ueAggregateMaxBitRateDownlink, ns3::NrEpcX2Sap::HandoverRequestParams::ueAggregateMaxBitRateUplink, ns3::NrRrcSap::FreqInfo::ulBandwidth, ns3::NrRrcSap::FreqInfo::ulCarrierFreq, and ns3::NrGnbCmacSapProvider::AllocateNcRaPreambleReturnValue::valid.
void ns3::NrUeManager::RecordDataRadioBearersToBeStarted | ( | ) |
Start all configured data radio bearers. It is safe to call this method if any bearer had been already started previously.
Definition at line 541 of file nr-gnb-rrc.cc.
Referenced by RecvRrcConnectionRequest(), and ScheduleRrcConnectionReconfiguration().
void ns3::NrUeManager::RecvHandoverCancel | ( | NrEpcX2SapUser::HandoverCancelParams | params | ) |
Take the necessary actions in response to the reception of an X2 UE CONTEXT RELEASE message
params | the SN STATUS |
Definition at line 1110 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::RecvHandoverPreparationFailure | ( | uint16_t | cellId | ) |
Take the necessary actions in response to the reception of an X2 HO preparation failure message
cellId | id of the target cell |
Definition at line 1060 of file nr-gnb-rrc.cc.
References SendRrcConnectionRelease().
void ns3::NrUeManager::RecvHandoverRequestAck | ( | NrEpcX2SapUser::HandoverRequestAckParams | params | ) |
take the necessary actions in response to the reception of an X2 HANDOVER REQUEST ACK message
params |
Definition at line 814 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::HandoverRequestAckParams::admittedBearers, ns3::NrEpcX2Sap::ErabsSubjectToStatusTransferItem::dlPdcpSn, ns3::NrEpcX2Sap::SnStatusTransferParams::erabsSubjectToStatusTransferList, ns3::NrGnbRrc::HandoverLeavingTimeout(), ns3::NrRrcSap::RrcConnectionReconfiguration::haveMobilityControlInfo, ns3::NrRrcSap::RrcConnectionReconfiguration::haveNonCriticalExtension, ns3::NrRrcSap::RrcConnectionReconfiguration::mobilityControlInfo, ns3::NrEpcX2Sap::HandoverRequestAckParams::newGnbUeX2apId, ns3::NrEpcX2Sap::SnStatusTransferParams::newGnbUeX2apId, ns3::NrRrcSap::RrcConnectionReconfiguration::nonCriticalExtension, ns3::NrEpcX2Sap::HandoverRequestAckParams::notAdmittedBearers, ns3::NrEpcX2Sap::HandoverRequestAckParams::oldGnbUeX2apId, ns3::NrEpcX2Sap::SnStatusTransferParams::oldGnbUeX2apId, ns3::NrEpcX2Sap::HandoverRequestAckParams::rrcContext, ns3::NrPdcp::Status::rxSn, ns3::NrRrcSap::NonCriticalExtensionConfiguration::sCellToAddModList, ns3::NrEpcX2Sap::HandoverRequestAckParams::sourceCellId, ns3::NrEpcX2Sap::SnStatusTransferParams::sourceCellId, ns3::NrEpcX2Sap::HandoverRequestAckParams::targetCellId, ns3::NrEpcX2Sap::SnStatusTransferParams::targetCellId, ns3::NrRrcSap::MobilityControlInfo::targetPhysCellId, ns3::NrPdcp::Status::txSn, and ns3::NrEpcX2Sap::ErabsSubjectToStatusTransferItem::ulPdcpSn.
void ns3::NrUeManager::RecvIdealUeContextRemoveRequest | ( | uint16_t | rnti | ) |
Implement the NrGnbRrcSapProvider::RecvIdealUeContextRemoveRequest interface.
rnti | the C-RNTI identifying the user |
Definition at line 622 of file nr-gnb-rrc.cc.
References GetImsi().
void ns3::NrUeManager::RecvMeasurementReport | ( | NrRrcSap::MeasurementReport | msg | ) |
Implement the NrGnbRrcSapProvider::RecvMeasurementReport interface.
msg | the measrurement report |
Report any measurements to ComponentCarrierManager, so it can react to any change or activate the SCC
Definition at line 1348 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::MeasResults::haveMeasResultNeighCells, ns3::NrRrcSap::MeasResults::haveMeasResultServFreqList, ns3::NrRrcSap::MeasResults::measId, ns3::NrRrcSap::MeasResults::measResultListEutra, ns3::NrRrcSap::MeasResults::measResultPCell, ns3::NrRrcSap::MeasurementReport::measResults, ns3::NrRrcSap::MeasResults::measResultServFreqList, ns3::NrRrcSap::MeasResultPCell::rsrpResult, and ns3::NrRrcSap::MeasResultPCell::rsrqResult.
void ns3::NrUeManager::RecvRrcConnectionReconfigurationCompleted | ( | NrRrcSap::RrcConnectionReconfigurationCompleted | msg | ) |
Implement the NrGnbRrcSapProvider::RecvRrcConnectionReconfigurationCompleted interface.
msg | RRC connection reconfiguration completed message |
Definition at line 1231 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::PhysicalConfigDedicated::antennaInfo, ns3::NrEpcGnbS1SapProvider::PathSwitchRequestParameters::bearersToBeSwitched, ns3::NrEpcGnbS1SapProvider::PathSwitchRequestParameters::cellId, ns3::NrRrcSap::ConvertPdschConfigDedicated2Double(), ns3::NrEpcGnbS1SapProvider::BearerToBeSwitched::epsBearerId, ns3::NrGnbCmacSapProvider::UeConfig::m_rnti, ns3::NrGnbCmacSapProvider::UeConfig::m_transmissionMode, ns3::NrEpcGnbS1SapProvider::PathSwitchRequestParameters::mmeUeS1Id, ns3::NrRrcSap::PhysicalConfigDedicated::pdschConfigDedicated, ns3::NrEpcGnbS1SapProvider::PathSwitchRequestParameters::rnti, StartDataRadioBearers(), ns3::NrEpcGnbS1SapProvider::BearerToBeSwitched::teid, and ns3::NrRrcSap::AntennaInfoDedicated::transmissionMode.
void ns3::NrUeManager::RecvRrcConnectionReestablishmentComplete | ( | NrRrcSap::RrcConnectionReestablishmentComplete | msg | ) |
Implement the NrGnbRrcSapProvider::RecvRrcConnectionReestablishmentComplete interface.
msg | the RRC connection reestablsihment complete message |
Definition at line 1340 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::RecvRrcConnectionReestablishmentRequest | ( | NrRrcSap::RrcConnectionReestablishmentRequest | msg | ) |
Implement the NrGnbRrcSapProvider::RecvRrcConnectionReestablishmentRequest interface.
msg | the RRC connection reestablishment request message |
Definition at line 1314 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::RrcConnectionReestablishment::radioResourceConfigDedicated, and ns3::NrRrcSap::RrcConnectionReestablishment::rrcTransactionIdentifier.
void ns3::NrUeManager::RecvRrcConnectionRequest | ( | NrRrcSap::RrcConnectionRequest | msg | ) |
Implement the NrGnbRrcSapProvider::RecvRrcConnectionRequest interface.
msg | the RRC connection request message |
Definition at line 1146 of file nr-gnb-rrc.cc.
References ns3::NrGnbRrc::ConnectionRejectedTimeout(), ns3::NrGnbRrc::ConnectionSetupTimeout(), ns3::NrRrcSap::RrcConnectionSetup::radioResourceConfigDedicated, RecordDataRadioBearersToBeStarted(), ns3::NrRrcSap::RrcConnectionSetup::rrcTransactionIdentifier, ns3::NrRrcSap::RrcConnectionRequest::ueIdentity, and ns3::NrRrcSap::RrcConnectionReject::waitTime.
void ns3::NrUeManager::RecvRrcConnectionSetupCompleted | ( | NrRrcSap::RrcConnectionSetupCompleted | msg | ) |
Implement the NrGnbRrcSapProvider::RecvRrcConnectionSetupCompleted interface.
msg | RRC connection setup completed message |
Definition at line 1197 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::RecvSnStatusTransfer | ( | NrEpcX2SapUser::SnStatusTransferParams | params | ) |
Take the necessary actions in response to the reception of an X2 SN STATUS TRANSFER message
params | the SN STATUS |
Definition at line 1084 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::SnStatusTransferParams::erabsSubjectToStatusTransferList, ns3::NrPdcp::Status::rxSn, and ns3::NrPdcp::Status::txSn.
void ns3::NrUeManager::RecvUeContextRelease | ( | NrEpcX2SapUser::UeContextReleaseParams | params | ) |
Take the necessary actions in response to the reception of an X2 UE CONTEXT RELEASE message
params | the SN STATUS |
Definition at line 1102 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::ReleaseDataRadioBearer | ( | uint8_t | drbid | ) |
Release a given radio bearer
drbid | the data radio bearer id of the bearer to be released |
Definition at line 563 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::RadioResourceConfigDedicated::drbToReleaseList, ns3::NrRrcSap::RrcConnectionReconfiguration::haveMeasConfig, ns3::NrRrcSap::RadioResourceConfigDedicated::havePhysicalConfigDedicated, and ns3::NrRrcSap::RadioResourceConfigDedicated::physicalConfigDedicated.
void ns3::NrUeManager::ScheduleRrcConnectionReconfiguration | ( | ) |
schedule an RRC Connection Reconfiguration procedure with the UE
Definition at line 641 of file nr-gnb-rrc.cc.
References RecordDataRadioBearersToBeStarted().
Referenced by CmacUeConfigUpdateInd(), SetPdschConfigDedicated(), SetSrsConfigurationIndex(), and SetupDataRadioBearer().
void ns3::NrUeManager::SendData | ( | uint8_t | bid, |
Ptr< Packet > | p | ||
) |
Send a data packet over the appropriate Data Radio Bearer. If state is HANDOVER_JOINING (i.e. target gNB has received the Handover Request), the packet is buffered. If state is HANDOVER_LEAVING (i.e. source gNB has received the RRC Connection Reconfiguration, the packet is sent through the X2 interface.
bid | the corresponding EPS Bearer ID |
p | the packet |
Definition at line 962 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::UeDataParams::gtpTeid, ns3::NrEpcX2Sap::UeDataParams::sourceCellId, ns3::NrEpcX2Sap::UeDataParams::targetCellId, and ns3::NrEpcX2Sap::UeDataParams::ueData.
void ns3::NrUeManager::SendRrcConnectionRelease | ( | ) |
This function acts as an interface to trigger the connection release towards gNB, EPC and UE.
Bearer de-activation indication towards epc-gnb application and removal of UE context at the eNodeB
Definition at line 1118 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::RrcConnectionRelease::rrcTransactionIdentifier.
Referenced by RecvHandoverPreparationFailure().
void ns3::NrUeManager::SendUeContextRelease | ( | ) |
send the UE CONTEXT RELEASE X2 message to the source gNB, thus successfully terminating an X2 handover procedure
Definition at line 1026 of file nr-gnb-rrc.cc.
References ns3::NrEpcX2Sap::UeContextReleaseParams::newGnbUeX2apId, ns3::NrEpcX2Sap::UeContextReleaseParams::oldGnbUeX2apId, ns3::NrEpcX2Sap::UeContextReleaseParams::sourceCellId, and ns3::NrEpcX2Sap::UeContextReleaseParams::targetCellId.
void ns3::NrUeManager::SetImsi | ( | uint64_t | imsi | ) |
void ns3::NrUeManager::SetPdschConfigDedicated | ( | NrRrcSap::PdschConfigDedicated | pdschConfigDedicated | ) |
Configure PdschConfigDedicated (i.e. P_A value) for UE and start RrcConnectionReconfiguration to inform UE about new PdschConfigDedicated
pdschConfigDedicated | new pdschConfigDedicated (i.e. P_A value) to be set |
Definition at line 1491 of file nr-gnb-rrc.cc.
References ns3::NrRrcSap::PhysicalConfigDedicated::pdschConfigDedicated, and ScheduleRrcConnectionReconfiguration().
void ns3::NrUeManager::SetSource | ( | uint16_t | sourceCellId, |
uint16_t | sourceX2apId | ||
) |
Set the identifiers of the source gNB for the case where a UE joins the current gNB as part of a handover procedure
sourceCellId | |
sourceX2apId |
Definition at line 385 of file nr-gnb-rrc.cc.
void ns3::NrUeManager::SetSrsConfigurationIndex | ( | uint16_t | srsConfIndex | ) |
Set the SRS configuration index and do the necessary reconfiguration
srsConfIndex |
Definition at line 1463 of file nr-gnb-rrc.cc.
References ScheduleRrcConnectionReconfiguration(), ns3::NrRrcSap::PhysicalConfigDedicated::soundingRsUlConfigDedicated, and ns3::NrRrcSap::SoundingRsUlConfigDedicated::srsConfigIndex.
void ns3::NrUeManager::SetupDataRadioBearer | ( | NrEpsBearer | bearer, |
uint8_t | bearerId, | ||
uint32_t | gtpTeid, | ||
Ipv4Address | transportLayerAddress | ||
) |
Setup a new data radio bearer, including both the configuration within the gNB and the necessary RRC signaling with the UE
bearer | the QoS characteristics of the bearer |
bearerId | the EPS bearer identifier |
gtpTeid | S1-bearer GTP tunnel endpoint identifier, see 36.423 9.2.1 |
transportLayerAddress | IP Address of the SGW, see 36.423 9.2.1 |
Definition at line 413 of file nr-gnb-rrc.cc.
References ns3::NrEpsBearer::gbrQosInfo, ns3::NrGbrQosInformation::gbrUl, ns3::NrEpsBearer::GetPacketDelayBudgetMs(), ns3::NrEpsBearer::GetResourceType(), ns3::NrRlcAm::GetTypeId(), ns3::NrRlcSm::GetTypeId(), ScheduleRrcConnectionReconfiguration(), and ns3::NrRlc::SetNrMacSapProvider().
void ns3::NrUeManager::StartDataRadioBearers | ( | ) |
Start the data radio bearers that have been previously recorded to be started using RecordDataRadioBearersToBeStarted()
Definition at line 551 of file nr-gnb-rrc.cc.
Referenced by RecvRrcConnectionReconfigurationCompleted().
|
friend |
allow NrPdcpSpecificNrPdcpSapUser<NrUeManager> class friend access
Definition at line 1 of file nr-gnb-rrc.h.
Referenced by ConfigureSap().