22 #ifndef NO_BACKHAUL_EPC_HELPER_H 23 #define NO_BACKHAUL_EPC_HELPER_H 25 #include "ns3/epc-helper.h" 29 class EpcSgwApplication;
30 class EpcPgwApplication;
31 class EpcMmeApplication;
247 #endif // NO_BACKHAUL_EPC_HELPER_H Simulation virtual time values and global simulation resolution.
Ipv6AddressHelper m_uePgwAddressHelper6
helper to assign IPv6 addresses to UE devices as well as to the TUN device of the SGW/PGW ...
virtual ~NoBackhaulEpcHelper()
Destructor.
virtual void AddEnb(Ptr< Node > enbNode, Ptr< NetDevice > lteEnbNetDevice, uint16_t cellId)
Add an eNB to the EPC.
Ipv4AddressHelper m_x2Ipv4AddressHelper
helper to assign addresses to X2 NetDevices
std::map< uint64_t, Ptr< NetDevice > > m_imsiEnbDeviceMap
Map storing for each IMSI the corresponding eNB NetDevice.
Keep track of a set of IPv6 interfaces.
holds a vector of std::pair of Ptr<Ipv4> and interface index.
uint16_t m_gtpcUdpPort
UDP port where the GTPv2-C Socket is bound, fixed by the standard as 2123.
Ptr< EpcMmeApplication > m_mmeApp
MME application.
Ptr< EpcSgwApplication > m_sgwApp
SGW application.
virtual Ipv6Address GetUeDefaultGatewayAddress6()
static TypeId GetTypeId(void)
Register this type.
Time m_x2LinkDelay
The delay to be used for the next X2 link to be created.
DataRate m_x2LinkDataRate
The data rate to be used for the next X2 link to be created.
std::string m_x2LinkPcapPrefix
Prefix for the PCAP file for the X2 link.
Class for representing data rates.
virtual Ipv4InterfaceContainer AssignUeIpv4Address(NetDeviceContainer ueDevices)
Assign IPv4 addresses to UE devices.
Ptr< Node > m_mme
MME network element.
Ipv4AddressHelper m_s5Ipv4AddressHelper
S5 interfaces.
Ptr< VirtualNetDevice > m_tunDevice
TUN device implementing tunneling of user data over GTP-U/UDP/IP.
virtual uint8_t ActivateEpsBearer(Ptr< NetDevice > ueLteDevice, uint64_t imsi, Ptr< EpcTft > tft, EpsBearer bearer)
Activate an EPS bearer, setting up the corresponding S1-U tunnel.
virtual Ipv6InterfaceContainer AssignUeIpv6Address(NetDeviceContainer ueDevices)
Assign IPv6 addresses to UE devices.
Time m_s11LinkDelay
The delay to be used for the next S11 link to be created.
holds a vector of ns3::NetDevice pointers
NoBackhaulEpcHelper()
Constructor.
uint16_t m_gtpuUdpPort
UDP port where the GTP-U Socket is bound, fixed by the standard as 2152.
DataRate m_s5LinkDataRate
The data rate to be used for the next S5 link to be created.
virtual void AddS1Interface(Ptr< Node > enb, Ipv4Address enbAddress, Ipv4Address sgwAddress, uint16_t cellId=0)
Add an S1 interface between an eNB and a SGW.
uint16_t m_x2LinkMtu
The MTU of the next X2 link to be created.
Ptr< Node > m_sgw
SGW network element.
Create an EPC network with PointToPoint links between the core network nodes.
DataRate m_s11LinkDataRate
The data rate to be used for the next S11 link to be created.
Base helper class to handle the creation of the EPC entities.
virtual void DoDispose()
Destructor implementation.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Ptr< Node > m_pgw
PGW network element.
bool m_x2LinkEnablePcap
Enable PCAP generation for X2 link.
This class contains the specification of EPS Bearers.
Time m_s5LinkDelay
The delay to be used for the next S5 link to be created.
Helper class to auto-assign global IPv6 unicast addresses.
virtual void DoActivateEpsBearerForUe(const Ptr< NetDevice > &ueDevice, const Ptr< EpcTft > &tft, const EpsBearer &bearer) const
DoActivateEpsBearerForUe: Schedule ActivateEpsBearer on the UE.
virtual void AddUe(Ptr< NetDevice > ueLteDevice, uint64_t imsi)
Notify the EPC of the existence of a new UE which might attach at a later time.
Describes an IPv6 address.
Ipv4AddressHelper m_s11Ipv4AddressHelper
Helper to assign addresses to S11 NetDevices.
Ipv4 addresses are stored in host order in this class.
virtual Ptr< Node > GetPgwNode() const
Get the PGW node.
uint16_t m_s5LinkMtu
The MTU of the next S5 link to be created.
TypeId GetInstanceTypeId() const
Get the most derived TypeId for this Object.
uint16_t m_s11LinkMtu
The MTU of the next S11 link to be created.
virtual void AddX2Interface(Ptr< Node > enbNode1, Ptr< Node > enbNode2)
Add an X2 interface between two eNB.
A helper class to make life easier while doing simple IPv4 address assignment in scripts.
virtual void DoAddX2Interface(const Ptr< EpcX2 > &enb1X2, const Ptr< NetDevice > &enb1LteDev, const Ipv4Address &enb1X2Address, const Ptr< EpcX2 > &enb2X2, const Ptr< NetDevice > &enb2LteDev, const Ipv4Address &enb2X2Address) const
DoAddX2Interface: Call AddX2Interface on top of the Enb device pointers.
virtual Ptr< Node > GetSgwNode() const
Get the SGW node.
a unique identifier for an interface.
virtual Ipv4Address GetUeDefaultGatewayAddress()
Ptr< EpcPgwApplication > m_pgwApp
PGW application.
Ipv4AddressHelper m_uePgwAddressHelper
helper to assign IPv4 addresses to UE devices as well as to the TUN device of the SGW/PGW ...