1.1, A.Stahl (ok), 08:41, 11/10/2015 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
>попытка задействовать средства прямого взаимодействия с сетевым адаптером
Но всё это счастье будет работать лишь на некоторых сетевушках? Т.е. нужен модуль для ядра, и отдельный для юзерспейсного NetMap?
Возможно это имеет смысл для спец.прошивок для спец.оборудования, но в общем виде не вызывает особого энтузиазма.
| |
|
2.3, Аноним (-), 08:57, 11/10/2015 [^] [^^] [^^^] [ответить]
| +11 +/– |
Почти на всех 10-гигабитных адаптерах такое можно сделать.
Нужен свой NetMap-драйвер, на сегодня поддерживаются r8169, ixgbe, igb, e1000, e1000e и forcedeth.
Пример, для Intel IXGBE:
insmod ./LINUX/netmap.ko
insmod ./LINUX/ixgbe/ixgbe.ko
(let CPU=0; cd /sys/class/net/eth3/device/msi_irqs/; for IRQ in *; do \
echo $CPU > /proc/irq/$IRQ/smp_affinity_list; let CPU+=1
done)
ethtool -K eth3 ntuple on
ethtool -X eth3 weight 1 1 1 1 0 1 1 1 1 1
ethtool -N eth3 flow-type udp4 dst-port 53 action 4
ethtool -K eth3 lro off gro off
taskset -c 15 ./nm_offload eth3 4
| |
|
|
|
3.11, Ivan_83 (?), 16:14, 11/10/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
Не будет, те то что оно юзерспейс не будет означать что всё упирается именно в пересылку трафика: юзерспейс-ядро.
| |
|
|
1.12, gavrila pavlov (?), 23:24, 11/10/2015 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Непонятно, зачем сюда приплели этого графомана одинцова.
Ссылка на его недобложек битая.
Патч по гитхабовской ссылке тоже делал не он, там его вклад только в виде очередного идиотского комментария.
| |
|
2.22, Pavel Odintsov (ok), 11:39, 12/10/2015 [^] [^^] [^^^] [ответить]
| +9 +/– |
Патч по гитхабовской ссылке как раз делан мною - и именно поэтому Марек упомянул меня в статье, там же есть упоминание, что и код был написан мною :)
Но за высокую оценку спасибо!
| |
2.24, Pavel Odintsov (ok), 11:47, 12/10/2015 [^] [^^] [^^^] [ответить]
| +4 +/– |
> Непонятно, зачем сюда приплели этого графомана одинцова.
> Ссылка на его недобложек битая.
> Патч по гитхабовской ссылке тоже делал не он, там его вклад только
> в виде очередного идиотского комментария.
Я даже чуточку расширю свой пост. PoC изначально был вот здесь, https://github.com/pavel-odintsov/ixgbe-linux-netmap-single-queue/blob/master/ поиск по "CONFIG_NETMAP". Но код был влит не отдельны коммитом, а сразу всего кода, потому что я правил живой драйвер и честно говоря не думал что что-то выйдет, но оно собралось и даже заработало как ожидалось.
Марек уже собрал на базе этой очень черновой версии отличный удобный для применения патч - https://gist.github.com/majek/f7498fd15569dbb59ce3
Ребята из CloudFlare отлично поработали и процентов 80 работы сделано именно ими =) Теперь это не просто PoC - а готовый для применения стабильный подход.
P.S. зависть - это плохо =)
| |
|
3.28, nik (??), 10:08, 13/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
Зависть это хорошо для того кому завидут, и плохо для завидущего.
| |
|
|
1.13, Школьник (ok), 23:29, 11/10/2015 [ответить] [﹢﹢﹢] [ · · · ]
| –4 +/– |
Зачем в Linux эти окаменелые древности из давно умершей ОС? Неужели нет своих инженеров у того же RedHat, SuSE, IBM (и кто там еще оплачивает разработку Linux), способных написать подобное? Зачем в Linux этот out-of-tree модуль, да еще и под жлобской несвободной 2-clause BSD-лицензией, а не под православной GPLv2? А если этот Luigi Rizzo закроет свой код, то это что, получится, что все пользователи NetMap под Linux, в том числе из CloudFlare, на дядю-проприераста поработали забесплатно?
Я против подобных заигрываний, и думаю, что Торвальдс и Столлман (последний - своим авторитетным мнением) не позволят зайти этой инициативе слишком далеко.
| |
|
2.16, anonymous (??), 00:31, 12/10/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Зачем в Linux этот out-of-tree модуль, да еще и под жлобской несвободной 2-clause BSD-лицензией, а не под православной GPLv2? А если этот Luigi Rizzo закроет свой код, то это что, получится, что все пользователи NetMap под Linux, в том числе из CloudFlare, на дядю-проприераста поработали забесплатно?
Очень показательно, что это говорит человек, не написавший ни строчки открытого кода. Под любой лицензией.
| |
|
3.18, cmp (??), 05:58, 12/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
Мне интересно, а сколько нужно открыть ресторанов, чтобы утверждать, что какойто конкретный плохой, или может, чтобы утверждать что самолет не надежен нужно возглавить КБ, а разбиться на нем не достаточно?.. хватит бред нести
| |
|
4.39, count0krsk (ok), 22:37, 18/11/2015 [^] [^^] [^^^] [ответить]
| +/– |
> Мне интересно, а сколько нужно открыть ресторанов, чтобы утверждать, что какойто конкретный плохой
Утверждать что-либо может даже школьник, право на это закреплено Конституцией.
А вот какой вес будет иметь мнение человека - зависит от его статуса в социальной группе. Например если я в кругу друзей скажу, что КДЕ - отстой, со мной большая часть согласится. Если в универе - там вообще не поймут про что это почти все из группы, ибо виндузятники. Ну и т.д.
СМИ часто используют "говорящие головы" - экспертов, звезд и политиков для придания веса какому-то мнению правящих "элит".
| |
|
|
2.17, Аноним (-), 01:11, 12/10/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Я против подобных заигрываний, и думаю, что Торвальдс и Столлман (последний - своим авторитетным мнением) не позволят зайти этой инициативе слишком далеко.
Никто и не позволит ему окопаться в святом ядре. Во всяком случае, при первой попытке сабмита автор линуксового порта был обвинен в ереси Дейвом Миллером, поскольку попытался утверждать что pps с netmap-ом получился в 2 раза выше, что очень оскорбило Дейва:
>> I can not get line rate output with pktgen on existing kernels today.
>Something is incredibly wrong if this is the case.
http://marc.info/?l=linux-netdev&m=136640384802377&w=3
Сам тред с посыланием на йух нетмапа тут:
http://marc.info/?t=136639881600001&r=1&w=3
| |
|
3.21, Школьник (ok), 10:30, 12/10/2015 [^] [^^] [^^^] [ответить]
| –1 +/– |
Шикарный тред, спасибо, анон!
Еще вот это понравилось:
>If someone is showing you 10x improvement over what Linux gives you,
>then we are doing something wrong and we shouldnt be living in some
>parallel universe and claim theres nothing to see here.
Похоже, им пора вызывать святую инквизицию и запасаться дровами.
| |
|
2.25, Pavel Odintsov (ok), 11:49, 12/10/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Зачем в Linux эти окаменелые древности из давно умершей ОС? Неужели нет
> своих инженеров у того же RedHat, SuSE, IBM (и кто там
> еще оплачивает разработку Linux), способных написать подобное? Зачем в Linux этот
> out-of-tree модуль, да еще и под жлобской несвободной 2-clause BSD-лицензией, а
> не под православной GPLv2? А если этот Luigi Rizzo закроет свой
> код, то это что, получится, что все пользователи NetMap под Linux,
> в том числе из CloudFlare, на дядю-проприераста поработали забесплатно?
> Я против подобных заигрываний, и думаю, что Торвальдс и Столлман (последний -
> своим авторитетным мнением) не позволят зайти этой инициативе слишком далеко.
Аналогов в Linux NetMap'у нету, увы. Есть AF_PACKET, прочтите про него: habrahabr.ru/post/261161/ но он решительно больше жрет процессор и обеспечивает меньшие скорости захвата.
За ссылку на хабру сори =( Но в другом месте статьи нету.
| |
|
3.27, Школьник (ok), 13:47, 12/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
Большое спасибо за статью! Узнал для себя немало нового.
Но вот что касается NetMap, то мне кажется, что это в корне неверный подход - брать абсолютно чуждую для Линукса наработку как с технической точки зрения (тот же Stephen Hemminger это признает: "It still has all the BSD ugliness"), так и - и это ГЛАВНОЕ - с идеологической. Несвободному коду, равно как и коду, на нем основанному, не место в ядре, иначе Линукс превратится в еще одну проприерастную подстилку, как та же боязде, и рано или поздно закономерно повторит ее судьбу - кто вот сейчас помнит о боязде? Никто. И никакие временно достигнутые преимущества в скорости обработки пакетов не оправдывают использование несвободного кода под лицензией BSD.
Единственное, что тут можно сделать, чтобы хоть немного уменьшить ущерб - это добавить шапку GPLv2 в код из родительского репозитория NetMap, чтобы защитить возможные в будущем правки, сделанные в рамках Linux, от попадания обратно в репозиторий NetMap, который поддерживает Luigi Rizzo. Иначе эти правки рано или поздно, но точно попадут проприерастам в руки, и получится, что авторы правок станут соучастниками преступления. Жаль, конечно, что шапку BSD при этом убрать нельзя - того гляди, увидит потом, через время, кто-нибудь, что это неродной для Linux код, поищет его в гугле и обнаружит репозиторий Luigi Rizzo, да еще и чего доброго правки туда сделает, а не в Linux.
А вообще, я уверен, что направь Вы и инженеры из CloudFlare усилия на доработку существующих, родных для Линукса решений, у сообщества уже получилось бы довести их до уровня NatMap, и при этом не пришлось бы идти на сделку с совестью и прикасаться к зловонному коду под лицензией BSD.
| |
|
4.29, cebka (?), 13:15, 13/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
Автор может сменить лицензию на свой код, невзирая на то, gpl она, bsd или вообще public domain. А вот "добавить шапку" gpl - это как раз нарушение авторских прав как в случае gpl, так и в случае gpl кода. Единственный тип лицензий, по которому можно "добавить шапку", - это public domain like (cc0, unlicense). Впрочем, я практически полностью уверен, что вы пытаетесь толсто троллить, потому что иначе существование настолько тупых людей противоречит моему мировоззрению.
| |
|
5.30, Школьник (ok), 15:50, 13/10/2015 [^] [^^] [^^^] [ответить]
| +1 +/– |
А вот и бздюшное трололо пожаловало.
Ну расскажи-ка мне, умный, где в 2-clause лицензии BSD запрет на убирание шапки? Там написано, что при любых обстоятельствах шапка должна остаться. Но никто и никогда не запретит ни мне, ни кому-либо еще добавить GPL-шапку над BSD-шной, чтобы ЗАЩИТИТЬ мои изменения, которые я сделал в файле, от тупого воровства со стороны проприерастов и их подстилок-бздюшников. Лицензия BSD (в отличие от GPL) не запрещает никаких дополнительных ограничений на исходный код, иначе она не была бы столь любима именно за это проприерастами. Так что кушай да не обляпайся, и смотри дальше, как Apple, Microsoft, NetApp и прочие будут пользоваться трудами бздюков АБСОЛЮТНО нахаляву.
| |
|
6.31, cebka (?), 16:09, 13/10/2015 [^] [^^] [^^^] [ответить]
| –2 +/– |
Так и есть, но добавление gpl шапки влияет только на внесенные изменения, но не на исходный код. Поэтому, конечно, так никто не делает - люди с психическими отклонениями такого характера просто неспособны писать код, который стоило бы защищать GPL. Исходный же посыл был в том, что единственные люди, способные *менять* лицензию на код - это авторы этого кода во всех случаях, кроме случая public domain like лицензий.
| |
|
7.32, Школьник (ok), 16:40, 13/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
>добавление gpl шапки влияет только на внесенные изменения
Естественно. К сожалению, никто ведь не запретит загуглить оригинал файла под лицензией BSD. Но в любом случае уже хорошо, что бздюки изменений не смогут получить.
>единственные люди, способные *менять* лицензию на код - это авторы этого кода во всех случаях
Нет, BSD не запрещает налагать дополнительные ограничения на исходный код и превращать его в GPL-лицензированный. Ты правда думаешь, что Microsoft у себя в репозитории не добавила проприетарную лицензию, когда дернула из BSD код TCP/IP-стека, "случайно" позабыв с бздюками поделиться?
| |
|
8.33, cebka (?), 17:12, 13/10/2015 [^] [^^] [^^^] [ответить] | +1 +/– | Да, удивительная каша в голове Повторяю для закрепления материала НЕВОЗМОЖНО в... текст свёрнут, показать | |
|
|
6.34, Нимано (?), 17:20, 13/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
> как Apple, Microsoft, NetApp и Школьник будут пользоваться трудами бздюков АБСОЛЮТНО нахаляву.
гордись!
| |
|
|
|
3.36, sdaasd (?), 13:27, 15/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
Ну вообще-то есть PF_RING, который используется в связки со Snort и Suricata для реализациии функциональности IDS/IPS в Linux
Есть и другие технологгии высокоскоросной обработки пакетов на чиная от UIO-DMA заканчивая INTEL PPDK.
| |
|
4.37, sdaasd (?), 13:31, 15/10/2015 [^] [^^] [^^^] [ответить]
| +/– |
Причем Intel DPDK гораздо перспективнее любой реализации хаков (netmap , pf_ring) минуя TCP/IP стек. Так как оптимизирован под конкретное железо.
| |
|
|
|
1.14, gavrila pavlov (?), 23:36, 11/10/2015 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Хотя нет, оно отметилось в виде ценного совета:
We would like to thank Pavel Odintsov who suggested the possibility of using Netmap this way. He even prepared the initial hack we based our work on.
| |
|