A Discrete-Event Network Simulator
API
ns3::EpcTft Class Reference

This class implements the EPS bearer Traffic Flow Template (TFT), which is the set of all packet filters associated with an EPS bearer. More...

#include "epc-tft.h"

+ Inheritance diagram for ns3::EpcTft:
+ Collaboration diagram for ns3::EpcTft:

Classes

struct  PacketFilter
 Implement the data structure representing a TrafficFlowTemplate Packet Filter. More...
 

Public Types

enum  Direction { DOWNLINK = 1, UPLINK = 2, BIDIRECTIONAL = 3 }
 Indicates the direction of the traffic that is to be classified. More...
 

Public Member Functions

 EpcTft ()
 
uint8_t Add (PacketFilter f)
 add a PacketFilter to the Traffic Flow Template More...
 
bool Matches (Direction direction, Ipv4Address remoteAddress, Ipv4Address localAddress, uint16_t remotePort, uint16_t localPort, uint8_t typeOfService)
 
- Public Member Functions inherited from ns3::SimpleRefCount< EpcTft >
 SimpleRefCount ()
 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. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Static Public Member Functions

static Ptr< EpcTftDefault ()
 creates a TFT matching any traffic More...
 
- Static Public Member Functions inherited from ns3::SimpleRefCount< EpcTft >
static void Cleanup (void)
 Noop. More...
 

Private Attributes

std::list< PacketFilterm_filters
 
uint8_t m_numFilters
 

Detailed Description

This class implements the EPS bearer Traffic Flow Template (TFT), which is the set of all packet filters associated with an EPS bearer.

Definition at line 40 of file epc-tft.h.

Member Enumeration Documentation

Indicates the direction of the traffic that is to be classified.

Enumerator
DOWNLINK 
UPLINK 
BIDIRECTIONAL 

Definition at line 56 of file epc-tft.h.

Constructor & Destructor Documentation

ns3::EpcTft::EpcTft ( )

Definition at line 150 of file epc-tft.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

uint8_t ns3::EpcTft::Add ( PacketFilter  f)

add a PacketFilter to the Traffic Flow Template

Parameters
fthe PacketFilter to be added
Returns
the id( 0 <= id < 16) of the newly added filter, if the addition was successful. Will fail if you try to add more than 15 filters. This is to be compliant with TS 24.008.

Definition at line 157 of file epc-tft.cc.

References m_filters, m_numFilters, NS_ABORT_IF, NS_LOG_FUNCTION, and ns3::EpcTft::PacketFilter::precedence.

Referenced by LteX2HandoverTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), and EpcTftClassifierTestSuite::EpcTftClassifierTestSuite().

+ Here is the caller graph for this function:

Ptr< EpcTft > ns3::EpcTft::Default ( void  )
static

creates a TFT matching any traffic

Returns
a newly created TFT that will match any traffic

Definition at line 141 of file epc-tft.cc.

Referenced by ns3::LteHelper::Attach(), and ns3::LenaDeactivateBearerTestCase::DoRun().

+ Here is the caller graph for this function:

bool ns3::EpcTft::Matches ( Direction  direction,
Ipv4Address  remoteAddress,
Ipv4Address  localAddress,
uint16_t  remotePort,
uint16_t  localPort,
uint8_t  typeOfService 
)
Parameters
direction
remoteAddress
localAddress
remotePort
localPort
typeOfService
Returns
true if any PacketFilter in the TFT matches with the parameters, false otherwise.

Definition at line 174 of file epc-tft.cc.

References m_filters, and NS_LOG_FUNCTION.

Member Data Documentation

std::list<PacketFilter> ns3::EpcTft::m_filters
private

Definition at line 156 of file epc-tft.h.

Referenced by Add(), and Matches().

uint8_t ns3::EpcTft::m_numFilters
private

Definition at line 157 of file epc-tft.h.

Referenced by Add().


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