20 #ifndef EPC_S1AP_SAP_H
21 #define EPC_S1AP_SAP_H
25 #include <ns3/address.h>
26 #include <ns3/ipv4-address.h>
27 #include <ns3/object.h>
88 std::list<ErabToBeReleasedIndication> erabToBeReleaseIndication) = 0;
110 std::list<ErabSetupItem> erabSetupList) = 0;
134 std::list<ErabSwitchedInDownlinkItem> erabToBeSwitchedInDownlinkList) = 0;
164 std::list<ErabToBeSetupItem> erabToBeSetupList) = 0;
188 std::list<ErabSwitchedInUplinkItem> erabToBeSwitchedInUplinkList) = 0;
220 uint16_t ecgi)
override;
230 std::list<ErabToBeReleasedIndication> erabToBeReleaseIndication)
override;
240 std::list<ErabSetupItem> erabSetupList)
override;
252 std::list<ErabSwitchedInDownlinkItem> erabToBeSwitchedInDownlinkList)
override;
271 m_owner->DoInitialUeMessage(mmeUeS1Id, enbUeS1Id, imsi, ecgi);
279 std::list<ErabToBeReleasedIndication> erabToBeReleaseIndication)
281 m_owner->DoErabReleaseIndication(mmeUeS1Id, enbUeS1Id, erabToBeReleaseIndication);
288 std::list<ErabSetupItem> erabSetupList)
290 m_owner->DoInitialContextSetupResponse(mmeUeS1Id, enbUeS1Id, erabSetupList);
299 std::list<ErabSwitchedInDownlinkItem> erabToBeSwitchedInDownlinkList)
301 m_owner->DoPathSwitchRequest(enbUeS1Id, mmeUeS1Id, cgi, erabToBeSwitchedInDownlinkList);
331 std::list<ErabToBeSetupItem> erabToBeSetupList)
override;
343 std::list<ErabSwitchedInUplinkItem> erabToBeSwitchedInUplinkList)
override;
359 std::list<ErabToBeSetupItem> erabToBeSetupList)
361 m_owner->DoInitialContextSetupRequest(mmeUeS1Id, enbUeS1Id, erabToBeSetupList);
370 std::list<ErabSwitchedInUplinkItem> erabToBeSwitchedInUplinkList)
372 m_owner->DoPathSwitchRequestAcknowledge(enbUeS1Id,
375 erabToBeSwitchedInUplinkList);
eNB side of the S1-AP Service Access Point (SAP), provides the eNB methods to be called when an S1-AP...
virtual void PathSwitchRequestAcknowledge(uint64_t enbUeS1Id, uint64_t mmeUeS1Id, uint16_t cgi, std::list< ErabSwitchedInUplinkItem > erabToBeSwitchedInUplinkList)=0
PATH SWITCH REQUEST ACKNOWLEDGE message, see 3GPP TS 36.413 9.1.5.9.
virtual void InitialContextSetupRequest(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list< ErabToBeSetupItem > erabToBeSetupList)=0
Initial context setup request.
Base class that defines EPC S1-AP Service Access Point (SAP) interface.
MME side of the S1-AP Service Access Point (SAP), provides the MME methods to be called when an S1-AP...
virtual void InitialContextSetupResponse(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list< ErabSetupItem > erabSetupList)=0
INITIAL CONTEXT SETUP RESPONSE message, see 3GPP TS 36.413 9.1.4.2.
virtual void InitialUeMessage(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, uint64_t stmsi, uint16_t ecgi)=0
Initial UE message.
virtual void ErabReleaseIndication(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list< ErabToBeReleasedIndication > erabToBeReleaseIndication)=0
As per 3GPP TS 36.413 version 9.8.0 section 8.2.3.2.2, the eNB indicates bearer release by sending an...
virtual void PathSwitchRequest(uint64_t enbUeS1Id, uint64_t mmeUeS1Id, uint16_t gci, std::list< ErabSwitchedInDownlinkItem > erabToBeSwitchedInDownlinkList)=0
PATH SWITCH REQUEST message, see 3GPP TS 36.413 9.1.5.8.
This class contains the specification of EPS Bearers.
Ipv4 addresses are stored in host order in this class.
Template for the implementation of the EpcS1apSapEnb as a member of an owner class of type C to which...
void InitialContextSetupRequest(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list< ErabToBeSetupItem > erabToBeSetupList) override
Initial context setup request function.
MemberEpcS1apSapEnb()=delete
void PathSwitchRequestAcknowledge(uint64_t enbUeS1Id, uint64_t mmeUeS1Id, uint16_t cgi, std::list< ErabSwitchedInUplinkItem > erabToBeSwitchedInUplinkList) override
Path switch request acknowledge function.
Template for the implementation of the EpcS1apSapMme as a member of an owner class of type C to which...
void PathSwitchRequest(uint64_t enbUeS1Id, uint64_t mmeUeS1Id, uint16_t cgi, std::list< ErabSwitchedInDownlinkItem > erabToBeSwitchedInDownlinkList) override
Path switch request.
void InitialUeMessage(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, uint64_t imsi, uint16_t ecgi) override
Initial UE Message function.
MemberEpcS1apSapMme()=delete
void ErabReleaseIndication(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list< ErabToBeReleasedIndication > erabToBeReleaseIndication) override
ERAB Release Indiation function.
void InitialContextSetupResponse(uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list< ErabSetupItem > erabSetupList) override
Initial context setup response.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
E-RABs Switched in Uplink Item IE, see 3GPP TS 36.413 9.1.5.9.
Ipv4Address transportLayerAddress
transport layer address
ErabToBeSetupItem structure.
EpsBearer erabLevelQosParameters
Level QOS parameters.
Ipv4Address transportLayerAddress
transport layer address
E-RAB Setup Item IEs, see 3GPP TS 36.413 9.1.4.2.
Ipv4Address enbTransportLayerAddress
transport layer address
E-RABs Switched in Downlink Item IE, see 3GPP TS 36.413 9.1.5.8.
Ipv4Address enbTransportLayerAddress
address
E-RAB Release Indication Item IEs, 3GPP TS 36.413 version 9.8.0 section 9.1.3.7.