tcp: Forward declare as much as possible

This commit is contained in:
Natale Patriciello
2018-05-15 22:18:27 +02:00
parent a84299a985
commit d2298f36df
16 changed files with 31 additions and 13 deletions

View File

@@ -20,7 +20,6 @@
#define TCPCONGESTIONOPS_H
#include "ns3/tcp-socket-base.h"
#include "ns3/tcp-recovery-ops.h"
namespace ns3 {

View File

@@ -24,6 +24,7 @@
#include "tcp-option-sack-permitted.h"
#include "ns3/log.h"
#include "ns3/tcp-header.h"
namespace ns3 {

View File

@@ -25,7 +25,9 @@
#include "ns3/object.h"
namespace ns3 {
class TcpSocketState;
/**
* \ingroup tcp
* \defgroup recoveryOps Recovery Algorithms.

View File

@@ -48,6 +48,9 @@
#include "ipv4-end-point.h"
#include "ipv6-end-point.h"
#include "ipv6-l3-protocol.h"
#include "tcp-tx-buffer.h"
#include "tcp-rx-buffer.h"
#include "rtt-estimator.h"
#include "tcp-header.h"
#include "tcp-option-winscale.h"
#include "tcp-option-ts.h"

View File

@@ -31,10 +31,6 @@
#include "ns3/sequence-number.h"
#include "ns3/data-rate.h"
#include "ns3/node.h"
#include "tcp-rx-buffer.h"
#include "tcp-tx-buffer.h"
#include "rtt-estimator.h"
#include "tcp-l4-protocol.h"
namespace ns3 {
@@ -1225,16 +1221,16 @@ protected:
// Connections to other layers of TCP/IP
Ipv4EndPoint* m_endPoint {nullptr}; //!< the IPv4 endpoint
Ipv6EndPoint* m_endPoint6 {nullptr}; //!< the IPv6 endpoint
Ptr<Node> m_node {nullptr}; //!< the associated node
Ptr<TcpL4Protocol> m_tcp {nullptr}; //!< the associated TCP L4 protocol
Ptr<Node> m_node; //!< the associated node
Ptr<TcpL4Protocol> m_tcp; //!< the associated TCP L4 protocol
Callback<void, Ipv4Address,uint8_t,uint8_t,uint8_t,uint32_t> m_icmpCallback; //!< ICMP callback
Callback<void, Ipv6Address,uint8_t,uint8_t,uint8_t,uint32_t> m_icmpCallback6; //!< ICMPv6 callback
Ptr<RttEstimator> m_rtt {nullptr}; //!< Round trip time estimator
Ptr<RttEstimator> m_rtt; //!< Round trip time estimator
// Rx and Tx buffer management
Ptr<TcpRxBuffer> m_rxBuffer {nullptr}; //!< Rx buffer (reordering buffer)
Ptr<TcpTxBuffer> m_txBuffer {nullptr}; //!< Tx buffer
Ptr<TcpRxBuffer> m_rxBuffer; //!< Rx buffer (reordering buffer)
Ptr<TcpTxBuffer> m_txBuffer; //!< Tx buffer
// State-related attributes
TracedValue<TcpStates_t> m_state {CLOSED}; //!< TCP state
@@ -1271,9 +1267,9 @@ protected:
bool m_limitedTx {true}; //!< perform limited transmit
// Transmission Control Block
Ptr<TcpSocketState> m_tcb {nullptr}; //!< Congestion control informations
Ptr<TcpCongestionOps> m_congestionControl {nullptr}; //!< Congestion control
Ptr<TcpRecoveryOps> m_recoveryOps {nullptr}; //!< Recovery Algorithm
Ptr<TcpSocketState> m_tcb; //!< Congestion control informations
Ptr<TcpCongestionOps> m_congestionControl; //!< Congestion control
Ptr<TcpRecoveryOps> m_recoveryOps; //!< Recovery Algorithm
// Guesses over the other connection end
bool m_isFirstPartialAck {true}; //!< First partial ACK during RECOVERY

View File

@@ -22,6 +22,7 @@
#include "ns3/log.h"
#include "tcp-error-model.h"
#include "ns3/random-variable-stream.h"
#include "ns3/tcp-rx-buffer.h"
using namespace ns3;

View File

@@ -20,6 +20,7 @@
#include "tcp-general-test.h"
#include "ns3/node.h"
#include "ns3/log.h"
#include "ns3/tcp-header.h"
using namespace ns3;

View File

@@ -28,6 +28,11 @@
#include "ns3/tcp-l4-protocol.h"
#include "../model/ipv4-end-point.h"
#include "../model/ipv6-end-point.h"
#include "ns3/tcp-header.h"
#include "ns3/tcp-tx-buffer.h"
#include "ns3/tcp-rx-buffer.h"
#include "ns3/rtt-estimator.h"
#include "tcp-general-test.h"
using namespace ns3;

View File

@@ -20,6 +20,7 @@
#include "tcp-general-test.h"
#include "ns3/node.h"
#include "ns3/log.h"
#include "ns3/tcp-header.h"
using namespace ns3;

View File

@@ -21,6 +21,7 @@
#include "ns3/log.h"
#include "ns3/tcp-westwood.h"
#include "ns3/simple-channel.h"
#include "ns3/rtt-estimator.h"
#include "tcp-general-test.h"
#include "tcp-error-model.h"

View File

@@ -20,6 +20,7 @@
#include "tcp-general-test.h"
#include "ns3/node.h"
#include "ns3/log.h"
#include "ns3/rtt-estimator.h"
#include "tcp-error-model.h"
using namespace ns3;

View File

@@ -21,6 +21,7 @@
#include "ns3/node.h"
#include "ns3/log.h"
#include "ns3/tcp-option-sack-permitted.h"
#include "ns3/tcp-header.h"
using namespace ns3;

View File

@@ -22,6 +22,7 @@
#include "ns3/node.h"
#include "ns3/config.h"
#include "ns3/tcp-westwood.h"
#include "ns3/tcp-header.h"
#include "tcp-general-test.h"
using namespace ns3;

View File

@@ -21,6 +21,7 @@
#include "ns3/node.h"
#include "ns3/log.h"
#include "ns3/tcp-option-ts.h"
#include "ns3/tcp-header.h"
using namespace ns3;

View File

@@ -21,6 +21,9 @@
#include "tcp-general-test.h"
#include "ns3/node.h"
#include "ns3/log.h"
#include "ns3/tcp-header.h"
#include "ns3/tcp-tx-buffer.h"
#include "ns3/tcp-rx-buffer.h"
using namespace ns3;

View File

@@ -39,6 +39,7 @@
#include "ns3/pointer.h"
#include "ns3tcp-socket-writer.h"
#include "ns3/tcp-westwood.h"
#include "ns3/tcp-header.h"
using namespace ns3;