A Discrete-Event Network Simulator
API
Public Member Functions | Private Attributes | List of all members
ns3::EpcSgwPgwApplication::UeInfo Class Reference

store info for each UE connected to this SGW More...

+ Inheritance diagram for ns3::EpcSgwPgwApplication::UeInfo:

Public Member Functions

 UeInfo ()
 
void AddBearer (Ptr< EpcTft > tft, uint8_t epsBearerId, uint32_t teid)
 
uint32_t Classify (Ptr< Packet > p)
 
Ipv4Address GetEnbAddr ()
 
Ipv4Address GetUeAddr ()
 
Ipv6Address GetUeAddr6 ()
 
void RemoveBearer (uint8_t bearerId)
 Function, deletes contexts of bearer on SGW and PGW side. More...
 
void SetEnbAddr (Ipv4Address addr)
 set the address of the eNB to which the UE is connected More...
 
void SetUeAddr (Ipv4Address addr)
 set the IPv4 address of the UE More...
 
void SetUeAddr6 (Ipv6Address addr)
 set the IPv6 address of the UE More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< UeInfo >
 SimpleRefCount ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Private Attributes

Ipv4Address m_enbAddr
 ENB IPv4 address. More...
 
std::map< uint8_t, uint32_t > m_teidByBearerIdMap
 TEID By bearer ID Map. More...
 
EpcTftClassifier m_tftClassifier
 TFT classifier. More...
 
Ipv4Address m_ueAddr
 UE IPv4 address. More...
 
Ipv6Address m_ueAddr6
 UE IPv6 address. More...
 

Detailed Description

store info for each UE connected to this SGW

Definition at line 204 of file epc-sgw-pgw-application.h.

Constructor & Destructor Documentation

◆ UeInfo()

ns3::EpcSgwPgwApplication::UeInfo::UeInfo ( )

Definition at line 42 of file epc-sgw-pgw-application.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

◆ AddBearer()

void ns3::EpcSgwPgwApplication::UeInfo::AddBearer ( Ptr< EpcTft tft,
uint8_t  epsBearerId,
uint32_t  teid 
)
Parameters
tftthe Traffic Flow Template of the new bearer to be added
epsBearerIdthe ID of the EPS Bearer to be activated
teidthe TEID of the new bearer

Definition at line 48 of file epc-sgw-pgw-application.cc.

References NS_LOG_FUNCTION.

◆ Classify()

uint32_t ns3::EpcSgwPgwApplication::UeInfo::Classify ( Ptr< Packet p)
Parameters
pthe IP packet from the internet to be classified
Returns
the corresponding bearer ID > 0 identifying the bearer among all the bearers of this UE; returns 0 if no bearers matches with the previously declared TFTs

Definition at line 63 of file epc-sgw-pgw-application.cc.

References ns3::EpcTft::DOWNLINK, and NS_LOG_FUNCTION.

◆ GetEnbAddr()

Ipv4Address ns3::EpcSgwPgwApplication::UeInfo::GetEnbAddr ( )
Returns
the address of the eNB to which the UE is connected

Definition at line 73 of file epc-sgw-pgw-application.cc.

◆ GetUeAddr()

Ipv4Address ns3::EpcSgwPgwApplication::UeInfo::GetUeAddr ( )
Returns
the IPv4 address of the UE

Definition at line 85 of file epc-sgw-pgw-application.cc.

◆ GetUeAddr6()

Ipv6Address ns3::EpcSgwPgwApplication::UeInfo::GetUeAddr6 ( )
Returns
the IPv6 address of the UE

Definition at line 97 of file epc-sgw-pgw-application.cc.

◆ RemoveBearer()

void ns3::EpcSgwPgwApplication::UeInfo::RemoveBearer ( uint8_t  bearerId)

Function, deletes contexts of bearer on SGW and PGW side.

Parameters
bearerIdthe Bearer Id whose contexts to be removed

Definition at line 56 of file epc-sgw-pgw-application.cc.

References NS_LOG_FUNCTION.

◆ SetEnbAddr()

void ns3::EpcSgwPgwApplication::UeInfo::SetEnbAddr ( Ipv4Address  addr)

set the address of the eNB to which the UE is connected

Parameters
addrthe address of the eNB

Definition at line 79 of file epc-sgw-pgw-application.cc.

◆ SetUeAddr()

void ns3::EpcSgwPgwApplication::UeInfo::SetUeAddr ( Ipv4Address  addr)

set the IPv4 address of the UE

Parameters
addrthe IPv4 address of the UE

Definition at line 91 of file epc-sgw-pgw-application.cc.

◆ SetUeAddr6()

void ns3::EpcSgwPgwApplication::UeInfo::SetUeAddr6 ( Ipv6Address  addr)

set the IPv6 address of the UE

Parameters
addrthe IPv6 address of the UE

Definition at line 103 of file epc-sgw-pgw-application.cc.

Member Data Documentation

◆ m_enbAddr

Ipv4Address ns3::EpcSgwPgwApplication::UeInfo::m_enbAddr
private

ENB IPv4 address.

Definition at line 272 of file epc-sgw-pgw-application.h.

◆ m_teidByBearerIdMap

std::map<uint8_t, uint32_t> ns3::EpcSgwPgwApplication::UeInfo::m_teidByBearerIdMap
private

TEID By bearer ID Map.

Definition at line 275 of file epc-sgw-pgw-application.h.

◆ m_tftClassifier

EpcTftClassifier ns3::EpcSgwPgwApplication::UeInfo::m_tftClassifier
private

TFT classifier.

Definition at line 271 of file epc-sgw-pgw-application.h.

◆ m_ueAddr

Ipv4Address ns3::EpcSgwPgwApplication::UeInfo::m_ueAddr
private

UE IPv4 address.

Definition at line 273 of file epc-sgw-pgw-application.h.

◆ m_ueAddr6

Ipv6Address ns3::EpcSgwPgwApplication::UeInfo::m_ueAddr6
private

UE IPv6 address.

Definition at line 274 of file epc-sgw-pgw-application.h.


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