12 votes
Accepted

How exactly does TCP react to a retransmission timeout?

What happens at the time-out is actually pretty clear from the drawing... The congestion window size drops back to its original value of 1 and slow start is run again. The specifics of how a TCP ...
user avatar
  • 4,631
8 votes
Accepted

What is a token in token bucket?

The concept of a token bucket is generic/universal, but the implementations for QoS may use different token units to control traffic flow at a specified rate. In Cisco traffic policing (the most ...
user avatar
7 votes
Accepted

Why only after 3-duplicate ACK retransmission takes place in TCP?

You're referring to 'Fast Retransmit' in the TCP Reno implementation. It is basically an assumption. RFC 2001, TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms ...
user avatar
  • 809
6 votes

What if someone doesn't implement congestion control?

Congestion control enforced by TCP clients is not there to protect the network, it's simply to try determine the maximum network resource that is reliably available for that specific client at that ...
user avatar
  • 161
5 votes

Why are both flow control and congestion control procedures required in a TCP connection?

In short: Flow control makes sure that the receiver is never overloaded with more data it can handle whereas congestion control is used to avoid congesting the network between sender and receiver. ...
user avatar
  • 151
5 votes
Accepted

BGP: Route congestion

In theory, the answer is yes, but based on your diagram and description, the practical answer is NO. The problem is you can control your outbound traffic, but you have little control over your ...
user avatar
  • 63k
5 votes
Accepted

QoS shaper, shapes traffic without dropping packets?

How does my policy manage to shape traffic to the requested size without dropping packets? ... Tunnel traffic remains 10Mbps and still a few packets in queue but no drops… Your C-class FTP ...
user avatar
5 votes
Accepted

TCP Congestion Control, Sender window = minimum ( Congestion window, Receiver window)

The receive window is maintained by the receiver and indicates how much buffer space has to be receiving more segments (from any senders). So a sender would want to take that into account when setting ...
user avatar
4 votes
Accepted

What is the maximum value that a receiver can set in its advertising window

The Window Size field in each TCP header indicates the amount of empty space, in bytes, remaining in the receive buffer. The field is 16 bits in TCP, but with the Windows Scale option, values larger ...
user avatar
  • 536
4 votes
Accepted

Why does throughput (consumed BW) increase when the packet error rate is increased in the TCP?

Errors in transmission are detected in TCP layer. The receiving TCP layer discards the damaged segment, forcing the sender to sent the segment again.
user avatar
  • 4,427
4 votes

Will a network congestion occur if I use a single ADSL router connected to 24 port switch

The Ethernet connections are full duplex, and in this sense there shouldn't be usually problem on a path from end user to switch, and in most of the time, from switch to ADSL router. However, ...
user avatar
4 votes

What if someone doesn't implement congestion control?

What will happen if the sender decides not to listen to the congestion control messages and continues sending packets at a high rate anyway? I would argue that a sender refusing to abide by ...
user avatar
  • 5,449
4 votes
Accepted

What is congestion collapse?

To start off I'm going to first ask you to ignore queueing. Imagine that routers in the following text have no queues at all. It is possible to understand congestion without bringing queues into the ...
user avatar
  • 2,396
4 votes

Relationship between TCP window size and TCP congestion control

The first thing to realize is that the TCP window size and the round-trip time (RTT) limit the throughput: no more than one window size per RTT can be transported. Essentially, with a large RTT (...
user avatar
  • 71.6k
4 votes

How is congestion avoided when using UDP?

UDP does not provide any congestion control, control of packet loss, duplication, reordering ... . All of this has to be implemented at the application level and each protocol might handle this ...
user avatar
3 votes

When should TCP send a cumulative acknowledgement?

I recommend reading RFC 1122 "Requirements for Internet Hosts -- Communication Layers", section 4.2.3.2 "When to Send an ACK Segment", and follow up from there. https://www.rfc-...
user avatar
  • 15.9k
3 votes

Latency in P2P Circuit

This is to be expected if your routers are filling the buffers. If you are using ping to test this, understand that ping has the lowest priority. Depending on your traffic mix, you may want to use ...
user avatar
  • 94.1k
3 votes

What if someone doesn't implement congestion control?

To add to Ryan Foley's and iTom's great answers, I just wanted to mention a quick note from a non malicious or compromised host perspective. In TCP, any packet that didn't make it through must be re-...
user avatar
  • 14k
3 votes
Accepted

Is a high TCP retransmittal % a conclusive indication of congestion?

High re-transmission percentage is a definitive sign of something being wrong. But unfortunately it isn't always a direct sign that congestion is the issue. If you could provide some packet captures,...
user avatar
  • 14k
3 votes

TCP flow control active waiting

Why is an active waiting mechanism employed here, instead of having the receiver just notify the sender that its buffer is no longer full? To prevent a deadlock. Consider your scenario, where the ...
user avatar
  • 63k
3 votes
Accepted

Latency between a churn and congestion event triggered in the TCP code

basically you are correct. packet losses are discovered either by 3 (or more) duplicate ACKs or by a retransmission timeout. The former should happen in about one RTT, provided that there are enough ...
user avatar
  • 1,355
3 votes

Does window size in tcp header include tcp header size?

No, the receive window refers to payload data only. It excludes any TCP headers. Case 2 is correct. Note that segment does include the TCP header. See RFC 793 for the TCP protocol standard.
user avatar
  • 71.6k
3 votes
Accepted

How is congestion avoided when using UDP?

In addition to Steffen's fine answer perhaps more direct replies: how applications can determine: How many UDP datagrams can be sent at once They can't. Neither IP nor UDP provide any mechanism to ...
user avatar
  • 71.6k
2 votes

Why are both flow control and congestion control procedures required in a TCP connection?

Flow control is used to help prevent overloading the receiver with too much data. Flow control uses a sliding window in which the receiver states how much they are able to receive and buffer so that ...
user avatar
  • 538
2 votes

What is available to prevent a few ports/clients from congesting the network?

There are many ways of addressing this and which one you choose can be dependent on the situation. Let me go over some of the more common ones. Quality of Service (aka QoS) - this could include rate ...
user avatar
  • 26.8k
2 votes

What is available to prevent a few ports/clients from congesting the network?

There are a few ways of setting a limit on single user bandwidth consumption. It isn’t very common for an individual to seriously affect your entire network unless they genuinely have malicious ...
user avatar
  • 5,449
2 votes
Accepted

Using StreamSocket() mrthod of Scapy to send ECN enabled TCP packets

When using a StreamSocket, the packets sent are sent over the TCP connection. In Scapy notation, when you type serverstream.sr(IP(src='a.a.a.a',dst='b.b.b.b')/TCP(flags=0x050)) (BTW, you can replace ...
user avatar
  • 136
2 votes

How can a TCP Flow with smaller congestion window have higher throughput?

With TCP throughput, there are a lot of factors which come into play. For instance, when the window is larger on a single link, congestion along the link could be a bigger factor. Because of ...
user avatar
  • 94.1k
2 votes

Congestion control in combination with streaming a video

The codec, the format, and the underlying network determine the quality of the video played out to your viewport/monitor. In case of adaptive bitrate streaming, this quality may change mid stream as ...
user avatar

Only top scored, non community-wiki answers of a minimum length are eligible