25 #include "ns3/packet.h" 
   26 #include "ns3/ipv4-header.h" 
   27 #include "ns3/udp-header.h" 
   28 #include "ns3/tcp-header.h" 
   29 #include "ns3/udp-l4-protocol.h" 
   30 #include "ns3/tcp-l4-protocol.h" 
   32 #include "ns3/epc-tft-classifier.h" 
   70   virtual void DoRun (
void);
 
   81   : 
TestCase (BuildNameString (c, d, sa, da, sp, dp, tos, tftId)),
 
  110   std::ostringstream oss;
 
  117       << 
", tos = 0x" << std::hex << (int) tos
 
  118       << 
" --> tftId = " << tftId;  
 
  165   pf1_1_1.localAddress.Set (
"2.0.0.0");
 
  166   pf1_1_1.remoteMask.Set (0xFF000000);
 
  167   pf1_1_1.localMask.Set (0xFF000000);
 
  168   tft1_1->Add (pf1_1_1);
 
  175   tft1_1->Add (pf1_1_2);
 
  185   pf1_2_1.remotePortEnd   = 1035;
 
  186   tft1_2->
Add (pf1_2_1);
 
  191   tft1_2->
Add (pf1_2_2);
 
  197   tft1_2->
Add (pf1_2_3);
 
  203   tft1_2->
Add (pf1_2_4);
 
  245   c2->
Add (EpcTft::Default (), 1);
 
  281   c3->
Add (EpcTft::Default (), 1);
 
  320   tft4_1->Add (pf1_2_3);  
 
  323   tft4_2->
Add (pf1_2_4);
 
Direction
Indicates the direction of the traffic that is to be classified. 
 
uint8_t Add(PacketFilter f)
add a PacketFilter to the Traffic Flow Template 
 
EpcTftClassifierTestSuite()
 
static EpcTftClassifierTestSuite g_lteTftClassifierTestSuite
 
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
 
void Add(Ptr< EpcTft > tft, uint32_t id)
add a TFT to the Classifier 
 
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name. 
 
uint16_t localPortEnd
end of the port number range of the UE 
 
Ptr< EpcTftClassifier > m_c
 
uint32_t Classify(Ptr< Packet > p, EpcTft::Direction direction)
classify an IP packet 
 
void AddTestCase(TestCase *testCase, enum TestDuration duration)
Add an individual child TestCase to this test suite. 
 
#define NS_TEST_ASSERT_MSG_EQ(actual, limit, msg)
Test that an actual and expected (limit) value are equal and report and abort if not. 
 
Ipv4Mask localMask
IPv4 address mask of the UE. 
 
EpcTftClassifierTestCase(Ptr< EpcTftClassifier > c, EpcTft::Direction d, Ipv4Address sa, Ipv4Address da, uint16_t sp, uint16_t dp, uint8_t tos, uint32_t tftId)
 
#define NS_LOG_LOGIC(msg)
Use NS_LOG to output a message of level LOG_LOGIC. 
 
Ipv4Address remoteAddress
IPv4 address of the remote host. 
 
uint16_t remotePortEnd
end of the port number range of the remote host 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
Ipv4Address localAddress
IPv4 address of the UE. 
 
void Set(uint32_t mask)
input mask is in host order. 
 
static std::string BuildNameString(Ptr< EpcTftClassifier > c, EpcTft::Direction d, Ipv4Address sa, Ipv4Address da, uint16_t sp, uint16_t dp, uint8_t tos, uint32_t tftId)
 
virtual void DoRun(void)
Implementation to actually run this TestCase. 
 
void Set(uint32_t address)
input address is in host order. 
 
Ipv4 addresses are stored in host order in this class. 
 
virtual ~EpcTftClassifierTestCase()
 
Ipv4Mask remoteMask
IPv4 address mask of the remote host. 
 
void AddHeader(const Header &header)
Add header to this packet. 
 
uint16_t remotePortStart
start of the port number range of the remote host 
 
Implement the data structure representing a TrafficFlowTemplate Packet Filter. 
 
uint16_t localPortStart
start of the port number range of the UE