Про Infiniband FreeBSD-FreeBSD

Тут спрашивали, как работает IB с FreeBSD на FreeBSD.

Вкратце: очень странно работает. Но байты ходят, достаточно быстро, пользоваться можно.

Сначала мне не удалось ЭТО завести (при том, что линк FreeBSD-Windows7 на тех же картах, портах и драйверах работает прекрасно). Но тут удачно подсказали в комментариях, что это место обновилось.

Ну значит csup && make buldworld && make buildkernel, перезагружаемся и оно работает. При этом

  • При неудачном стечении светил, оно может работать в одну сторону (в одну сторону пинги ходят, в другую - нет), лечится down/up интерфейса. Это у меня было в Datagram mode, пару раз.
  • Connected Mode между двумя FreeBSD - поднялась. Пинги ходят, байты тоже, о производительности ниже. MTU работает и 16k (как уже обсуждали) и 65520 - тоже.
  • Connected Mode между FreeBSD и Windows так и не починилась. Возможно, надо перегрузить (в каком-то порядке) обе машины и я еще буду пробовать, но пока симптомы те же, что и в прошлый раз (слишком большой пакет, не будем слать). Лечится установкой mtu 2044 на FreeBSD-шной стороне.
Производительность:

Сразу в Conneсted Mode, в Datagram не померял, а переключаться обратно - это другое ядро ставить.

1.Пинги:

lexa@new-gw:/home/lexa# ping -f -s 48000 10.1.1.1
PING 10.1.1.1 (10.1.1.1): 48000 data bytes
.^C
--- 10.1.1.1 ping statistics ---
93944 packets transmitted, 93943 packets received, 0.0% packet loss
При этом по netstat на другой машине чудеса:
lexa@home-gw:/home/lexa# netstat -I ib1 1
            input          (ib1)           output
   packets  errs idrops      bytes    packets  errs      bytes colls
     16108     0     0  193714808       8043     0  386983328     0
     16084     0     0  193426184       8047     0  386751896     0
     16048     0     0  192993248       8025     0  385781288     0
     16111     0     0  193751664       8046     0  387011880     0
Если поделить байты на пакеты, то получается что на input приходят 12-килобайтные пакеты, а обратно уходят - 48-килобайтные ответы. Счетчик байтов при этом не сходится. Какие-то чудеса, впрочем эту тему уже обсудили.

2. FTP:

lexa@new-gw:~# ftp 10.1.1.1
Connected to 10.1.1.1.
220 home-gw.lexa.ru FTP server (Version 6.00LS) ready.
...
ftp> get /dev/zero /dev/null
local: /dev/null remote: /dev/zero
229 Entering Extended Passive Mode (|||51760|)
150 Opening BINARY mode data connection for '/dev/zero'.
^C^C
receive aborted. Waiting for remote to finish abort.
426 Transfer aborted. Data connection closed.
226 Abort successful.
17185484800 bytes received in 00:24 (672.59 MiB/s)
Ну, не 8 гигабит, как положено, а чуть более 5, но мне хватит. Тормозит, судя по top, ftpd на отдающей стороне, ложится на полку по CPU.

Смотрим теперь на netstat (на стороне ftp-сервера):

lexa@home-gw:/home/lexa# netstat -I ib1 1
            input          (ib1)           output
   packets  errs idrops      bytes    packets  errs      bytes colls
     34239     0     0    1917384      51361     0 1622175500     0
     35272     0     0    1975232      52917     0 1671380692     0
     29454     0     0    1649424      44186     0 1394678512     0
     28467     0     0    1594152      42699     0 1348191044     0
     28292     0     0    1584352      42453     0 1340368084     0
     29375     0     0    1645000      44053     0 1390952404     0
Счетчик байтов точно врет раза в два.

На всякий случай скачал нормальный файл на пару десятков гигов, не /dev/zero, MD5 у оригинала и скачанной копии сошелся.

Comments

я думаю тебя очень ждут в профильных листах с отчетами.

сделай, кстати ram-disk и с него файл отдай (для бенчмарки), а то ftpd поди не может sendfile к /dev/zero применить.

А какие листы - профильные и как туда писать (читать я умею:) ?

С ramdrive придумаю что-нибудь, но не сейчас. У меня это freebsd-freebsd для переливки терабайтов с zfs на zfs, а не ради развлечения (в connected mode, кстати, оно полилось процентов на 20 быстрее, хотя упирается вроде в диски)

я думаю stable и scsi

scsi то тут коим боком? SRP нету.

И, я не шучу, я честно не знаю как туда писать. Надо подписаться куда-то?

а к scsi похоже относят нынче все, что не сетевые карты и с проводами.
но может и не scsi.
но точно стабле.

ну да, лучше подписаться. линки есть в хэндбуке, хэндбук на сайте.

freebsd-stable@
freebsd-net@ (мне кажется, это логичнее, чем -scsi@)

Быть подписанным заранее не обязательно.

А прилично писать сразу в два, с cc: ?

Два да, больше уже не надо.