Глядя на изображение ниже, взятое из книги Ильи Григорика «Высокопроизводительные сети браузера», я могу понять, что пакет SYN выбирает случайный порядковый номер, который увеличивается в пакете SYN ACK (N + 1). Наконец, в пакете ACK увеличиваются и порядковые номера (N + 1), и номера подтверждения (N + 1).
При тестировании с Wireshark я получил пакет ACK с номером подтверждения = N + 1, но Порядковый номер = N. Является ли это ошибкой автора, когда он говорит, что в пакете ACK увеличиваются и порядковые номера, и номера подтверждения?
RFC 793 состояния неоднократно что номер подтверждения - это порядковый номер следующий пакет, который конец ожидает получить. Таким образом, он всегда будет выше порядкового номера.
Например, в разделе 2.6:
Сегменты также несут номер подтверждения, который является порядковым номером следующего ожидаемого октета данных при передаче в обратном направлении.
В разделе 3.1:
Номер подтверждения: 32 бита
Если бит управления ACK установлен, это поле содержит значение следующего порядкового номера, который отправитель сегмента ожидает получить. Как только соединение установлено, оно всегда отправляется.
В разделе 3.3 подробно объясняется, как работают порядковые номера и почему они работают именно так. Вы, вероятно, найдете в ней больше информации, чем ваша книга.