5G-LENA nr-v3.3-159-ga6832aa7
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
ns3::NrPdcp Class Reference

#include "nr-pdcp.h"

+ Inheritance diagram for ns3::NrPdcp:
+ Collaboration diagram for ns3::NrPdcp:

Classes

struct  Status
 

Public Types

typedef void(* PduRxTracedCallback) (const uint16_t rnti, const uint8_t lcid, const uint32_t size, const uint64_t delay)
 
typedef void(* PduTxTracedCallback) (uint16_t rnti, uint8_t lcid, uint32_t size)
 

Public Member Functions

void DoDispose () override
 
NrPdcpSapProviderGetNrPdcpSapProvider ()
 
NrRlcSapUserGetNrRlcSapUser ()
 
Status GetStatus () const
 
void SetLcId (uint8_t lcId)
 
void SetNrPdcpSapUser (NrPdcpSapUser *s)
 
void SetNrRlcSapProvider (NrRlcSapProvider *s)
 
void SetRnti (uint16_t rnti)
 
void SetStatus (Status s)
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 

Static Public Attributes

static const uint16_t MAX_PDCP_SN = 4096
 maximum PDCP SN
 

Protected Member Functions

virtual void DoReceivePdu (Ptr< Packet > p)
 
virtual void DoTransmitPdcpSdu (NrPdcpSapProvider::TransmitPdcpSduParameters params)
 

Protected Attributes

uint8_t m_lcid
 LCID.
 
NrPdcpSapProviderm_pdcpSapProvider
 PDCP SAP provider.
 
NrPdcpSapUserm_pdcpSapUser
 PDCP SAP user.
 
NrRlcSapProviderm_rlcSapProvider
 RLC SAP provider.
 
NrRlcSapUserm_rlcSapUser
 RLC SAP user.
 
uint16_t m_rnti
 RNTI.
 
TracedCallback< uint16_t, uint8_t, uint32_t, uint64_t > m_rxPdu
 
TracedCallback< uint16_t, uint8_t, uint32_t > m_txPdu
 

Friends

class NrPdcpSpecificNrPdcpSapProvider< NrPdcp >
 allow NrPdcpSpecificNrPdcpSapProvider<NrPdcp> class friend access
 
class NrPdcpSpecificNrRlcSapUser
 allow NrPdcpSpecificNrRlcSapUser class friend access
 

Detailed Description

LTE PDCP entity, see 3GPP TS 36.323

Config Paths

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

No Attributes are defined for this type.

TraceSources

Size of this type is 152 bytes (on a 64-bit architecture).

Definition at line 23 of file nr-pdcp.h.

Member Typedef Documentation

◆ PduRxTracedCallback

typedef void(* ns3::NrPdcp::PduRxTracedCallback) (const uint16_t rnti, const uint8_t lcid, const uint32_t size, const uint64_t delay)

TracedCallback signature for PDU receive event.

Parameters
[in]rntiThe C-RNTI identifying the UE.
[in]lcidThe logical channel id corresponding to the sending RLC instance.
[in]sizePacket size.
[in]delayDelay since packet sent, in ns..

Definition at line 126 of file nr-pdcp.h.

◆ PduTxTracedCallback

typedef void(* ns3::NrPdcp::PduTxTracedCallback) (uint16_t rnti, uint8_t lcid, uint32_t size)

TracedCallback for PDU transmission event.

Parameters
[in]rntiThe C-RNTI identifying the UE.
[in]lcidThe logical channel id corresponding to the sending RLC instance.
[in]sizePacket size.

Definition at line 115 of file nr-pdcp.h.

Constructor & Destructor Documentation

◆ NrPdcp()

ns3::NrPdcp::NrPdcp ( )

Definition at line 59 of file nr-pdcp.cc.

◆ ~NrPdcp()

ns3::NrPdcp::~NrPdcp ( )
override

Definition at line 72 of file nr-pdcp.cc.

Member Function Documentation

◆ DoDispose()

void ns3::NrPdcp::DoDispose ( )
override

Definition at line 95 of file nr-pdcp.cc.

◆ DoReceivePdu()

void ns3::NrPdcp::DoReceivePdu ( Ptr< Packet >  p)
protectedvirtual

◆ DoTransmitPdcpSdu()

void ns3::NrPdcp::DoTransmitPdcpSdu ( NrPdcpSapProvider::TransmitPdcpSduParameters  params)
protectedvirtual

◆ GetNrPdcpSapProvider()

NrPdcpSapProvider * ns3::NrPdcp::GetNrPdcpSapProvider ( )
Returns
the PDCP SAP Provider interface offered to the RRC by this NR_PDCP

