3 ms·
I think the more important question is why TCP only using positive acknowledgement (ACK) but not negative acknowledgement (NACK)?
by teleforce 2y ago
I think the more important question is why TCP only using positive acknowledgement (ACK) but not negative acknowledgement (NACK)?
- toast0 2y agoSelective acknowledgement (SACK) effectively indicates which sequence numbers are missing when there's packet loss. It's optional, but afaik, used by nearly everything on today's internet.
- keeperofdakeys 2y agoWhat would a NACK add? TCP can already send an ACK for the last successful sequence number, telling the sender to retransmit packets after that sequence number. Due to latency and large window sizes, it's far more efficient to just resend all the data than NACK individual packets.
- retSava 2y agoPerhaps GP considers a NACK more semantically easier to understand on an intuitive level, instead of the implicit NACK with "I know you sent 8, but we're really at 4 so resume from that". But I do agree that it's more efficient for the remote host to just immediately establish "4 was the last point we are ok at".
- ay 2y agoIt is not possible to distinguish between the absence of negative ACK and the loss of it.