|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Сразу объясню зачем это нужно. Когда делаешь кластер серверов, соединенным гигабитом, там обмен между сервером приложений и SQL сервером делается пакетами примерно по 512 байт . Теоретическая задержка по Ping должна быть, с округлениями 0.01 миллисекуду (1/(1 000 000 000/8/512)) на пакет 512 байт, Тесты показывают что задержка Ping 128.0.0.1 минимум 0.1 милиссекуда а пинги компьютеров соединенных напрямую 0.4 миллисекунд т.е. к теоретической даже и не близко. при этом неважно как идет Ping через icmp либо эхопорт. Копирование файлов идет со скоростью 110 мегабайт в секунду т.е. близко к теоретической но там большие пакеты. Кстати мне сообщили что на линуксе можно достичь ping 128.0.0.1 к цифрам близким к теоретическим Для 100 мегабитной сети я получал цифры близкие к теоретическим, а для гигабита на windows отрыв от теоретических цифр в десятки раз. Вопрос - можно ли на windows достичь показатели задержки близкой к теоретической, для теста указанного выше? Вопрос - может кто встречал форумы источники и т.д. где эта тема хорошо освещена ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 16:42 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
selis76, Для начала научитесь точно измерять эти пинги. А сейчас у вас погрешность измерения сильно больше измеряемой величины. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 16:49 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
первая попавшаяся статья на тему. habrahabr.ru/company/etegro/blog/213911/ ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 16:55 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
miksoftпервая попавшаяся статья на тему. habrahabr.ru/company/etegro/blog/213911/ поясните - я использовал hrping она меряет с высокой точностью статью почитаю ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 17:01 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
selis76я использовал hrpingНу так это надо указывать. Я уж было подумал на шатный виндовый пинг. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 17:11 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Не являюсь спецом по сетевому оборудованию, но пытался с этим разобраться. Если речь идет об Ethernet, то IMHO практически нет Задержка возникает: 1. при обработке прерываний 2. в стеке ОС при обработке TCP/IP Для Intel сетевых карт есть эксперементальные опен-соурс драйвера с возможностью работать в режими пулинга (без прерываний). Как я понял, в свое время, это было реализовано на FreeBSD only - теперь ряд энтузиастов под эгидой Intel хотять вернуть обратно. Думаю, в этом режиме, можно достичь близких к теоретическому результатов. Если критична задержка, лично я бы посоветовал смотреть на _профессиональное_ оборудование. Типа InfiniBand (и желательно не TCP/IP). Всякая подделка, типа 10G Ethernet, то же врят ли Вам поможет. IMHO Ряд параметров драйверов/ОС/afinity для процесса-прерываний - могут помочь. Но, мне кажется, что это будет жесткий хардкор. Да и скорость до "теоретической" не дотянет. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 17:18 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
selis76hrpingХм, даже hrping 127.0.0.1 дает порядка 0,15-0,2 мс А если hrping -c -n 100 127.0.0.1, то минимальный пинг сразу падает до 0,028 мс. А если hrping -c 10 -n 100 127.0.0.1, то уже 0,010 мс. Причем разброс величин весьма большой - до десятых долей мс. Т.е. еще нужно изучать этот hrping. И, похоже, Windows весьма неспешно отвечает на пинги. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 17:42 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Дальнейшие изыскания показывают очень сильную зависимость времени пинга от типа ОС и от хоста вообще. Т.е. таки насчет точности измерений я, похоже, был прав. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 17:59 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
selis76Когда делаешь кластер серверов, соединенным гигабитом, там обмен между сервером приложений и SQL сервером делается пакетами примерно по 512 байт . Именно поэтому: 1) Устанавливают между сервером приложений и СУБД более одного коннекта; 2) Помещают их на одну мощную машину; 3) Отказываются от сервера приложений вообще, сокращая одно звено в цепочке. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 19:33 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov1) Устанавливают между сервером приложений и СУБД более одного коннекта Для _задержки_ (latency) ничем не поможет IMHO ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 19:37 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevДля _задержки_ (latency) ничем не поможет IMHO Общую пропускную способность системы повысит. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 20:15 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovОбщую пропускную способность системы повысит. Ну, а дальше, интересно сколько параллельных задач/пользователь нужно. Что бы задача "нехватает latency" решалась методом "повысит общую пропускную способность" да еще и с учетом 512 байтных пакетов? IMHO не просто много, а _очень_ много. В общем, совсем не то, о чем спрашивает автор. Но на его вопрос (да еще с учетом Windows), подозреваю ответ "почти никак". Ehernet и TCP/IP (конечно, возможно есть специализированные карточки, не знаю) это не та технология, которая оптимизирована для low-latency. При этом, AFAIK, что 1G Ethernet, что 10G Ethernet - масло масленое. 2) Помещают их на одну мощную машину; 3) Отказываются от сервера приложений вообще, сокращая одно звено в цепочке. Тут полностью плюсуюсь 4) ПЛЮС нормальные системы, например Oracle, имеют такие понятие как: bulk collect, fetch array, array size, fetch size и так далее Т.е. возможно в рамках одного пакета, передавать сразу много записей. Что почти полностью убирает проблему latency на уровне локальной сети. IMHO & AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 20:49 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevНу, а дальше, интересно сколько параллельных задач/пользователь нужно. Что бы задача "нехватает latency" решалась методом "повысит общую пропускную способность" да еще и с учетом 512 байтных пакетов? IMHO не просто много, а _очень_ много. Ну так кластера для однопользовательских систем и не собирают. ЕМНИП, один коннект даёт примерно 1-4% загрузки сети. Так что, грубо посчитав, максимум 100 коннектов забьют весь канал. PS: в стартовом посте теоретическая оценка не учитывает оверхэда всего стэка протоколов. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 20:59 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovНу так кластера для однопользовательских систем и не собирают... В какой стране? В России? AFAIK Вы ошибаетесь ))) (не IMHO, а именно AFAIK ))) ) Dimitry Sibiryakov...так что, грубо посчитав, максимум 100 коннектов забьют весь... Это в том случае, если толщина канала будет "узким горлышком". Стартовый пост заставляет в этом сомневаться ))). Если сейчас узкое горлышко latency, подозреваю, при 100 коннектах это будет процессор (даже, скорее, не сам процессор, а PCI шина) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 21:25 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevЕсли сейчас узкое горлышко latency, подозреваю, при 100 коннектах это будет процессор (даже, скорее, не сам процессор, а PCI шина ) По подробней можно? И PCI или PCI Express? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 22:07 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
IMHO & AFAIK. А пофиг. Обработка прерываний. Изначальная ущербность Ethernet'а. Да и Windows радости не добавит. Конечно могу ошибаться. Но тут все зависит от кривизны используемого приложения. Судя по тому, что возник вопрос и проблема - достаточно кривое. Нужно кривость приложения лечить (пакеты по 512 байт), а не из сети несуществующую "задержку близкую к теоретической" выжимать. IMHO ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 22:19 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
точнее Ethernet + TCP/IP + Windows ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 22:21 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevIMHO & AFAIK. А пофиг. Обработка прерываний. Изначальная ущербность Ethernet'а. Да и Windows радости не добавит. Конечно могу ошибаться. Но тут все зависит от кривизны используемого приложения. Судя по тому, что возник вопрос и проблема - достаточно кривое. Нужно кривость приложения лечить (пакеты по 512 байт), а не из сети несуществующую "задержку близкую к теоретической" выжимать. IMHO Выделенное да, но до ограничений PCI Express gen2/3 16x, с пропускной способностью 64 - 128 Gbit/sec и задержками 200-500нс как до Китая раком, и прерывания к шине PCI Express никак не относятся, во-первых, в самой шине нет и не нужно никаких прерываний, во-вторых,, прерывания на CPU инициируются устройствами (в т.ч. Ethernet) исключительно через физическое адресное пространство, как обычное обращение к удаленной памяти - msi / msi-x. А задержки естественно никогда не измеряют ping-ом, а измеряют sockperf-ом для различной длинны пакета. И для обычного 1 Gbit Ethernet на TCP/IP она не будет ниже 0.03 мкс (0.015 мкс в одну сторону). ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2014, 22:32 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Пофиг. Могу ошибаться в терминологии, не специ по хардваре на таком уровне. Но IMHO все равно пофиг. Есть они (прерывания), нет их. Что оно физическим проводником на кристал приходит, что через пакет на шине. Все равно и в том и в другом случае, кто за лов латенси бьется их биндят (или афинят?) их на конретные ядра. И в любом случае тормозит. В общем пофиг. В милли/микро/нано и прочие секунды переводить не хочется. Абстрактные числа можно в Инете поискать. Вот когда топик стартер их добьется, да еще желательно не в сферической тестовой конфигурации, а на реальном/криво написанном приложении... тогда и можно говорить ))) IMHO проше приложение сделать нормальным. Что бы вместо 512 байтных пакетов, что то осмысленное по сети передавалось. ==== Вася Уткин, а с RSS в Windows сталкивался/разбирался? Вроде technet читал, но не фига не могу понять, почему поведение на практике отличается от алгоритма описанного на technet и как это можно отрейсить. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 01:50 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Вася Уткин....она не будет ниже 0.03 мкс (0.015 мкс в одну сторону). По вики, мкс == микросекунда == 10 в -6 степени 0.03 мкс == 30 наносекунд? Как-то мне кажется перебор ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 02:10 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
selis76, - что за адрес такой 128.0.0.1? - что подразумевается под теоретическими цифрами? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 10:03 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Теоретическими я бы назвал цифры из И-нета. Например http://www.qlogic.com/resources/documents/technologybriefs/adapters/tech_brief_introduction_to_ethernet_latency.pdf табличка на последней страницы. 50-120 мкс это 0.05 - 0.12 мс. Если не ошибся. Т.ч. даже от теоретической не так уж далеко ))) Как я помню, видел на своем офисном 1g Ethernete 45 тысяч пакетов в сек. (вроде получается 20 мкс) Но счастья не приносило. Т.к. на прикладном уровне Oracle thin JDBC все было значительно скучнее. Не более 8 тыс.при выкрученных настройках сетевой и прибинденном к ядру прикладной задаче (прерывания не биндил). В общем, минимум латенси (улучшение в 4 раза) был достигнуть в совершенно сферических условиях и при выкаченном вакууме. Мерил вроде netperf (для меня давало достаточно сферически цифры) и своим простеньким тестом Oracle thin JDBC. Корреляция между netperf и прикладным тестом была достаточно слабая ((( ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 11:24 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevВася Уткин....она не будет ниже 0.03 мкс (0.015 мкс в одну сторону). По вики, мкс == микросекунда == 10 в -6 степени 0.03 мкс == 30 наносекунд? Как-то мне кажется перебор ))) Здесь я опечатался, 30/15 мкс конечно для обычного Ethernet 1 Gbit :) ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 12:40 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Leonid KudryavtsevDimitry SibiryakovОбщую пропускную способность системы повысит. Ну, а дальше, интересно сколько параллельных задач/пользователь нужно. Что бы задача "нехватает latency" решалась методом "повысит общую пропускную способность" да еще и с учетом 512 байтных пакетов? IMHO не просто много, а _очень_ много. Кластер из сервера приложений и сервера базы данных в данной задаче не просто так. На сервере приложений запускается до 40 фоновых заданий которые производят обсчет и запись проводок (Фоновые задания 1С) Сервер базы данных обслуживает запросы от этих фоновых заданий. Класть все на один сервер (и приложение и субд) можно конечно, но не хочется с точки зрения маштабирования. Т.е. на первое время это конечно будет хорошо, но потом превратится в тупиковый вариант. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 13:38 |
|
Можно ли задержку в сети 1 гигабит приблизить к теоретической?
|
|||
---|---|---|---|
#18+
Ну а что Вы хотели? Сеть, задержка по сети. Что знал, уже написал. Практически настройкой сетевой карты, ОС и ковырянием приложения (???) скорость, скорее всего, можно в 2-4 раза повысить. Но это придел и при откачивание вакуума из сферического коня (главное, что бы при этом сам конь не сдулся и форму не потерял ))) ). Дальше, только спец.железо и/или драйвера. IMHO & AFAIK ... |
|||
:
Нравится:
Не нравится:
|
|||
02.12.2014, 14:17 |
|
|
start [/forum/topic.php?fid=30&msg=38821734&tid=1529398]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
131ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 17ms |
total: | 246ms |
0 / 0 |