Информация об изменениях

Сообщение Re: Максимальная длина TCP пакета в сети от 10.02.2020 16:10

Изменено 10.02.2020 16:15 vsb

Re: Максимальная длина TCP пакета в сети
Здравствуйте, AlexGin, Вы писали:

AG>Имеется вот нейкая сетевая структура, где сервер и клиент связаны по TCP.

AG>Межде сервером и клиентом поддерживается постоянное соединение (OS: Linux Ubuntu).
AG>Предполагается, что эти сервер и клиент — отдельные машинки локальной сети.

AG>Вопрос: какова максимальная длина пакета, который НЕ будет разбиваться сетью на более мелкие пакеты?


TCP не оперирует пакетами. TCP это поточный протокол.

AG>Правильно ли я понимаю, что эта длина определяется параметром MTU (когда вызываем команду ifconfig или netstat -ie в Linux)?


MTU это размер IP пакета.

AG>MTU равный примерно 1.5 KBytes — это для произвольных данных?

AG>Для текстовых данных этот показатель порядка 14 KBytes. Почему различие почти в десять раз?

Размер IP пакета не зависит от того, какого рода данные в него кладут. Это гораздо более низкий уровень абстракции.

AG>Насколько вероятна ситуация, что поменяется порядок следования пакетов? То есть — переданный в сеть позже, появится на приёме раньше.


Если речь об IP, то ненулевая и зависит от типа сети. Например в WiFi это обычное дело, как и пропавшие пакеты, дубликаты и тд.

AG>Но меня интересует вопрос — как сеть дробит пакеты TCP?

AG>Как защититься от изменения порядка следования пакетов?

При использовании TCP обо всех проблемах заботится операционная система. Программисту про это думать нужды нет. В каком порядке они уходят в сокет с одной стороны, в том порядке придут с другой стороны.
Re: Максимальная длина TCP пакета в сети
Здравствуйте, AlexGin, Вы писали:

AG>Имеется вот нейкая сетевая структура, где сервер и клиент связаны по TCP.

AG>Межде сервером и клиентом поддерживается постоянное соединение (OS: Linux Ubuntu).
AG>Предполагается, что эти сервер и клиент — отдельные машинки локальной сети.

AG>Вопрос: какова максимальная длина пакета, который НЕ будет разбиваться сетью на более мелкие пакеты?


TCP не оперирует пакетами. TCP это поточный протокол.

AG>Правильно ли я понимаю, что эта длина определяется параметром MTU (когда вызываем команду ifconfig или netstat -ie в Linux)?


MTU это размер IP пакета.

AG>MTU равный примерно 1.5 KBytes — это для произвольных данных?

AG>Для текстовых данных этот показатель порядка 14 KBytes. Почему различие почти в десять раз?

Размер IP пакета не зависит от того, какого рода данные в него кладут. Это гораздо более низкий уровень абстракции.

AG>Насколько вероятна ситуация, что поменяется порядок следования пакетов? То есть — переданный в сеть позже, появится на приёме раньше.


Если речь об IP, то ненулевая и зависит от типа сети. Например в WiFi это обычное дело, как и пропавшие пакеты, дубликаты и тд.

AG>Но меня интересует вопрос — как сеть дробит пакеты TCP?

AG>Как защититься от изменения порядка следования пакетов?

При использовании TCP обо всех проблемах заботится операционная система. Программисту про это думать нужды нет. В каком порядке байты уходят в сокет с одной стороны, в том порядке придут с другой стороны.