Definition at line 124 of file nr-pdcp.cc.

◆ GetNrRlcSapUser()

NrRlcSapUser * ns3::NrPdcp::GetNrRlcSapUser ( )
Returns
the RLC SAP User interface offered to the RLC by this NR_PDCP

Definition at line 138 of file nr-pdcp.cc.

◆ GetStatus()

NrPdcp::Status ns3::NrPdcp::GetStatus ( ) const
Returns
the current status of the PDCP

Definition at line 145 of file nr-pdcp.cc.

References ns3::NrPdcp::Status::rxSn, and ns3::NrPdcp::Status::txSn.

◆ GetTypeId()

TypeId ns3::NrPdcp::GetTypeId ( )
static

Get the type ID.

Returns
the object TypeId

Definition at line 78 of file nr-pdcp.cc.

◆ SetLcId()

void ns3::NrPdcp::SetLcId ( uint8_t  lcId)
Parameters
lcId

Definition at line 110 of file nr-pdcp.cc.

◆ SetNrPdcpSapUser()

void ns3::NrPdcp::SetNrPdcpSapUser ( NrPdcpSapUser s)
Parameters
sthe PDCP SAP user to be used by this NR_PDCP

Definition at line 117 of file nr-pdcp.cc.

◆ SetNrRlcSapProvider()

void ns3::NrPdcp::SetNrRlcSapProvider ( NrRlcSapProvider s)
Parameters
sthe RLC SAP Provider to be used by this NR_PDCP

Definition at line 131 of file nr-pdcp.cc.

◆ SetRnti()

void ns3::NrPdcp::SetRnti ( uint16_t  rnti)
Parameters
rnti

Definition at line 103 of file nr-pdcp.cc.

◆ SetStatus()

void ns3::NrPdcp::SetStatus ( Status  s)

Set the status of the PDCP

Parameters
s

Definition at line 154 of file nr-pdcp.cc.

References ns3::NrPdcp::Status::rxSn, and ns3::NrPdcp::Status::txSn.

Friends And Related Symbol Documentation

◆ NrPdcpSpecificNrPdcpSapProvider< NrPdcp >

friend class NrPdcpSpecificNrPdcpSapProvider< NrPdcp >
friend

allow NrPdcpSpecificNrPdcpSapProvider<NrPdcp> class friend access

Definition at line 26 of file nr-pdcp.h.

◆ NrPdcpSpecificNrRlcSapUser

friend class NrPdcpSpecificNrRlcSapUser
friend

allow NrPdcpSpecificNrRlcSapUser class friend access

Definition at line 26 of file nr-pdcp.h.

Member Data Documentation

◆ m_lcid

uint8_t ns3::NrPdcp::m_lcid
protected

LCID.

Definition at line 153 of file nr-pdcp.h.

◆ m_pdcpSapProvider

NrPdcpSapProvider* ns3::NrPdcp::m_pdcpSapProvider
protected

PDCP SAP provider.

Definition at line 140 of file nr-pdcp.h.

◆ m_pdcpSapUser

NrPdcpSapUser* ns3::NrPdcp::m_pdcpSapUser
protected

PDCP SAP user.

Definition at line 139 of file nr-pdcp.h.

◆ m_rlcSapProvider

NrRlcSapProvider* ns3::NrPdcp::m_rlcSapProvider
protected

RLC SAP provider.

Definition at line 150 of file nr-pdcp.h.

◆ m_rlcSapUser

NrRlcSapUser* ns3::NrPdcp::m_rlcSapUser
protected

RLC SAP user.

Definition at line 149 of file nr-pdcp.h.

◆ m_rnti

uint16_t ns3::NrPdcp::m_rnti
protected

RNTI.

Definition at line 152 of file nr-pdcp.h.

◆ m_rxPdu

TracedCallback<uint16_t, uint8_t, uint32_t, uint64_t> ns3::NrPdcp::m_rxPdu
protected

Used to inform of a PDU reception from the RLC SAP user. The parameters are RNTI, LCID, bytes delivered and delivery delay in nanoseconds.

Definition at line 164 of file nr-pdcp.h.

◆ m_txPdu

TracedCallback<uint16_t, uint8_t, uint32_t> ns3::NrPdcp::m_txPdu
protected

Used to inform of a PDU delivery to the RLC SAP provider. The parameters are RNTI, LCID and bytes delivered

Definition at line 159 of file nr-pdcp.h.

◆ MAX_PDCP_SN

const uint16_t ns3::NrPdcp::MAX_PDCP_SN = 4096
static

maximum PDCP SN

Definition at line 83 of file nr-pdcp.h.


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