A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::EpcTft Class Reference

#include <epc-tft.h>

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

Classes

struct  PacketFilter

Public Types

enum  Direction { DOWNLINK = 1, UPLINK = 2, BIDIRECTIONAL = 3 }

Public Member Functions

 EpcTft ()
uint8_t Add (PacketFilter f)
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 ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const

Static Public Member Functions

static Ptr< EpcTftDefault ()
- Static Public Member Functions inherited from ns3::SimpleRefCount< EpcTft >
static void Cleanup (void)

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
thePacketFilter 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 Default(), ns3::LteEpcE2eDataTestCase::DoRun(), and ns3::EpcTftClassifierTestSuite::EpcTftClassifierTestSuite().

+ 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.

Referenced by ns3::EpcTftClassifier::Classify().

+ Here is the caller graph for this 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: