Linux Медленный Запуск: Изменение IP маршрута не имеет никакого эффекта на начальное окно

Разве Вы не могли настроить отдельную Речь и Обменивающийся сообщениями (Звездочка / [Jabber|IRC], например) и интегрировать аутентификацию? Замена Skype не могла бы быть доступной.

Я - вид удивленной Звездочки, не имеет плагина или расширения для текстового чата. На моем рабочем месте, Cisco / Avaya / коммуникатор Office в большой степени интегрируются для речи/электронной почты/чата/конференции.

10
задан 5 March 2012 в 19:28
2 ответа

Я думаю, вы неправильно понимаете, как работает TCP.

Каждый отправленный пакет всегда анонсирует окно получателя (также известное как RWIN) и необязательный коэффициент масштабирования, см. RFC 1323

Отправителю не разрешено отправлять больше, чем на сумму данные, указанные в RWIN, без подтверждения. В зависимости от окна перегрузки отправитель может решить заполнять RWIN или нет.

Итак, в TCP-пакетах есть два бита информации, которые являются общедоступными. RWIN на сервере и RWIN на клиенте. Обе эти цифры указывают, какой максимальный размер окна перегрузки может быть на обоих концах.

RWIN на сервере интересен, когда мы пытаемся оптимизировать производительность, скажем, для загрузки файлов.

RWIN на клиенте интересен, когда мы пытаемся определить скорость загрузки.

Ни один из этих номеров не делает окно перегрузки на другом конце общедоступным .

Итак, если у меня RWIN 64 КБ, окно перегрузки на сервере может быть ЛЮБЫМ числом меньше 64 КБ.

Единственный способ определить фактическое окно перегрузки - это подсчитать пакеты.

Если я знаю:

  1. Мое время приема-передачи (RTT) составляет ~ 200 мс.
  2. Я только что запросил ресурс размером 100 КБ.
  3. У меня RWIN 64k.

Если я получаю от сервера 2 пакета длиной 1452 байта в течение ~ 200 мс, вероятно, окно перегрузки на сервере меньше 4356, потому что, если бы оно было больше, было бы отправлено 3 пакета. Если бы IW был установлен на 10, я бы увидел пакет из 10 пакетов около отметки 200 мс.

Если вы меняете свой IW и хотите подтвердить, что изменение сработало, вам необходимо подсчитать пакеты , чтобы получить оценку размера окна перегрузки на сервере.

Имейте в виду, что вы, вероятно, захотите посмотреть диалог сразу после SYN, SYN-ACK, ACK, чтобы убедиться, что вы не смотрите на середину диалога (где окно перегрузки могло уже увеличиться).

9
ответ дан 2 December 2019 в 22:05

Размер окна будет в зависимости от того, что меньше: размер окна инициализации сервера или RWIN клиента. Поскольку 5840 является RWIN по умолчанию для Linux 2.6, похоже, что ваш клиент является здесь ограничивающим фактором.

Попробуйте из окна Windows. Windows XP имеет RWIN 64k, более новая версия 8k.

Источник: http://www.cdnplanet.com/blog/tune-tcp-initcwnd-for-optimum-performance/ (Интересный часть находится под видео)

Правка: Расширение ответа для большей ясности:

  • В квитировании TCP клиент отправляет SYN-пакет на сервер, отправляя его максимально допустимый размер окна. (Как показывает ваш вывод tcpdump, это 5840 байт)
  • Теперь сервер отвечает SYN ACK и размером окна, с которым он хотел бы согласиться. Этот размер окна может быть только меньше, чем предложил клиент, но не больше. Независимо от того, как настроен сервер,
7
ответ дан 2 December 2019 в 22:05

Теги

Похожие вопросы