An implementation of a stream socket using TCP.
This class contains an RFC793 implementation of TCP, as well as a sockets interface for talking to TCP. This serves as a base for other TCP functions where the sliding window mechanism is handled here. This class provides connection orientation and sliding window flow control.
This method returns the TypeId associated to ns3::TcpRfc793.
This object is accessible through the following paths with Config::Set and Config::Connect:
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::Ipv4L4Protocol/$ns3::TcpL4Protocol/SocketList/[i]/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::TcpL4Protocol/SocketList/[i]/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::TcpSocket/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::TcpSocket/$ns3::TcpSocketBase/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::TcpSocketBase/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::Ipv4L4Protocol/$ns3::TcpL4Protocol/SocketList/[i]/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::TcpL4Protocol/SocketList/[i]/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::TcpSocket/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::TcpSocket/$ns3::TcpSocketBase/$ns3::TcpRfc793
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::TcpSocketBase/$ns3::TcpRfc793
No Attributes defined for this type.
Attributes defined in parent class ns3::TcpSocketBase:
-
MaxSegLifetime: Maximum segment lifetime in seconds, use for TIME_WAIT state transition to CLOSED state
-
Set with class: ns3::DoubleValue
-
Underlying type: double 0:1.79769e+308
-
Initial value: 120
-
Flags: construct write read
-
MaxWindowSize: Max size of advertised window
Attributes defined in parent class ns3::TcpSocket:
-
SndBufSize: TcpSocket maximum transmit buffer size (bytes)
-
RcvBufSize: TcpSocket maximum receive buffer size (bytes)
-
SegmentSize: TCP maximum segment size in bytes (may be adjusted based on MTU discovery)
-
SlowStartThreshold: TCP slow start threshold (bytes)
-
InitialCwnd: TCP initial congestion window size (segments)
-
ConnTimeout: TCP retransmission timeout when opening connection (seconds)
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: +3000000000.0ns
-
Flags: construct write read
-
ConnCount: Number of connection attempts (SYN retransmissions) before returning failure
-
DelAckTimeout: Timeout value for TCP delayed acks, in seconds
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: +200000000.0ns
-
Flags: construct write read
-
DelAckCount: Number of packets to wait before sending a TCP ack
-
TcpNoDelay: Set to true to disable Nagle's algorithm
-
Set with class: BooleanValue
-
Underlying type: bool
-
Initial value: true
-
Flags: construct write read
-
PersistTimeout: Persist timeout to probe for rx window
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: +6000000000.0ns
-
Flags: construct write read
No TraceSources defined for this type.
TraceSources defined in parent class ns3::TcpSocketBase:
-
RTO: Retransmission timeout
-
RTT: Last RTT sample
-
NextTxSequence: Next sequence number to send (SND.NXT)
-
HighestSequence: Highest sequence number ever sent in socket's life time
-
State: TCP state
-
RWND: Remote side's flow control window
Reimplemented from ns3::TcpSocketBase.
References ns3::TypeId::SetParent().