10G дома: 6 букв, вторая "и"

Приехали первые (короткие) CX4-кабели и я начал поднимать Infiniband прямо на столе (до сервера эти кабели не дотянутся).

Собственно, исходно я клюнул на IB из соображений поразвлечься. Имею сказать, что развлекся я уже по полной программе, эти $69 себя уже окупили полностью.

Две машины, Win 7 x64 и Ubuntu 11.10.

Ставим драйвера (OFED 3.0 под Windows, драйвера из поставки в Убунте, кажется это Linux OFED 1.4.x), всовываем кабель, запускаем opensm, имеем в первом приближении счастье: PORT_ACTIVE

Во втором приближении - тоже счастье, ibping работает.

В третьем приближении - несчастье. IPoIB - не работает. И Win-Win и Win-Linux ситуация одинаковая, под Win-Win пробовал кроме OFED 3.0, еще и 2.3 и родной Mellanox-овский стек 2.1.2. Во всех случаях ping не пингает, причем из порта (по данным tcpdump) ничего не вылезает.

Присматриваюсь повнимательнее, вижу что вместо LinkWidth 4X имею 1X.

Начинаю гуглить, нагугливаю, что такое (1X вместо 4X) иногда бывает. Стандартная метода борьбы - поставить нужный link width через ibportstate и поресетить порт свитча. Но у меня свитча то нету!

opensm, конечно, ресетит интерфейсы, но при этом ставит LinkWidthEnabled согласно LinkWidthSupported т.е. в положение "1X или 4X", после чего оно коннектится в 1X.

Нахожу еще бедолагу, у которого было нечто похожее, при этом на 1X не работал IPoIB, а на 4X - работал. Хотя должен и так и эдак. Бедолага вышел из положения попатчив opensm. Ну, я ничем не хуже, попатчу и я, чтобы LinkWidthEnabled ставился перед ресетом в 4X.

Попатчил. Получил коннект в состоянии "Training". Если потом запустить непатченый opensm, то он ставит "1X or 4X" и все совокупляется в 1X (и IPoIB продолжает не работать).

Единственная гипотеза пока, что кабеля хреноватые (я самые дешевые покупал, по $16), буду ждать следуюшей порции, если и она не поможет - схожу на поклон в Ринет.

Есть ли еще идеи? Ну кроме той, что надо взять два линукса, наисвежайший OFED и попробовать с ними. Это можно, но это на крайний случай, у меня линуксная машина пока одна.

За последние два дня прочитал по IB столько, что еще немного и смогу курсы вести, блин.

Comments

Загрузить вторую машину с USB свистка в лииньюкс? Live Debian какой-нибудь.

Для IB надо много всего компилировать.

Ну то есть понятно, поставиться на eSATA и жить на нем, но проще дождаться других кабелей, они уже таможню прошли.

надобно freebsd пробовать.
полюбому.
да хотя бы потом что без этого удовольствие не полное!

Ну не подняв IPoIB в простом случае - нет смысла соваться в сложный.

Но пробовать буду обязательно, на крайняк подниму FBSD на этой "линуксной" машине, она как раз экспериментальная для подобных случаев.

пока ты не попробовал -- ты не знаешь какой случай на самом деле сложный

В FreeBSD очень старый OFED, тамошний ibportstate даже LinkWidth не умеет ставить.

Поэтому случай, да, простой: попробовать и если ничего не получится, то и не дергаться.

А скажите пожалуйста, если я хочу банальный эвернет Вин-Вин со скоростью выше 1 гигабита (и прямо вот 10 мне даже в принципе не надо), есть какие-то бюджетные способы?
Главное, чтобы не становиться при этом гуру, т.е. воткнул карты, кинул кабель, драйвера под Вин 7 и оно сразу и заработало.

В гигабите чего не хватает - bandwidth или latency? И сколько нужно?

Хочется иметь на одном из компов доступ к дискам на файлопомойке со скоростью локальных. Пока без райда, поэтому гигабит ограничивает не так сильно. Но райд планируется. Или кэширование с помощью SSD.
Хочу обрабатывать фотки не гоняя их на локальный диск и обратно.

2-3-4 гигабита и multipath scsi. По идее, будет работать. Файлопомойка должна поддерживать iscsi и multipath.
Сам я не пробовал.

