Я работаю над добавлением функциональности jumbo frame в мое приложение. Моя проблема в том, что я не получаю ACK для кадров с полезной нагрузкой выше 2000 байтов. Моя система выглядит следующим образом: сервер отправляет запрошенное время измерения клиенту. Серверная сторона представляет собой процессор ARM с lwip-реализацией стека tcp/ip и с включенной поддержкой больших кадров. Клиентская сторона - это сценарий Python на моем ПК с сетевым интерфейсом, на котором включены Jumbo-кадры.
С конфигурацией как выше и полезной нагрузкой выше по умолчанию система 1460 работает отлично. Я работаю с полезной нагрузкой в 2000 байт без проблем. MSS на стороне клиента - 9158, WIN 64320. На стороне сервера: MSS 2000 и WIN 8000. Тем не менее, когда я увеличиваю MSS на стороне сервера выше 2000 байт, связь падает. На Wireshark я вижу, что первый кадр длиной более 2000 не получает подтверждения от клиента (со стороны ПК), и повторные передачи начинаются.
Буду благодарен за любые советы опытных пользователей. Мне кажется, что гигантский фрейм не должен быть проблемой, так как я работаю намного больше стандартного размера полезной нагрузки Ethernet без проблем.
Ссылка на облачную акулу (с tcp-фильтром): https://www.cloudshark.org/captures/5bf2180b65cf?filter=tcp
Заранее спасибо.