A Discrete-Event Network Simulator
API
tcp-variants-comparison.cc File Reference
#include <iostream>
#include <fstream>
#include <string>
#include "ns3/core-module.h"
#include "ns3/network-module.h"
#include "ns3/internet-module.h"
#include "ns3/point-to-point-module.h"
#include "ns3/applications-module.h"
#include "ns3/error-model.h"
#include "ns3/tcp-header.h"
#include "ns3/udp-header.h"
#include "ns3/enum.h"
#include "ns3/event-id.h"
#include "ns3/flow-monitor-helper.h"
#include "ns3/ipv4-global-routing-helper.h"
#include "ns3/traffic-control-module.h"
+ Include dependency graph for tcp-variants-comparison.cc:

Go to the source code of this file.

Functions

static void CwndTracer (uint32_t oldval, uint32_t newval)
 
static void InFlightTracer (uint32_t old, uint32_t inFlight)
 
static void NextRxTracer (SequenceNumber32 old, SequenceNumber32 nextRx)
 
static void NextTxTracer (SequenceNumber32 old, SequenceNumber32 nextTx)
 
static void RtoTracer (Time oldval, Time newval)
 
static void RttTracer (Time oldval, Time newval)
 
static void SsThreshTracer (uint32_t oldval, uint32_t newval)
 
static void TraceCwnd (std::string cwnd_tr_file_name)
 
static void TraceInFlight (std::string &in_flight_file_name)
 
static void TraceNextRx (std::string &next_rx_seq_file_name)
 
static void TraceNextTx (std::string &next_tx_seq_file_name)
 
static void TraceRto (std::string rto_tr_file_name)
 
static void TraceRtt (std::string rtt_tr_file_name)
 
static void TraceSsThresh (std::string ssthresh_tr_file_name)
 

Variables

static Ptr< OutputStreamWrappercWndStream
 
static uint32_t cWndValue
 
static bool firstCwnd = true
 
static bool firstRto = true
 
static bool firstRtt = true
 
static bool firstSshThr = true
 
static Ptr< OutputStreamWrapperinFlightStream
 
static Ptr< OutputStreamWrappernextRxStream
 
static Ptr< OutputStreamWrappernextTxStream
 
static Ptr< OutputStreamWrapperrtoStream
 
static Ptr< OutputStreamWrapperrttStream
 
static Ptr< OutputStreamWrapperssThreshStream
 
static uint32_t ssThreshValue
 

Function Documentation

◆ CwndTracer()

static void CwndTracer ( uint32_t  oldval,
uint32_t  newval 
)
static

Definition at line 74 of file tcp-variants-comparison.cc.

References cWndStream, cWndValue, firstCwnd, firstSshThr, ns3::Time::GetSeconds(), ns3::OutputStreamWrapper::GetStream(), ns3::Simulator::Now(), ssThreshStream, and ssThreshValue.

Referenced by TraceCwnd().

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

◆ InFlightTracer()

static void InFlightTracer ( uint32_t  old,
uint32_t  inFlight 
)
static

Definition at line 137 of file tcp-variants-comparison.cc.

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

Referenced by TraceInFlight().

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

◆ NextRxTracer()

static void NextRxTracer ( SequenceNumber32  old,
SequenceNumber32  nextRx 
)
static

Definition at line 144 of file tcp-variants-comparison.cc.

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

Referenced by TraceNextRx().

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

◆ NextTxTracer()

static void NextTxTracer ( SequenceNumber32  old,
SequenceNumber32  nextTx 
)
static

Definition at line 130 of file tcp-variants-comparison.cc.

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

Referenced by TraceNextTx().

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

◆ RtoTracer()

static void RtoTracer ( Time  oldval,
Time  newval 
)
static

Definition at line 119 of file tcp-variants-comparison.cc.

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

Referenced by TraceRto().

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

◆ RttTracer()

static void RttTracer ( Time  oldval,
Time  newval 
)
static

Definition at line 108 of file tcp-variants-comparison.cc.

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

Referenced by TraceRtt().

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

◆ SsThreshTracer()

static void SsThreshTracer ( uint32_t  oldval,
uint32_t  newval 
)
static

Definition at line 91 of file tcp-variants-comparison.cc.

