Строка отправляется не как два сегмента, а как два отдельных пакета - PullRequest
0 голосов
/ 10 июля 2020

Я пытаюсь воспроизвести прослушанный TCP-пакет через Python. Проблема в том, что пакет, который я получаю и пытаюсь воспроизвести, фрагментирован. Когда я нюхаю его, я получаю строку длиной> 1500, поэтому она не помещается в один MTU в моем сетевом стеке. Wireshark также отмечает его как фрагментированный и автоматически собирает пакет заново.

Проблема в том, что когда я хочу отправить именно эту строку, она почему-то не помечается как фрагментированная, а отправляется как два отдельных TCP-пакета. В настоящее время я понимаю, что максимальный размер TCP-пакета составляет 64 КБ, поэтому его следует отправлять не двумя отдельными TCP-пакетами, а одним, но почему-то это не так.

Кроме того, с помощью Wireshark исходный пакет собирается заново, а новый, отправленный - нет, так как он также распознается как два разных пакета.

Может ли кто-нибудь подсказать мне, что здесь может быть не так? Спасибо за любую помощь!

...