22 #include "ns3/simulator.h"
24 #include "ns3/lte-pdcp.h"
25 #include "ns3/lte-pdcp-header.h"
26 #include "ns3/lte-pdcp-sap.h"
27 #include "ns3/lte-pdcp-tag.h"
72 m_txSequenceNumber (0),
73 m_rxSequenceNumber (0)
90 .AddTraceSource (
"TxPDU",
91 "PDU transmission notified to the RLC.",
93 .AddTraceSource (
"RxPDU",
uint32_t RemoveHeader(Header &header)
Deserialize and remove the header from the internal buffer.
Service Access Point (SAP) offered by the UM-RLC and AM-RLC entities to the PDCP entity See 3GPP 36...
LteRlcSapProvider * m_rlcSapProvider
bool FindFirstMatchingByteTag(Tag &tag) const
keep track of time values and allow control of global simulation resolution
#define NS_LOG_FUNCTION(parameters)
virtual void DoReceivePdu(Ptr< Packet > p)
LteRlcSapUser * GetLteRlcSapUser()
void SetLtePdcpSapUser(LtePdcpSapUser *s)
Service Access Point (SAP) offered by the UM-RLC and AM-RLC entities to the PDCP entity See 3GPP 36...
static TypeId GetTypeId(void)
uint16_t txSn
TX sequence number.
Status variables of the PDCP.
LtePdcpSapProvider * m_pdcpSapProvider
NS_OBJECT_ENSURE_REGISTERED(NullMessageSimulatorImpl)
uint32_t GetSize(void) const
uint16_t m_txSequenceNumber
State variables.
uint16_t m_rxSequenceNumber
virtual void TransmitPdcpPdu(TransmitPdcpPduParameters params)=0
Send a PDCP PDU to the RLC for transmission This method is to be called when upper PDCP entity has a ...
Ptr< Packet > pdcpSdu
the RRC PDU
void SetStatus(Status s)
Set the status of the PDCP.
Parameters for LtePdcpSapUser::ReceivePdcpSdu.
uint16_t rnti
the C-RNTI identifying the UE
LtePdcpSpecificLteRlcSapUser()
TracedCallback< uint16_t, uint8_t, uint32_t > m_txPdu
Used to inform of a PDU delivery to the RLC SAP provider.
LtePdcpSapProvider * GetLtePdcpSapProvider()
Tag to calculate the per-PDU delay from eNb PDCP to UE PDCP.
void SetLteRlcSapProvider(LteRlcSapProvider *s)
uint16_t rxSn
RX sequence number.
#define NS_LOG_LOGIC(msg)
virtual void DoTransmitPdcpSdu(Ptr< Packet > p)
void SetLcId(uint8_t lcId)
void SetRnti(uint16_t rnti)
Ptr< const TraceSourceAccessor > MakeTraceSourceAccessor(T a)
virtual void DoDispose()
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
LteRlcSapUser * m_rlcSapUser
friend class LtePdcpSpecificLteRlcSapUser
LTE PDCP entity, see 3GPP TS 36.323.
static Time Now(void)
Return the "current simulation time".
virtual void ReceivePdcpSdu(ReceivePdcpSduParameters params)=0
Called by the PDCP entity to notify the RRC entity of the reception of a new RRC PDU.
Parameters for LteRlcSapProvider::TransmitPdcpPdu.
int64_t GetNanoSeconds(void) const
Service Access Point (SAP) offered by the PDCP entity to the RRC entity See 3GPP 36.323 Packet Data Convergence Protocol (PDCP) specification.
Service Access Point (SAP) offered by the PDCP entity to the RRC entity See 3GPP 36.323 Packet Data Convergence Protocol (PDCP) specification.
virtual void ReceivePdcpPdu(Ptr< Packet > p)
Called by the RLC entity to notify the PDCP entity of the reception of a new PDCP PDU...
NS_LOG_COMPONENT_DEFINE("LtePdcp")
uint8_t lcid
the logical channel id corresponding to the sending RLC instance
TracedCallback< uint16_t, uint8_t, uint32_t, uint64_t > m_rxPdu
Used to inform of a PDU reception from the RLC SAP user.
uint16_t rnti
the C-RNTI identifying the UE
LtePdcpSapUser * m_pdcpSapUser
static const uint16_t m_maxPdcpSn
Constants.
a base class which provides memory management and object aggregation
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
void AddHeader(const Header &header)
Add header to this packet.
void AddByteTag(const Tag &tag) const
Tag each byte included in this packet with a new byte tag.