Что произойдет, если потерян TCP RST?
Насколько я понимаю, если отправляется TCP RST, отправитель (A) закрывает сокет и соединение закрывается в его конце. Теперь, поскольку RST потерян, предполагаемый получатель (B) еще не знает об отправленном RST. Если теперь B попытается отправить больше данных A, как отреагирует A и какой ответ получит B?
1 ответ
Насколько я понимаю, если отправляется TCP RST, отправитель (A) закрывает сокет
Нет. Отправитель уже закрыл сокет, или, возможно, соединение вообще никогда не существовало. Затем что-то пришло для связи, затем был выпущен RST. [Близко к тому, чтобы выпустить RST, но это нечасто и нежелательно.]
и соединение закрыто в его конце.
Уже, если это когда-либо существовало.
Теперь, поскольку RST потерян, предполагаемый получатель (B) еще не знает об отправленном RST. Если теперь B попытается отправить больше данных A, как отреагирует A и какой ответ получит B?
Это ничем не отличается от исходной ситуации. Нет соединения для доставки данных, поэтому выдается RST.