References cWndStream, cWndValue, firstCwnd, firstSshThr, ns3::Time::GetSeconds(), ns3::OutputStreamWrapper::GetStream(), ns3::Simulator::Now(), ssThreshStream, and ssThreshValue.

Referenced by TraceSsThresh().

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

◆ TraceCwnd()

static void TraceCwnd ( std::string  cwnd_tr_file_name)
static

Definition at line 151 of file tcp-variants-comparison.cc.

References ns3::Config::ConnectWithoutContext(), ns3::AsciiTraceHelper::CreateFileStream(), cWndStream, CwndTracer(), and ns3::MakeCallback().

+ Here is the call graph for this function:

◆ TraceInFlight()

static void TraceInFlight ( std::string &  in_flight_file_name)
static

◆ TraceNextRx()

static void TraceNextRx ( std::string &  next_rx_seq_file_name)
static

◆ TraceNextTx()

static void TraceNextTx ( std::string &  next_tx_seq_file_name)
static

◆ TraceRto()

static void TraceRto ( std::string  rto_tr_file_name)
static

Definition at line 175 of file tcp-variants-comparison.cc.

References ns3::Config::ConnectWithoutContext(), ns3::AsciiTraceHelper::CreateFileStream(), ns3::MakeCallback(), rtoStream, and RtoTracer().

+ Here is the call graph for this function:

◆ TraceRtt()

static void TraceRtt ( std::string  rtt_tr_file_name)
static

Definition at line 167 of file tcp-variants-comparison.cc.

References ns3::Config::ConnectWithoutContext(), ns3::AsciiTraceHelper::CreateFileStream(), ns3::MakeCallback(), rttStream, and RttTracer().

+ Here is the call graph for this function:

◆ TraceSsThresh()

static void TraceSsThresh ( std::string  ssthresh_tr_file_name)
static

Variable Documentation

◆ cWndStream

Ptr<OutputStreamWrapper> cWndStream
static

Definition at line 62 of file tcp-variants-comparison.cc.

Referenced by CwndTracer(), SsThreshTracer(), and TraceCwnd().

◆ cWndValue

uint32_t cWndValue
static

Definition at line 69 of file tcp-variants-comparison.cc.

Referenced by CwndTracer(), and SsThreshTracer().

◆ firstCwnd

bool firstCwnd = true
static

Definition at line 58 of file tcp-variants-comparison.cc.

Referenced by CwndTracer(), and SsThreshTracer().

◆ firstRto

bool firstRto = true
static

Definition at line 61 of file tcp-variants-comparison.cc.

Referenced by RtoTracer().

◆ firstRtt

bool firstRtt = true
static

Definition at line 60 of file tcp-variants-comparison.cc.

Referenced by RttTracer().

◆ firstSshThr

bool firstSshThr = true
static

Definition at line 59 of file tcp-variants-comparison.cc.

Referenced by CwndTracer(), and SsThreshTracer().

◆ inFlightStream

Ptr<OutputStreamWrapper> inFlightStream
static

Definition at line 68 of file tcp-variants-comparison.cc.

Referenced by InFlightTracer(), and TraceInFlight().

◆ nextRxStream

Ptr<OutputStreamWrapper> nextRxStream
static

Definition at line 67 of file tcp-variants-comparison.cc.

Referenced by NextRxTracer(), and TraceNextRx().

◆ nextTxStream

Ptr<OutputStreamWrapper> nextTxStream
static

Definition at line 66 of file tcp-variants-comparison.cc.

Referenced by NextTxTracer(), and TraceNextTx().

◆ rtoStream

Ptr<OutputStreamWrapper> rtoStream
static

Definition at line 65 of file tcp-variants-comparison.cc.

Referenced by RtoTracer(), and TraceRto().

◆ rttStream

Ptr<OutputStreamWrapper> rttStream
static

Definition at line 64 of file tcp-variants-comparison.cc.

Referenced by RttTracer(), and TraceRtt().

◆ ssThreshStream

Ptr<OutputStreamWrapper> ssThreshStream
static

Definition at line 63 of file tcp-variants-comparison.cc.

Referenced by CwndTracer(), SsThreshTracer(), and TraceSsThresh().

◆ ssThreshValue

uint32_t ssThreshValue
static

Definition at line 70 of file tcp-variants-comparison.cc.

Referenced by CwndTracer(), and SsThreshTracer().