Назад | Перейти на главную страницу

Как оптимизировать задержку TCP в Windows Server 2008?

Я разрабатываю распределенную систему и развертываю ее на кластере 1 Гб Windows Server 2008 R2. Но у меня проблема с задержкой, обычный пинг занимает 0,270 мс, и я считаю, что это слишком много, поскольку все машины подключены локально через один 1 Гб переключатель.

Итак, как я могу оптимизировать задержку в целом, что также поможет мне в .NET WCF

нормальный пинг занимает 0,270 мс, и я считаю, что это слишком много

Ах нет. Сожалею. Это нормально.

нужна очень низкая задержка? Используйте технологии, предназначенные для этого. Infiniband.

Это задержка в сетях 1Гб. 0,2 мс меньше 1 мс. Это нормально для 99% приложений.

Итак, как я могу оптимизировать задержку в целом, что также поможет мне в .NET WCF

Нет, не будет. В конце концов, правильно спроектированная кластерная система на основе WCF без проблем справится с приличной задержкой. Да, на создание ориентировочных пакетов потребуется больше времени, чем ноль, но, с другой стороны, правильная структура протокола сообщений и гранулярность рабочих пакетов в кластере означает, что это не означает, что машины ничего не делают.

Я много занимаюсь проектированием / операциями распределенных систем, и серьезно, 0,2 мс - это не то, о чем я бы беспокоился, если только проектировать систему HFT, а затем использовать WCF само по себе - глупый ход - HFT сокращает задержку в микросекундах в те дни (примечание: HFT = высокочастотная торговля).

Попробуйте подключить 2 машины перекрестным кабелем и проверьте результаты пинга. Это подтвердит, что у вас проблема с ОС, а не с переключением. Я подозреваю, что у вас проблема с переключателем, а не с ОС. Настройки OOB для сервера Windows довольно хороши.

Есть два подозрительных места для проверки:

  1. хозяин (и)
  2. выключатель

Возможно, ваши сетевые карты работают с пониженной скоростью (возможно, из-за некоторого состояния энергосбережения) - проверка интерфейса управления вашего коммутатора предоставит больше информации о фактических скоростях соединения. Или процессор вашего хоста в целом работает с пониженной скоростью (например, из-за SpeedStep) или падает в глубокий сон и нужно время, чтобы проснуться. Отключение voodoo управления питанием устранило бы это как возможную причину. Если ваши хосты виртуализированы, было бы довольно нормально видеть изменяющиеся / увеличенные задержки из-за планирования виртуализации.

Если ваш коммутатор очень тупой или настроен неправильно, он будет использовать схему пересылки с сохранением вместо прорезать. Изменение этого также несколько уменьшит задержку.