9#include "ns3/internet-stack-helper.h"
10#include "ns3/ipcs-classifier-record.h"
11#include "ns3/ipv4-address-helper.h"
12#include "ns3/ipv4-address.h"
13#include "ns3/ipv4-interface-container.h"
15#include "ns3/net-device-container.h"
16#include "ns3/node-container.h"
17#include "ns3/service-flow.h"
18#include "ns3/simulator.h"
20#include "ns3/wimax-helper.h"
37 void DoRun()
override;
47 :
TestCase(
"Test the 2 different schedulers")
79 stack.Install(bsNodes);
80 stack.Install(ssNodes);
83 address.SetBase(
"10.1.1.0",
"255.255.255.0");
169 void DoRun()
override;
179 :
TestCase(
"Test the service flow scheduling types")
197 ssDevs = wimax.
Install(ssNodes,
201 bsDevs = wimax.
Install(bsNodes,
211 stack.Install(bsNodes);
212 stack.Install(ssNodes);
215 address.SetBase(
"10.1.1.0",
"255.255.255.0");
Ns3 Wimax QoS Test Suite.
Ns3 Wimax SF Type Test Case.
void DoRun() override
Implementation to actually run this TestCase.
~Ns3WimaxSFTypeTestCase() override
bool DoRunOnce(ServiceFlow::SchedulingType schedulingType)
Run once function.
Ns3 Wimax Scheduling Test Case.
~Ns3WimaxSchedulingTestCase() override
Ns3WimaxSchedulingTestCase()
bool DoRunOnce(WimaxHelper::SchedulerType scheduler)
Run once function.
void DoRun() override
Implementation to actually run this TestCase.
aggregate IP/TCP/UDP functionality to existing Nodes.
IpcsClassifierRecord class.
A helper class to make life easier while doing simple IPv4 address assignment in scripts.
Ipv4 addresses are stored in host order in this class.
holds a vector of std::pair of Ptr<Ipv4> and interface index.
Ipv4Address GetAddress(uint32_t i, uint32_t j=0) const
a class to represent an Ipv4 address mask
holds a vector of ns3::NetDevice pointers
Ptr< NetDevice > Get(uint32_t i) const
Get the Ptr<NetDevice> stored in this container at a given index.
keep track of a set of node pointers.
void Create(uint32_t n)
Create n nodes and append pointers to them to the end of this NodeContainer.
This class implements service flows as described by the IEEE-802.16 standard.
SchedulingType
section 11.13.11 Service flow scheduling type, page 701
static void Destroy()
Execute the events scheduled with ScheduleDestroy().
static void Run()
Run the simulation.
static void Stop()
Tell the Simulator the calling event should be the last one executed.
SubscriberStationNetDevice subclass of WimaxNetDevice.
void AddTestCase(TestCase *testCase, Duration duration=Duration::QUICK)
Add an individual child TestCase to this test suite.
helps to manage and create WimaxNetDevice objects
SchedulerType
Scheduler Type Different implementations of uplink/downlink scheduler.
@ SCHED_TYPE_RTPS
A simple scheduler - rtPS based scheduler.
@ SCHED_TYPE_SIMPLE
A simple priority-based FCFS scheduler.
@ DEVICE_TYPE_SUBSCRIBER_STATION
Subscriber station(SS) device.
@ DEVICE_TYPE_BASE_STATION
Base station(BS) device.
NetDeviceContainer Install(NodeContainer c, NetDeviceType type, PhyType phyType, SchedulerType schedulerType)
ServiceFlow CreateServiceFlow(ServiceFlow::Direction direction, ServiceFlow::SchedulingType schedulingType, IpcsClassifierRecord classifier)
Creates a transport service flow.
@ MODULATION_TYPE_QAM16_12
Time Seconds(double value)
Construct a Time in the indicated unit.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
static Ns3WimaxQoSTestSuite ns3WimaxQoSTestSuite
the test suite