A Discrete-Event Network Simulator
API
cobalt-vs-codel.cc File Reference
#include "ns3/applications-module.h"
#include "ns3/core-module.h"
#include "ns3/internet-module.h"
#include "ns3/ipv6-routing-table-entry.h"
#include "ns3/ipv6-static-routing-helper.h"
#include "ns3/network-module.h"
#include "ns3/point-to-point-module.h"
#include "ns3/tcp-header.h"
#include "ns3/traffic-control-module.h"
#include <fstream>
#include <string>
+ Include dependency graph for cobalt-vs-codel.cc:

Go to the source code of this file.

Functions

void CheckQueueSize (Ptr< QueueDisc > queue, std::string queue_disc_type)
 
static void CwndTrace (Ptr< OutputStreamWrapper > stream, uint32_t oldCwnd, uint32_t newCwnd)
 
void experiment (std::string queue_disc_type)
 
static void TraceCwnd (std::string queue_disc_type)
 

Variables

std::string dir = "MixTraffic/"
 

Function Documentation

◆ CheckQueueSize()

void CheckQueueSize ( Ptr< QueueDisc queue,
std::string  queue_disc_type 
)

Definition at line 46 of file cobalt-vs-codel.cc.

References openflow-switch::app, dir, fPlotQueue, ns3::QueueDisc::GetCurrentSize(), ns3::Time::GetSeconds(), ns3::QueueSize::GetValue(), ns3::Simulator::Now(), ns3::Simulator::Schedule(), and ns3::Seconds().

Referenced by experiment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CwndTrace()

static void CwndTrace ( Ptr< OutputStreamWrapper stream,
uint32_t  oldCwnd,
uint32_t  newCwnd 
)
static

Definition at line 59 of file cobalt-vs-codel.cc.

References ns3::Time::GetSeconds(), ns3::OutputStreamWrapper::GetStream(), and ns3::Simulator::Now().

Referenced by InstallBulkSend(), and TraceCwnd().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ experiment()

void experiment ( std::string  queue_disc_type)

Definition at line 79 of file cobalt-vs-codel.cc.

References ns3::ApplicationContainer::Add(), ns3::TrafficControlHelper::AddInternalQueues(), first::address, CheckQueueSize(), ns3::NodeContainer::Create(), ns3::Simulator::Destroy(), first::devices, dir, ns3::QueueDiscContainer::Get(), ns3::NodeContainer::Get(), ns3::Ipv4InterfaceContainer::GetAddress(), ns3::Ipv4Address::GetAny(), ns3::TcpSocketFactory::GetTypeId(), ns3::UdpSocketFactory::GetTypeId(), ns3::TrafficControlHelper::Install(), ns3::PointToPointHelper::Install(), ns3::BulkSendHelper::Install(), ns3::OnOffHelper::Install(), ns3::PacketSinkHelper::Install(), first::interfaces, nsclick-simple-lan::internet, ns3::Ipv4GlobalRoutingHelper::PopulateRoutingTables(), port, nsclick-simple-lan::remoteAddress, ns3::Simulator::Run(), ns3::Simulator::Schedule(), ns3::Simulator::ScheduleNow(), ns3::Seconds(), ns3::BulkSendHelper::SetAttribute(), ns3::OnOffHelper::SetAttribute(), ns3::PacketSinkHelper::SetAttribute(), ns3::PointToPointHelper::SetChannelAttribute(), ns3::Config::SetDefault(), ns3::PointToPointHelper::SetDeviceAttribute(), ns3::TrafficControlHelper::SetRootQueueDisc(), sink, ns3::ApplicationContainer::Start(), ns3::Simulator::Stop(), ns3::ApplicationContainer::Stop(), stopTime, and TraceCwnd().

Referenced by ns3::DataCollector::DescribeRun(), PrintPsr(), PrintPsrVsCollisionInterval(), PrintPsrVsDistance(), and PrintSizeVsRange().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraceCwnd()

static void TraceCwnd ( std::string  queue_disc_type)
static

Definition at line 65 of file cobalt-vs-codel.cc.

References ns3::Config::ConnectWithoutContext(), ns3::AsciiTraceHelper::CreateFileStream(), CwndTrace(), dir, ns3::MakeBoundCallback(), and nlohmann::to_string().

Referenced by experiment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ dir

std::string dir = "MixTraffic/"

Definition at line 43 of file cobalt-vs-codel.cc.

Referenced by CheckQueueSize(), experiment(), and TraceCwnd().