Ну или какой-то из вариантов дешевого 10G (Myricom, 10G Infiniband), но на этом пути я уже поймал первый прикол, описанный в исходном посте.

Будут ли по 2-3-4 гигабитам балансироваться нагрузка в случае 1 сервер - 1 клиент?

Потому как в случае тех же 2-4 портовых серверных Ethernet карт при объединении в транк любым образом (round-robin, adaptive load balancing и прочими 802.3ad) какой-либо балансировки загрузки каналов в случае 1 сервер - 1 клиент мне получить не удалось.

multipath iscsi - обещает балансировку (там, собственно, все соединения 1 сервер - 1 клиент)

Но я не пробовал.

Спасибо, пошел учиться :-)

Как мне тут уже ехидно советовали, USB3?

Еще есть дешевый 10G в лице Myrinet (вот например).

А что, бывает эвернет-овер-УСБ3? Или в каком виде я буду видеть удаленные диски?

Да хрен его знает :)

Под Линуксом ещё видно какое-то шевеление.
А солюшены для Винды похоже мертвые где-то с 2003 года.
Хотя может там всё проще и решается с помощью стандартного встроенного Remote NDIS драйвера...
Надо будет спаять проводочек УСБ-УСБ и попробовать воткнуть и посмотреть, что винда вообще на это скажет.

вот человек 2 недели назад похвалился

=======================
упс, поднял IPoIB на картах Mellanox MHES14-XTC Infiniband III Lx 10GB/s HCA Card

просто поставив пакет с www.openfabrics.org отметив все компоненты
и получилось
==========================
однако мириком рулит
кабель у меня кстати тоже китайский, хоть из штатов и приехал

Ну да, так и должно быть в теории. Включаешь - и работает.

Я не уверен, что у меня битый кабель, но вообще работа на 1x - это симптом именно этого.

ну может и дрова кривые

Карты соединяются (но в состояние PORT_INIT, а не ACTIVE) и вовсе без дров.

Т.е. они не смогли договориться. Хрен их разберет - может кабель и того, проверить мне нечем.

скоро уже узнается

Ну да, именно. Я оттого и не тороплюся.

А у тебя с мирикомом как получается? Я тут до кучи купил и таких карт тоже (была оказия с доставкой в Москву, карты получились по $80, считая внутриштатовский овернайт).

И вот беру две винды, ставлю эти карты, ставлю драйвера с сайт, запускаю. Вижу странности:
1) Выше пары гигабит скорости по ttcp - не вижу.
2) Раз в несколько секунд карты уходят в себя, потом оттуда сразу приходят
3) Драйвера абсолютно одни и те же, а настройки в Advanced - разные.

С тоски даже фирмварь поапдейтил - ничего не изменилось.

Приветствую

с одной стороны у меня сейчас стоит freenas 9s 9898
это финальная 9 фришка с smb2 в синхронном режиме
в асинхронном оно у меня что-то не работает нормально
постоянные ошибки при копировании больших файлов
с другой стороны стоит w7

вот это мне даёт iperf

------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 256 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.78.78 port 5001 connected with 192.168.78.79 port 63204
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-900.0 sec 1010 GBytes 9.64 Gbits/sec

в 5 потоков
[ 4] local 192.168.78.78 port 5001 connected with 192.168.78.79 port 49751
[ 5] local 192.168.78.78 port 5001 connected with 192.168.78.79 port 49750
[ 6] local 192.168.78.78 port 5001 connected with 192.168.78.79 port 49752
[ 7] local 192.168.78.78 port 5001 connected with 192.168.78.79 port 49753
[ 8] local 192.168.78.78 port 5001 connected with 192.168.78.79 port 49754
[ 4] 0.0-60.0 sec 12.9 GBytes 1.85 Gbits/sec
[ 5] 0.0-60.0 sec 13.0 GBytes 1.86 Gbits/sec
[ 7] 0.0-60.0 sec 13.0 GBytes 1.86 Gbits/sec
[ 8] 0.0-60.0 sec 13.0 GBytes 1.85 Gbits/sec
[ 6] 0.0-60.0 sec 13.0 GBytes 1.86 Gbits/sec
[SUM] 0.0-60.0 sec 64.8 GBytes 9.28 Gbits/sec

