John
John

Reputation: 1129

Will a packet with an invalid ACK number be dropped by the receiving side?

I have read that if a packet in TCP does not have a valid sequence number, then the packet will be dropped by the receiving side.

But what if the packet have a valid sequence number but have an invalid ACK number, will the packet also be dropped by the receiving side?

Upvotes: 0

Views: 1370

Answers (3)

Nuwan Wolters
Nuwan Wolters

Reputation: 1

There could be a situation where packets are duplicated due to Network Load ballancers without using IGMP snooping, were somehow in a complex network a duplicated packet is not dropped, while it was picked up by one of the nodes that handles the Load-ballancing traffic. When that packet, due to routing issues, is delayed and still delivered, it could trigger a error message (almost false positive) like this.

Upvotes: 0

czhuang
czhuang

Reputation: 11

I suspect these statements are wrong.

As we know, duplicate ACKs play a significant role in TCP congestion control. According to what you said, TCP would respond with RST upon receiving a duplicate ACK. That is simply not the case.

There are more reasonable use cases to contradict the following statements.

If the ACK isn't within the window, the host will respond with a reset to indicate that it has no notion of there being a connection with these "keys", where the keys are source, destination, source port, destination port, sequence numbers.

Upvotes: 0

David Hoelzer
David Hoelzer

Reputation: 16381

There's really no such thing as an "invalid" acknowledgement number. If you mean that the number doesn't fall within the window (the advertised memory buffer of the host), that's a different question.

If the ACK isn't within the window, the host will respond with a reset to indicate that it has no notion of there being a connection with these "keys", where the keys are source, destination, source port, destination port, sequence numbers.

Upvotes: 1

Related Questions