32 : m_messageType(0xfa),
33 m_procedureCode(0xfa),
149 : m_numberOfIes(1 + 1 + 1 + 1),
150 m_headerLength(6 + 5 + 12 + (3 + 4 + 8 + 8 + 4)),
151 m_oldEnbUeX2apId(0xfffa),
153 m_targetCellId(0xfffa),
154 m_mmeUeS1apId(0xfffffffa)
173 static TypeId tid =
TypeId(
"ns3::EpcX2HandoverRequestHeader")
222 for (
int j = 0; j < (int)sz; j++)
278 for (
int j = 0; j < sz; j++)
320 for (
int j = 0; j < (int)sz; j++)
382 std::vector<EpcX2Sap::ErabToBeSetupItem>
436 : m_numberOfIes(1 + 1 + 1 + 1),
437 m_headerLength(2 + 2 + 4 + 4),
438 m_oldEnbUeX2apId(0xfffa),
439 m_newEnbUeX2apId(0xfffa)
456 static TypeId tid =
TypeId(
"ns3::EpcX2HandoverRequestAckHeader")
485 for (
int j = 0; j < (int)sz; j++)
494 for (
int j = 0; j < (int)sz2; j++)
518 for (
int j = 0; j < sz; j++)
534 for (
int j = 0; j < sz; j++)
560 for (
int j = 0; j < (int)sz; j++)
579 for (
int j = 0; j < (int)sz2; j++)
582 if (j < (
int)sz2 - 1)
617 std::vector<EpcX2Sap::ErabAdmittedItem>
630 std::vector<EpcX2Sap::ErabNotAdmittedItem>
638 std::vector<EpcX2Sap::ErabNotAdmittedItem> bearers)
661 : m_numberOfIes(1 + 1 + 1),
662 m_headerLength(2 + 2 + 2),
663 m_oldEnbUeX2apId(0xfffa),
665 m_criticalityDiagnostics(0xfffa)
681 static TypeId tid =
TypeId(
"ns3::EpcX2HandoverPreparationFailureHeader")
788 m_oldEnbUeX2apId(0xfffa),
789 m_newEnbUeX2apId(0xfffa)
806 static TypeId tid =
TypeId(
"ns3::EpcX2SnStatusTransferHeader")
833 std::vector<EpcX2Sap::ErabsSubjectToStatusTransferItem>::size_type sz =
837 for (
int j = 0; j < (int)sz; j++)
844 for (
int k = 0;
k < bitsetSize;
k++)
846 uint64_t statusValue = 0;
847 for (
int m = 0;
m < 64;
m++)
873 for (
int j = 0; j < sz; j++)
879 for (
int k = 0;
k < bitsetSize;
k++)
882 for (
int m = 0;
m < 64;
m++)
906 std::vector<EpcX2Sap::ErabsSubjectToStatusTransferItem>::size_type sz =
912 for (
int j = 0; j < (int)sz; j++)
950 std::vector<EpcX2Sap::ErabsSubjectToStatusTransferItem>
958 std::vector<EpcX2Sap::ErabsSubjectToStatusTransferItem> erabs)
981 : m_numberOfIes(1 + 1),
982 m_headerLength(2 + 2),
983 m_oldEnbUeX2apId(0xfffa),
984 m_newEnbUeX2apId(0xfffa)
999 static TypeId tid =
TypeId(
"ns3::EpcX2UeContextReleaseHeader")
1001 .SetGroupName(
"Lte")
1104 static TypeId tid =
TypeId(
"ns3::EpcX2LoadInformationHeader")
1106 .SetGroupName(
"Lte")
1135 for (
int j = 0; j < (int)sz; j++)
1139 std::vector<EpcX2Sap::UlInterferenceOverloadIndicationItem>::size_type sz2;
1143 for (
int k = 0;
k < (int)sz2;
k++)
1148 std::vector<EpcX2Sap::UlHighInterferenceInformationItem>::size_type sz3;
1152 for (
int k = 0;
k < (int)sz3;
k++)
1157 std::vector<bool>::size_type sz4;
1159 .ulHighInterferenceInformationList[
k]
1160 .ulHighInterferenceIndicationList.size();
1163 for (
int m = 0;
m < (int)sz4;
m++)
1166 .ulHighInterferenceInformationList[
k]
1167 .ulHighInterferenceIndicationList[
m]);
1171 std::vector<bool>::size_type sz5;
1175 for (
int k = 0;
k < (int)sz5;
k++)
1202 for (
int j = 0; j < sz; j++)
1210 for (
int k = 0;
k < sz2;
k++)
1219 for (
int k = 0;
k < sz3;
k++)
1227 for (
int m = 0;
m < sz4;
m++)
1238 for (
int k = 0;
k < sz5;
k++)
1262 std::vector<EpcX2Sap::CellInformationItem>
1270 std::vector<EpcX2Sap::CellInformationItem> cellInformationList)
1276 for (
int j = 0; j < (int)sz; j++)
1280 std::vector<EpcX2Sap::UlInterferenceOverloadIndicationItem>::size_type sz2;
1284 std::vector<EpcX2Sap::UlHighInterferenceInformationItem>::size_type sz3;
1288 for (
int k = 0;
k < (int)sz3;
k++)
1290 std::vector<bool>::size_type sz4;
1292 .ulHighInterferenceInformationList[
k]
1293 .ulHighInterferenceIndicationList.size();
1297 std::vector<bool>::size_type sz5;
1322 m_enb1MeasurementId(0xfffa),
1323 m_enb2MeasurementId(0xfffa)
1340 static TypeId tid =
TypeId(
"ns3::EpcX2ResourceStatusUpdateHeader")
1342 .SetGroupName(
"Lte")
1367 std::vector<EpcX2Sap::CellMeasurementResultItem>::size_type sz =
1371 for (
int j = 0; j < (int)sz; j++)
1404 for (
int j = 0; j < sz; j++)
1467 std::vector<EpcX2Sap::CellMeasurementResultItem>
1475 std::vector<EpcX2Sap::CellMeasurementResultItem> cellMeasurementResultList)
1479 std::vector<EpcX2Sap::CellMeasurementResultItem>::size_type sz =
1503 m_oldEnbUeX2apId(0xfffa),
1504 m_newEnbUeX2apId(0xfffa),
1521 static TypeId tid =
TypeId(
"ns3::EpcX2HandoverCancelHeader")
1523 .SetGroupName(
"Lte")
iterator in a Buffer instance
void WriteHtonU64(uint64_t data)
void WriteU8(uint8_t data)
void WriteHtonU16(uint16_t data)
void WriteHtonU32(uint32_t data)
EpcX2HandoverCancelHeader.
uint16_t m_oldEnbUeX2apId
old ENB UE X2 AP ID
uint16_t GetNewEnbUeX2apId() const
Get new ENB UE X2 AP ID function.
void SetOldEnbUeX2apId(uint16_t x2apId)
Set old ENB UE X2 AP ID function.
uint32_t GetLengthOfIes() const
Get length of IEs function.
uint16_t m_newEnbUeX2apId
new ENB UE X2 AP ID
~EpcX2HandoverCancelHeader() override
EpcX2HandoverCancelHeader()
uint16_t GetOldEnbUeX2apId() const
Get old ENB UE X2 AP ID function.
uint32_t m_headerLength
header length
void SetCause(uint16_t cause)
Set cause function.
void Serialize(Buffer::Iterator start) const override
uint16_t GetCause() const
Get cause function.
uint32_t GetNumberOfIes() const
Get number of IEs function.
void Print(std::ostream &os) const override
uint32_t GetSerializedSize() const override
uint32_t m_numberOfIes
number of IEs
static TypeId GetTypeId()
Get the type ID.
void SetNewEnbUeX2apId(uint16_t x2apId)
Set new ENB UE X2 AP ID function.
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
EpcX2HandoverPreparationFailureHeader.
void SetCriticalityDiagnostics(uint16_t criticalityDiagnostics)
Set criticality diagnostics function.
void SetCause(uint16_t cause)
Set cause function.
uint16_t GetOldEnbUeX2apId() const
Get old ENB UE X2 AP ID function.
void Serialize(Buffer::Iterator start) const override
static TypeId GetTypeId()
Get the type ID.
uint16_t GetCause() const
Get cause function.
EpcX2HandoverPreparationFailureHeader()
~EpcX2HandoverPreparationFailureHeader() override
uint16_t m_criticalityDiagnostics
criticality diagnostics
uint32_t m_headerLength
header length
uint32_t GetLengthOfIes() const
Get length of IEs function.
uint16_t GetCriticalityDiagnostics() const
Get criticality diagnostics function.
void Print(std::ostream &os) const override
uint32_t GetSerializedSize() const override
uint32_t m_numberOfIes
number of IEs
uint16_t m_oldEnbUeX2apId
old ENB UE X2 AP ID
void SetOldEnbUeX2apId(uint16_t x2apId)
Set old ENB UE X2 AP ID function.
uint32_t GetNumberOfIes() const
Get number of IEs function.
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
EpcX2HandoverRequestAckHeader.
uint16_t GetNewEnbUeX2apId() const
Get new ENB UE X2 AP ID function.
uint32_t m_headerLength
header length
uint32_t GetLengthOfIes() const
Get length of IEs function.
std::vector< EpcX2Sap::ErabNotAdmittedItem > GetNotAdmittedBearers() const
Get not admitted bearers function.
uint16_t m_oldEnbUeX2apId
old ENB UE X2 AP ID
uint16_t m_newEnbUeX2apId
new ENB UE X2 AP ID
uint32_t m_numberOfIes
number of IEs
static TypeId GetTypeId()
Get the type ID.
~EpcX2HandoverRequestAckHeader() override
uint16_t GetOldEnbUeX2apId() const
Get old ENB UE X2 AP ID function.
std::vector< EpcX2Sap::ErabAdmittedItem > GetAdmittedBearers() const
Get admittied bearers function.
void SetNotAdmittedBearers(std::vector< EpcX2Sap::ErabNotAdmittedItem > bearers)
Set not admitted bearers function.
EpcX2HandoverRequestAckHeader()
uint32_t GetSerializedSize() const override
void SetNewEnbUeX2apId(uint16_t x2apId)
Set new ENB UE X2 AP ID function.
std::vector< EpcX2Sap::ErabAdmittedItem > m_erabsAdmittedList
ERABs admitted list.
void SetOldEnbUeX2apId(uint16_t x2apId)
Set old ENB UE X2 AP ID function.
std::vector< EpcX2Sap::ErabNotAdmittedItem > m_erabsNotAdmittedList
ERABs not admitted list.
uint32_t GetNumberOfIes() const
Get number of IEs function.
void SetAdmittedBearers(std::vector< EpcX2Sap::ErabAdmittedItem > bearers)
Set admitted bearers function.
void Print(std::ostream &os) const override
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
void Serialize(Buffer::Iterator start) const override
EpcX2HandoverRequestHeader.
uint16_t GetCause() const
Get cause function.
TypeId GetInstanceTypeId() const override
Get the most derived TypeId for this Object.
void SetCause(uint16_t cause)
Set cause function.
uint32_t m_mmeUeS1apId
MME UE S1 AP ID.
std::vector< EpcX2Sap::ErabToBeSetupItem > m_erabsToBeSetupList
ERAB to be setup list.
void SetMmeUeS1apId(uint32_t mmeUeS1apId)
Set MME UE S1 AP ID function.
uint32_t GetMmeUeS1apId() const
Get MME UE S1 AP ID function.
void Serialize(Buffer::Iterator start) const override
void SetTargetCellId(uint16_t targetCellId)
Set target cell id function.
void Print(std::ostream &os) const override
uint64_t m_ueAggregateMaxBitRateUplink
aggregate max bit rate uplink
EpcX2HandoverRequestHeader()
uint32_t m_headerLength
header length
void SetUeAggregateMaxBitRateUplink(uint64_t bitRate)
Set UE Aggregate Max Bit Rate Uplik function.
uint64_t GetUeAggregateMaxBitRateUplink() const
Get UE Aggregate Max Bit Rate Uplik function.
uint16_t GetTargetCellId() const
Get target cell id function.
void SetBearers(std::vector< EpcX2Sap::ErabToBeSetupItem > bearers)
Set bearers function.
uint64_t GetUeAggregateMaxBitRateDownlink() const
Get UE Aggregate Max Bit Rate Downlink function.
void SetUeAggregateMaxBitRateDownlink(uint64_t bitRate)
Set UE Aggregate Max Bit Rate Downlink function.
uint32_t m_numberOfIes
number of IEs
static TypeId GetTypeId()
Get the type ID.
uint16_t m_targetCellId
target cell ID
~EpcX2HandoverRequestHeader() override
void SetOldEnbUeX2apId(uint16_t x2apId)
Set old ENB X2 AP ID function.
uint32_t GetNumberOfIes() const
Get number of IEs.
uint16_t m_oldEnbUeX2apId
old ENB UE X1 AP ID
uint16_t GetOldEnbUeX2apId() const
Get old ENB X2 AP ID function.
uint32_t GetLengthOfIes() const
Get length of IEs.
std::vector< EpcX2Sap::ErabToBeSetupItem > GetBearers() const
Get bearers function.
uint32_t GetSerializedSize() const override
uint64_t m_ueAggregateMaxBitRateDownlink
aggregate max bit rate downlink
static const uint16_t m_maxPdcpSn
E-RABs subject to status transfer item as it is used in the SN STATUS TRANSFER message.
UlInterferenceOverloadIndicationItem
UL Interference OverloadIndication as it is used in the LOAD INFORMATION message.
LoadIndicator
Load Indicator as it is used in the RESOURCE STATUS UPDATE message.
This class contains the specification of EPS Bearers.
AllocationRetentionPriority arp
allocation retention priority
GbrQosInformation gbrQosInfo
GBR QOS information.
Ipv4 addresses are stored in host order in this class.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
bool preemptionVulnerability
true if bearer can be preempted by others
bool preemptionCapability
true if bearer can preempt others
uint8_t priorityLevel
1-15; 1 = highest
Cell Measurement Result Item as it is used in the RESOURCE STATUS UPDATE message.
uint16_t ulTotalPrbUsage
UL Total PRB usage.
LoadIndicator ulHardwareLoadIndicator
UL hardware load indicator.
LoadIndicator dlHardwareLoadIndicator
DL hardware load indicator.
uint16_t sourceCellId
source cell id
uint16_t ulGbrPrbUsage
UL GBR PRB usage.
uint16_t dlTotalPrbUsage
DL Total PRB usage.
LoadIndicator dlS1TnlLoadIndicator
DL S1 TNL load indicator.
uint16_t ulNonGbrPrbUsage
UL Non GBR PRB usage.
CompositeAvailCapacity dlCompositeAvailableCapacity
DL composite available capacity.
CompositeAvailCapacity ulCompositeAvailableCapacity
UL composite available capacity.
uint16_t dlGbrPrbUsage
DL GBR PRB usage.
LoadIndicator ulS1TnlLoadIndicator
UL S1 TNL load indicator.
uint16_t dlNonGbrPrbUsage
DL Non GBR PRB usage.
uint16_t cellCapacityClassValue
cell capacity class value
uint16_t capacityValue
capacity value
E-RABs admitted item as it is used in the HANDOVER REQUEST ACKNOWLEDGE message.
uint32_t dlGtpTeid
downlink GTP TEID
uint32_t ulGtpTeid
uplink GTP TEID
E-RABs not admitted item as it is used in the HANDOVER REQUEST ACKNOWLEDGE message.
E-RABs to be setup item as it is used in the HANDOVER REQUEST message.
bool dlForwarding
DL forwarding.
Ipv4Address transportLayerAddress
transport layer address
EpsBearer erabLevelQosParameters
E-RAB level QOS parameters.
ErabsSubjectToStatusTransferItem structure.
std::bitset< m_maxPdcpSn > receiveStatusOfUlPdcpSdus
receive status of UL PDCP SDUs
uint16_t ulPdcpSn
UL PDCP SN.
uint16_t dlPdcpSn
DL PDCP SN.
int16_t rntpThreshold
RNTP threshold.
uint16_t antennaPorts
antenna ports
std::vector< bool > rntpPerPrbList
RNTP per prb list.
uint16_t pdcchInterferenceImpact
PDC channel interference list.