24 #include "ns3/socket.h"
25 #include "ns3/callback.h"
27 #include "ns3/object.h"
29 #include "ns3/epc-x2-sap.h"
54 X2CellInfo (uint16_t localCellId, uint16_t remoteCellId);
virtual ~EpcX2(void)
Destructor.
virtual void DoSendHandoverRequest(EpcX2SapProvider::HandoverRequestParams params)
virtual ~X2IfaceInfo(void)
These service primitives of this part of the X2 SAP are provided by the X2 entity and issued by RRC e...
Ptr< Socket > m_localUserPlaneSocket
X2CellInfo & operator=(const X2CellInfo &)
Parameters of the HANDOVER REQUEST message.
static TypeId GetTypeId(void)
virtual void DoSendLoadInformation(EpcX2SapProvider::LoadInformationParams params)
uint16_t m_x2cUdpPort
UDP ports to be used for the X2 interfaces: X2-C and X2-U.
void RecvFromX2uSocket(Ptr< Socket > socket)
Method to be assigned to the recv callback of the X2-U (X2 User Plane) socket.
virtual ~X2CellInfo(void)
virtual void DoSendUeData(EpcX2SapProvider::UeDataParams params)
virtual void DoSendUeContextRelease(EpcX2SapProvider::UeContextReleaseParams params)
virtual void DoSendSnStatusTransfer(EpcX2SapProvider::SnStatusTransferParams params)
virtual void DoSendResourceStatusUpdate(EpcX2SapProvider::ResourceStatusUpdateParams params)
X2IfaceInfo & operator=(const X2IfaceInfo &)
void RecvFromX2cSocket(Ptr< Socket > socket)
Method to be assigned to the recv callback of the X2-C (X2 Control Plane) socket. ...
Parameters of the HANDOVER PREPARATION FAILURE message.
Ptr< Socket > m_localCtrlPlaneSocket
Parameters of the SN STATUS TRANSFER message.
virtual void DoSendHandoverRequestAck(EpcX2SapProvider::HandoverRequestAckParams params)
std::map< uint16_t, Ptr< X2IfaceInfo > > m_x2InterfaceSockets
Map the targetCellId to the corresponding (sourceSocket, remoteIpAddr) to be used to send the X2 mess...
X2IfaceInfo(Ipv4Address remoteIpAddr, Ptr< Socket > localCtrlPlaneSocket, Ptr< Socket > localUserPlaneSocket)
X2CellInfo(uint16_t localCellId, uint16_t remoteCellId)
Parameters of the RESOURCE STATUS UPDATE message.
This entity is installed inside an eNB and provides the functionality for the X2 interface.
Parameters of the UE CONTEXT RELEASE message.
Parameters of the HANDOVER REQUEST ACKNOWLEDGE message.
These service primitives of this part of the X2 SAP are provided by the RRC entity and issued by the ...
EpcX2SapUser * m_x2SapUser
virtual void DoSendHandoverPreparationFailure(EpcX2SapProvider::HandoverPreparationFailureParams params)
Ipv4 addresses are stored in host order in this class.
EpcX2SapProvider * GetEpcX2SapProvider()
void SetEpcX2SapUser(EpcX2SapUser *s)
EpcX2SapProvider * m_x2SapProvider
std::map< Ptr< Socket >, Ptr< X2CellInfo > > m_x2InterfaceCellIds
Map the localSocket (the one receiving the X2 message) to the corresponding (sourceCellId, targetCellId) associated with the X2 interface.
a base class which provides memory management and object aggregation
void AddX2Interface(uint16_t enb1CellId, Ipv4Address enb1X2Address, uint16_t enb2CellId, Ipv4Address enb2X2Address)
Add an X2 interface to this EPC X2 entity.
virtual void DoDispose(void)
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
Parameters of the UE DATA primitive.
Ipv4Address m_remoteIpAddr
A template-based reference counting class.
a unique identifier for an interface.