Перейти к содержимому
Калькуляторы

tcp-сессия в локальной сети. 10G -> 1G.

Обычная локальная сеть на каталистах. Сисадмин недоумевает, почему клиент сидящий на 1G порту, общаясь с сервером на 10G порту, имеет несимметричную скорость, гоняя трафик туда-сюда одной tcp-сессией. Или жалуется, что когда два 1G клиента одиночными tcp-сессиями льют данные на один 1G сервер, то суммарный трафик деградирует ниже 500mbps. 
  Какое сегодня самое дешевое решение проблемы?
Если сисадмин отказывается что-либо менять в настройках сервера и клиента, но просит решить проблему на уровне сети.
(клиенты и сервера в одном сегменте).
 

Изменено пользователем cant

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

9 минут назад, cant сказал:

Какое сегодня самое дешевое решение проблемы?

Уволить сисадмина, и заодно уволить того,кого всё это не устраивает. Тройная экономия выйдет!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Какие каталисты?  Обычно такое поведение характерно для "десктопных"  коммутаторов с крошечным (до 2-3 мегабайт) буффером пакетов.

Очевидное решение - приобретение коммутатора с буффером от 4-8 мегабайт. Из наиболее доступного - Cisco серии 4948 (лучше E).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

10 минут назад, andryas сказал:

Какие каталисты?  Обычно такое поведение характерно для "десктопных"  коммутаторов с крошечным (до 2-3 мегабайт) буффером пакетов.

Очевидное решение - приобретение коммутатора с буффером от 4-8 мегабайт. Из наиболее доступного - Cisco серии 4948 (лучше E).

Да обычные каталисты 3650, 2960S.   (не датацентр с нексусами, но и не офис с микротиками и д-линками).
4948E не дают. (не закупается снятое с производства). 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

29 minutes ago, cant said:

почему клиент сидящий на 1G порту, общаясь с сервером на 10G порту, имеет несимметричную скорость, гоняя трафик туда-сюда одной tcp-сессией

iperf'ом мерили? если нет, то чем?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 минуту назад, dr Tr0jan сказал:

iperf'ом мерили? если нет, то чем?

На iperf несимметричность очевидна, на iscsi фатальна.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

29 minutes ago, cant said:

На iperf несимметричность очевидна

Покажите.

29 minutes ago, cant said:

на iscsi фатальна.

У меня было такое. Оказалось, бэк (СХД) тормозил (хотя в это никто не верил, даже вендор, пока умные люди не ткнули носом).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 hour ago, cant said:

клиент сидящий на 1G порту, общаясь с сервером на 10G порту, имеет несимметричную скорость, гоняя трафик туда-сюда одной tcp-сессией.

А какую конкретно имеет? Сколько аплоад, сколько даунлоад, где проблема-то?

Сервер на чём? Если линуксы, попробуйте разные TCP Congestion Control алгоритмы -- illinois или bbr.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

4 минуты назад, dr Tr0jan сказал:

Покажите.

У меня было такое. Оказалось, бэк (СХД) тормозил (хотя в это никто не верил, даже вендор, пока умные люди не ткнули носом).

 

4 минуты назад, rm_ сказал:

А какую конкретно имеет? Сколько аплоад, сколько даунлоад, где проблема-то?

Сервер на чём? Если линуксы, попробуйте разные TCP Congestion Control алгоритмы -- illinois или bbr.

 

Не, ничего не тормозит, когда 10G <-> 10G или 1G <-> 1G.

Каков бы масштаб проблемы и несимметричности не был бы, на том или ином железе, просят устранить это на сетевом уровне.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Включите на коммутаторах flow-control, на клиентах и серверах он обычно включен по-умолчанию. При переполнении буфера коммутатор будет сигналить источнику трафика "горшочек, не вари", станет ясно, дело в этом, или в чем-то еще.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

14 minutes ago, cant said:

Не, ничего не тормозит, когда 10G <-> 10G или 1G <-> 1G.

Так вопрос был, а что тормозит когда 10G<>1G?

Вы всё повторяете слово "несимметричность", и уже два человека попросили подробнее расписать -- в чём она заключается?

При "10G сервер<>1G клиент", у клиента что, скорость аплоада не 1G? или даунлоада не 1G? Можно даже конкретно с копипастом вывода iperf3.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