-----------------------------------------------------------------------
CrystalDiskMark 3.0.1 x64 (C) 2007-2010 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]

Sequential Read : 400.832 MB/s
Sequential Write : 310.827 MB/s
Random Read 512KB : 46.780 MB/s
Random Write 512KB : 44.267 MB/s
Random Read 4KB (QD=1) : 0.675 MB/s [ 164.9 IOPS]
Random Write 4KB (QD=1) : 1.171 MB/s [ 285.9 IOPS]
Random Read 4KB (QD=32) : 5.215 MB/s [ 1273.1 IOPS]
Random Write 4KB (QD=32) : 1.082 MB/s [ 264.2 IOPS]

Test : 1000 MB [D: 12.8% (31.8/249.0 GB)] (x5)
Date : 2012/02/11 10:57:34
OS : Windows 7 Ultimate Edition SP1 [6.1 Build 7601] (x64)

реально на больших файлах всё вполне хорошо, а вот на маленьких, как-то тоскливо
или вот заходишь FARом в каталог, где >1000 файлов и оно задумывается секунд на 5-7-10
и только потом показывает содержимое каталога
как-то вот оно это не правильно
у нас в конторе стоит ещё Netware 6.0, так там даже по 100Мбитной сетке содержимое каталога
с сотней тысяч файлов показывается мгновенно
(задумался дома поставить novell :))
как файлсервер он внеконкуренции

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

PCI\VEN_14C1&DEV_0008&SUBSYS_000814C1&REV_00

во фришке как сам понимаешь никаких Advanced нет

дрова стоят 1.1.9.0
от 27.09.2011

раз видел по iperf начальную скорость порядка 1.25Гбит, но потом разогналось до 10, секунд через 5-7

А у тебя с мирикомом как получается? Я тут до кучи купил и таких карт тоже (была оказия с доставкой в Москву, карты получились по $80, считая внутриштатовский овернайт).

И вот беру две винды, ставлю эти карты, ставлю драйвера с сайт, запускаю. Вижу странности:
1) Выше пары гигабит скорости по ttcp - не вижу.
2) Раз в несколько секунд карты уходят в себя, потом оттуда сразу приходят
3) Драйвера абсолютно одни и те же, а настройки в Advanced - разные.

С тоски даже фирмварь поапдейтил - ничего не изменилось.

Ну с большими каталогами - оно же, небось, про каждый файл шлет отдельный пакетик. И того.
У меня по самбе (по гигабиту) стереть какой-нть каталог с исходниками на 10к файлов - мучение то еще.

А в остальном - как я тебя понял - все работает? Ну значит буду копать дальше.

в остальном вполне работает
был странный момент, комп завис ночью
с утра пришлось ребутить
так вот сетевуха моргала часто оранжевым огоньком и не виделась в системе
вообще - как буд-то и нет её
я уж загрустил, но после нескольких ребутов/поверофов она нашлась
и стала работать как ни в чём не бывало

а как тогда новелл так лихо выводит огромные каталоги по медленным сетям?
и всё удаляется там просто fast as light
это самба такая кривая - или какие-то другие моменты?

Новелл их, поди, кэширует на клиенте.
Или там парадигма другая. Не "дай мне следующий файл, а теперь - stat от него", а сразу фигачит помногу.

на клиенте не реально - там сети очень большие
а вот то, что сразу и по многу выдаёт - запросто
потому как по новелловским томам я как по локальному диску гуляю
задержек нет вообще
странно, что по 10G оно откликается так медленно

Я вот как SMB устроено в деталях - не знаю, а кучу красных книжек по Novell (где вроде и описание протокола тоже было) выкинул еще в прошлом веке.

Дело может быть не только в сети, но и в том, что smbd про каждый файл отдельно спрашивает метаданные. А это не очень быстро. В юниксной же семантике сначала делается readdir, а потом для каждого файла отдельно - stat().

А у новелла они, к примеру, хранятся прямо в directory и отдельного чтения не требуют.

Ага. Или слот был не той системы, или просто перегревалось (стояло между двумя видеокартами).

Производительность, правда, все равно говно, но хоть линком не мыргает.