26 #include "ns3/tcp-congestion-ops.h" 27 #include "ns3/tcp-socket-base.h" 28 #include "ns3/tcp-lp.h" 41 uint32_t segmentsAcked,uint32_t ssThresh,
Time rtt,
const std::string &name);
44 virtual void DoRun (
void);
55 uint32_t segmentsAcked, uint32_t ssThresh,
Time rtt,
const std::string &name)
58 m_segmentSize (segmentSize),
59 m_ssThresh (ssThresh),
60 m_segmentsAcked (segmentsAcked),
76 m_state = CreateObject <TcpSocketState> ();
98 "cWnd has not updated correctly");
108 uint32_t segmentsAcked,
Time rtt,
const std::string &name);
111 virtual void DoRun (
void);
122 uint32_t segmentsAcked,
Time rtt,
const std::string &name)
125 m_segmentSize (segmentSize),
126 m_segmentsAcked (segmentsAcked),
142 m_state = CreateObject <TcpSocketState> ();
159 "cWnd has not updated correctly");
169 uint32_t segmentsAcked,
Time rtt,
const std::string &name);
172 virtual void DoRun (
void);
185 m_segmentSize (segmentSize),
186 m_segmentsAcked (segmentsAcked),
202 m_state = CreateObject <TcpSocketState> ();
223 "cWnd has not updated correctly");
Testing the behaviour common to New Reno.
uint32_t m_rcvTimestampValue
Receiver Timestamp value.
Simulation virtual time values and global simulation resolution.
Ptr< TcpSocketState > m_state
uint32_t m_rcvTimestampEchoReply
Sender Timestamp echoed by the receiver.
static void Run(void)
Run the simulation.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Time MilliSeconds(uint64_t value)
Construct a Time in the indicated unit.
uint32_t m_segmentSize
Segment size.
TcpLpToNewReno(uint32_t cWnd, uint32_t segmentSize, uint32_t segmentsAcked, uint32_t ssThresh, Time rtt, const std::string &name)
TcpLpInferenceTest2(uint32_t cWnd, uint32_t segmentSize, uint32_t segmentsAcked, Time rtt, const std::string &name)
Ptr< TcpSocketState > m_state
static EventId Schedule(Time const &delay, MEM mem_ptr, OBJ obj)
Schedule an event to expire after delay.
void AddTestCase(TestCase *testCase, TestDuration duration=QUICK)
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.
ns3::TcpLpTestSuite g_tcplpTest
TracedValue< uint32_t > m_ssThresh
Slow start threshold.
static void Destroy(void)
Execute the events scheduled with ScheduleDestroy().
Every class exported by the ns3 library is enclosed in the ns3 namespace.
virtual void DoRun(void)
Implementation to actually run this TestCase.
Ptr< TcpSocketState > m_state
TracedValue< uint32_t > m_cWnd
Congestion window.
Testing TcpLp when owd exceeds threshold.
T Get(void) const
Get the underlying value.
Time Seconds(double value)
Construct a Time in the indicated unit.
TcpLpInferenceTest1(uint32_t cWnd, uint32_t segmentSize, uint32_t segmentsAcked, Time rtt, const std::string &name)
virtual void DoRun(void)
Implementation to actually run this TestCase.
virtual void DoRun(void)
Implementation to actually run this TestCase.
This test suite implements a Unit Test.
Testing TcpLp when it is inference phase.