37 минут назад, rm_ сказал:

попробуйте разные TCP Congestion Control алгоритмы -- illinois или bbr.

Илиноис - херня полная.

hybla, htcp, bbr.

 

 

22 минуты назад, jffulcrum сказал:

Включите на коммутаторах flow-control, на клиентах и серверах он обычно включен по-умолчанию. При переполнении буфера коммутатор будет сигналить источнику трафика "горшочек, не вари", станет ясно, дело в этом, или в чем-то еще.

Думаете это хорошая идея, когда какой то один клиент просит сервер заткнутся на время?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

23 minutes ago, Ivan_83 said:

какой то один клиент просит сервер заткнутся на время?

Клиент не сможет просить сервер, Flow Control работает только в рамках конкретного линка (провода) то есть клиент будет общаться по этому протоколу только со свитчом.

Здесь задумка в том, чтобы свитч просил чуток отдохнуть передающий данные сервер, на случай если у него, свитча, оказались забиты буфера.

Но насколько хорошо это на практике реализовано в используемых свитчах/адаптерах/драйверах и поможет ли ТС -- вопрос.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

7 hours ago, cant said:

Не, ничего не тормозит, когда 10G <-> 10G или 1G <-> 1G.

Каков бы масштаб проблемы и несимметричности не был бы, на том или ином железе, просят устранить это на сетевом уровне.

А показать iperf будет?

Лучше, во всех трёх случаях.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

9 часов назад, rm_ сказал:

Здесь задумка в том, чтобы свитч просил чуток отдохнуть передающий данные сервер

Таким образом он уронит скорость сервера на 10гб линке до 1гб. Но проблема уйдет, да.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

10 часов назад, cant сказал:

Не, ничего не тормозит, когда 10G <-> 10G или 1G <-> 1G.

Каков бы масштаб проблемы и несимметричности не был бы, на том или ином железе, просят устранить это на сетевом уровне.

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

Либо шейпить от сервера к клиенту, либо менять свич. Увы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

11 часов назад, cant сказал:

Обычная локальная сеть на каталистах. Сисадмин недоумевает, почему клиент сидящий на 1G порту, общаясь с сервером на 10G порту, имеет несимметричную скорость, гоняя трафик туда-сюда одной tcp-сессией. Или жалуется, что когда два 1G клиента одиночными tcp-сессиями льют данные на один 1G сервер, то суммарный трафик деградирует ниже 500mbps. 
  Какое сегодня самое дешевое решение проблемы?
Если сисадмин отказывается что-либо менять в настройках сервера и клиента, но просит решить проблему на уровне сети.
(клиенты и сервера в одном сегменте).
 

 

Купите свитч с большим и сегментированным буфером. Но пенальти будет в любом случае, просто меньше. Не бывает преобразования скоростей без потерь.

 

14 минут назад, TriKS сказал:

Либо шейпить от сервера к клиенту, либо менять свич. Увы.

Если там проблема iSCSI упирается только в двух клиентов - можно поставить в сервер две гигабитные карточки, и воткнуть в них клиентов в обход свитча.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Клиент напрямую в сервак? Так себе затея. Но как вариант - тоже норм. Останется только потом на серваке настроить DHCP сервер(ну или как там в принципе абон авторизируется) + NAT сделать, ибо нах клиенту тупо сервак - я ХЗ :)

Изменено пользователем TriKS

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

27 минут назад, TriKS сказал:

Клиент напрямую в сервак? Так себе затея. Но как вариант - тоже норм. Останется только потом на серваке настроить DHCP сервер(ну или как там в принципе абон авторизируется) + NAT сделать, ибо нах клиенту тупо сервак - я ХЗ :)

 

Тогда я нихрена не понял, что там у тебя за схема сети. И причём тут iSCSI с высокими скоростями.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня нет проблем как у ТС :) Ну и про iSCSI я ничего не говорил... Я про микроберсты, которые приводят на свичиках к дропам пакетиков и заставляют tcp заново пакетики перезапрашивать.... У человека в 1 потоке на 1-1 проблем нет, на 10-10 тоже нет, а вот на 10->1 есть. Явно буфера фсе.

Изменено пользователем TriKS

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.