Профиль: Аноним (вход | регистрация)
OpenNET

[ новости /+++ | форум | теги |    ]



"Опубликован сетевой стек F-Stack 2.0, работающий в пользовательском пространстве"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Опубликован сетевой стек F-Stack 2.0, работающий в пользовательском пространстве"  +/–
Сообщение от opennews (??), 22-Окт-26, 14:50 
Состоялся релиз проекта F-Stack 2.0, развивающего редакцию сетевого стека FreeBSD, адаптированную для обособленной работы в пользовательском пространстве  в форме библиотеки. Проект создан крупнейшей в Китае  телекоммуникационной  компанией Tencent и используется в её продуктах и сервисах.  Код написан на языке Си  и распространяется под лицензией BSD. Поддерживается работа в Linux и FreeBSD. Проектом также поддерживаются переведённые на использование  F-Stack редакции Nginx 1.28 и СУБД Redis 6.2.6, демонстрирующие производительность выше обычных сборок, работающих поверх системного сетевого стека...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=66526

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +2 +/–
Сообщение от Андрей (??), 22-Окт-26, 14:50 
DPDK + FreeBSD-15 stack in userland = вот это сила!

По отдельности всё проверено, правда без userland. Точно работает.

Ответить | Правка | Наверх | Cообщить модератору

10. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним (10), 22-Окт-26, 15:17 
> DPDK (Data Plane Development Kit), развивающий набор библиотек для низкоуровневой работы с сетевыми адаптерами.

Низкоуровневый доступ к сетевым адаптерам требует прав root. А поскольку это библиотеки, динамически слинкованные с прграммой, то она тоже должна работать под root?

Ответить | Правка | Наверх | Cообщить модератору

14. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Аноним (14), 22-Окт-26, 15:23 
Ты в курсе что такое IOMMU и DMA и почему тут приложению не требуется рут?
Ответить | Правка | Наверх | Cообщить модератору

17. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +2 +/–
Сообщение от Аноним (10), 22-Окт-26, 15:29 
Ага, а доступ к контроллеру DMA уже позволен простому юзеру?
Ответить | Правка | Наверх | Cообщить модератору

19. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Kilrathi (ok), 22-Окт-26, 15:39 
sudo chown nginx-user:fstacknetgroup /dev/...
sudo setcap ... /user/local/bin/fstack-nginx
Ответить | Правка | Наверх | Cообщить модератору

21. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним (10), 22-Окт-26, 16:02 
И какие CAP надо дать для позволения записывать в регистры управления контроллеров?
Ответить | Правка | Наверх | Cообщить модератору

26. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Kilrathi (ok), 22-Окт-26, 16:18 
> И какие CAP надо дать для позволения записывать в регистры управления контроллеров?

таки классическая "драйверная" cap_sys_rawio для mmap к отображению регистров в памяти

Ответить | Правка | Наверх | Cообщить модератору

28. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (10), 22-Окт-26, 16:57 
В случае, если взломают эту одну прогу, считай, что зарутовали весь остальной сервер.
Ответить | Правка | Наверх | Cообщить модератору

35. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +2 +/–
Сообщение от Аноним (35), 22-Окт-26, 18:03 
А другой безопасности в юниксвее не предусмотрено. Пользуйтесь чем-то другим.
Ответить | Правка | Наверх | Cообщить модератору

43. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (10), 22-Окт-26, 18:56 
В чём-то другом всё хуже.
В данном случае, нам предлагают не юниксвей. Это, скорее, DOS way на стероидах.
Ответить | Правка | Наверх | Cообщить модератору

69. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (69), 24-Окт-26, 21:00 
Что то, что это. Причем из одной эпохи
Ответить | Правка | Наверх | Cообщить модератору

68. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Ckotctvo (?), 24-Окт-26, 12:58 
Под iommu устройство не может писать и читать что попало
Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

2. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от senaemail (ok), 22-Окт-26, 14:53 
Я так понимаю, подразумевается, что приложение получает в эксклюзивное пользование сетевую карту и дальше всё рулит самостоятельно? ОК это понятно.

А возможность поделиться сетью с другим приложениями есть? Может как-то в виде прокси?

Ответить | Правка | Наверх | Cообщить модератору

8. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +3 +/–
Сообщение от Kilrathi (ok), 22-Окт-26, 15:11 
В данном случае userspace означает взаимодействие с сетевушкой напрямую в обход ядра/системы.
А так это почти обычный сетевой интерфейс
Ничто не мешает собрать комплект сетевых приложений на общий компонент доступа

Можно поднять проксирование, но пропадет весь смысл прямого эксклюзивного взаимодействия с железом

Ответить | Правка | Наверх | Cообщить модератору

55. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от sena (ok), 23-Окт-26, 03:21 
> В данном случае userspace означает взаимодействие с сетевушкой напрямую в обход ядра/системы.
> А так это почти обычный сетевой интерфейс
> Ничто не мешает собрать комплект сетевых приложений на общий компонент доступа
> Можно поднять проксирование, но пропадет весь смысл прямого эксклюзивного взаимодействия
> с железом

Смысл в том что моё приложение будет работать эксклюзивно и получать максимальную производительность, например nginx-custom. Но может быть мне нужно чтобы ещё иногда какие-то другие приложения, например, apt update работали через тот же интерфейс, пусть медленно и печально. Просто интересуюсь, предусмотрено ли что-то такое или это надо самому делать если понадобится. И тогда проще вторую сетевую карту поставить...

Ответить | Правка | Наверх | Cообщить модератору

61. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от hn (?), 23-Окт-26, 09:33 
mellanox так работает, не нужно биндить интерфейс, будет доступен и в dpdk и в линуксе.
либо использовать virtio user(точно не скажу, мы полностью захватываем карту)
Ответить | Правка | Наверх | Cообщить модератору

65. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Я (??), 24-Окт-26, 07:27 
Виртуальные сетевые адаптеры могут помочь, наверно. На некоторых сетевухах они есть аппаратные даже, т.е. один реальный сетевой порт на сетевой карте программно выглядит как несколько виртуальных сетевых портов.
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

3. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –6 +/–
Сообщение от Аноним (3), 22-Окт-26, 14:55 
>Проект создан крупнейшей в Китае телекоммуникационной компанией Tencent и используется в её продуктах и сервисах

Дальше не читал. Занавес.

Ответить | Правка | Наверх | Cообщить модератору

5. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (5), 22-Окт-26, 15:04 
Код открыт или какая там стандартная мантра?
Ответить | Правка | Наверх | Cообщить модератору

9. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Kilrathi (ok), 22-Окт-26, 15:12 
https://github.com/F-Stack/f-stack
Ответить | Правка | Наверх | Cообщить модератору

7. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –3 +/–
Сообщение от Pahanivo (ok), 22-Окт-26, 15:09 
А зря. Там еще много приколов )) Там например одна приложуха может уронить весь стек ибо он в юзерспейсе, и все встает раком - на семь бед только ресет.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

11. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Kilrathi (ok), 22-Окт-26, 15:20 
Насколько я понял с доков: там одна из фишек в привязке к ядрам и сетевушкам, т.е. рухнет только конкретный сервис, висящий на конкретной связке для повышения сетевой производительности и антидоса.
Соответственно, просто по стороннему каналу (второй-третьей... штатной "ядерной" сетевушке) подключаешься и перезапускаешь, если не озадачился системой контроля, занимающейся постоянным мониторингом и, при необходимости, перезапуском.
Ответить | Правка | Наверх | Cообщить модератору

12. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним (14), 22-Окт-26, 15:20 
Ядерный стек никуда не исчез. Так что без сети остальные приложения не останутся.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

18. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –2 +/–
Сообщение от Pahanivo (ok), 22-Окт-26, 15:36 
Наличие ядерного стека не противоречит тому, что все привязанное к неядерному упало ...
Ответить | Правка | Наверх | Cообщить модератору

23. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (35), 22-Окт-26, 16:08 
Ну упало и упало. Systemd поднимет. Ядерный стек когда падает, за ним следом всё ядро улетает.
Ответить | Правка | Наверх | Cообщить модератору

39. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (14), 22-Окт-26, 18:31 
И что? Это ж прям микроядренная ОС получается с дровами и сетевым стеком в юзерспейсе со всеми его плюсами, разве нет?
Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

45. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (10), 22-Окт-26, 19:02 
В микроядерной ОС сетевой стек хоть и на пользовательском уровне привилегий, но в отдельном адресном пространстве от приложений.
Ответить | Правка | Наверх | Cообщить модератору

46. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним (14), 22-Окт-26, 19:05 
А что, при использовании сабжа виртуальная память вдруг отключается?
Ответить | Правка | Наверх | Cообщить модератору

56. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (14), 23-Окт-26, 03:40 
И, кстати... Допустим в микроядерной ОС, как ты говоришь, сетевой стек в отдельном адресном пространстве, типа юзерспейсный сервис со своей таблицей виртуальных адресов, и общение с ним происходит через какие-нить сообщения. Если в нем null-ptr-deref или use-after-free, то как тебе поможет его "отдельность" если он шлёпнется?
Ответить | Правка | К родителю #45 | Наверх | Cообщить модератору

57. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (14), 23-Окт-26, 03:42 
Ну ок, а в если ядерный стек упал, то будет лучше?
Ответить | Правка | К родителю #18 | Наверх | Cообщить модератору

37. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Аноним (37), 22-Окт-26, 18:23 
Не весь а только свой, и нет, не встаёт - приложение перезапускается вместе со стеком. Вобщем-то всё ожидаемо.
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

40. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от aname (ok), 22-Окт-26, 18:31 
"Тысячи глаз" ©®™ не осилили.

Занавес

Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

67. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аныным (?), 24-Окт-26, 10:30 
Как будто китайский опенсорц чемто сильно отличается от пендосского с закладками от редхата
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

6. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним1234 (?), 22-Окт-26, 15:07 
То есть нужно запустить с правами рута своё сетевое прилоежние, чтобы оно могло низкоуровнево общаться с сетевой картой.
Ответить | Правка | Наверх | Cообщить модератору

13. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –2 +/–
Сообщение от Аноним (14), 22-Окт-26, 15:22 
Ты в курсе что такое IOMMU и DMA?
Ответить | Правка | Наверх | Cообщить модератору

15. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Инопланетянин (?), 22-Окт-26, 15:25 
Что по производительности?
Ответить | Правка | Наверх | Cообщить модератору

25. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +4 +/–
Сообщение от Хру (?), 22-Окт-26, 16:13 
Дохрена:) Выжимает в асфальт 400Gbit, если оборудование тянет и одно ядро отдать тупо под опрос очереди и еще несколько на роутинг.
Ответить | Правка | Наверх | Cообщить модератору

52. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Tron is Whistling (?), 23-Окт-26, 00:32 
Естественно в тупом форвардинге на два узла и с минимумом логики :)
Как только в табличке появляется первая тысяча узлов, всё становится гораздо интереснее.
Ответить | Правка | Наверх | Cообщить модератору

53. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Tron is Whistling (?), 23-Окт-26, 00:34 
Я правда знаю способ очень тупого форвардинга, который реально может выжать тапку в пол аж с fullview на почти да, одном ядре, но это только для IPv4, и он вам не понравится.
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

16. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Инопланетянин (?), 22-Окт-26, 15:27 
В чем отличие от passt https://passt.top/passt/about/ ?
Ответить | Правка | Наверх | Cообщить модератору

24. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Хру (?), 22-Окт-26, 16:11 
Теплое с мягким:) Паста это про связать виртуалку с хостом, а сабж это про стек в юзерспейсе и обработку пакетов опросом очереди карты, а не через прерывания.
Ответить | Правка | Наверх | Cообщить модератору

71. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Pahanivo (ok), 26-Окт-26, 01:26 
> Теплое с мягким:) Паста это про связать виртуалку с хостом, а сабж
> это про стек в юзерспейсе и обработку пакетов опросом очереди карты,
> а не через прерывания.

фрибздишный device polling?

Ответить | Правка | Наверх | Cообщить модератору

63. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Zig мой Zig (?), 23-Окт-26, 11:15 
Кал калычь которыц жрет 40-60мб наодин контейнер и который любезно radhat сделали безальтернативным потому что их nih всегда
Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

66. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Я (??), 24-Окт-26, 08:15 
1. Назначение и архитектура

• passt (Plug A Simple Socket Transport):
Это легковесная утилита, которая работает как «мост» между изолированным сетевым пространством (контейнера Podman или виртуалки QEMU) и хост-системой. Она использует стандартные системные вызовы Linux (POSIX sockets) на стороне хоста. Ей не нужны специальные права суперпользователя (root), и она не требует создания виртуальных интерфейсов (типа tun/tap) на хосте. Она просто транслирует пакеты 2-го уровня (Ethernet) из виртуалки в обычные сокеты 4-го уровня (TCP/UDP) хоста.

• F-Stack:
Это полноценный, тяжеловесный фреймворк для разработки высокопроизводительных сетевых приложений. Он полностью заменяет сетевой стек Linux, напрямую забирая сетевую карту под свой контроль с помощью технологии DPDK (Data Plane Development Kit). Данные обрабатываются в пространстве пользователя с помощью перенесённого (портированного) сетевого стека ОС FreeBSD.

2. Производительность и потребление ресурсов

• passt:
Ориентирован на минимальное потребление ресурсов и безопасность. Он работает в фоновом режиме, почти не тратит процессорное время, пока нет трафика, и запускается без привилегий. Его производительности с запасом хватает для типичных задач контейнеризации и виртуализации, но он ограничен скоростью стандартных системных вызовов Linux.

• F-Stack:
Нацелен на экстремальную производительность и минимальную задержку (low latency). Так как он использует DPDK, один или несколько процессорных потоков будут постоянно загружены на 100% (так называемый Poll Mode Driver, который непрерывно опрашивает сетевую карту в ожидании пакетов). Это позволяет обрабатывать миллионы запросов в секунду (до 10M RPS), полностью утилизируя физическую пропускную способность сетевого кабеля.

3. Простота внедрения и интеграция

• passt:
Интегрируется прозрачно. Вам не нужно переписывать свой код. Например, Podman использует его «из коробки» (в режиме pasta) для организации сети в беспричинных (rootless) контейнерах. Приложение внутри контейнера думает, что работает с обычной сетью.

• F-Stack:
Требует адаптации или пересборки приложений. Чтобы программа работала через F-Stack, она должна использовать его собственные API (FF API, встроенные микропотоки/сопрограммы или модифицированные под Epoll/Kqueue интерфейсы). У проекта есть готовые модифицированные сборки популярных решений, таких как Nginx и Redis, чтобы они могли работать на максимальной скорости напрямую через DPDK.

Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

20. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Аноним (20), 22-Окт-26, 15:50 
А еще уефи ругали за доступ к инету... Теперь цве в опен сурс само будет просматривать котиков без разрешения.
Ответить | Правка | Наверх | Cообщить модератору

22. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Аноним (10), 22-Окт-26, 16:06 
Согласен, с точки зрения сетевой безопасности, это большое "технологическое отверстие".
Ответить | Правка | Наверх | Cообщить модератору

41. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним (14), 22-Окт-26, 18:47 
Кто ругал? UEFI обычный код выполняемый на CPU, почему он вдруг не может иметь доступ в Интернет? Так-то и BIOS умел PXE-загрузку, а значит и в Инет спокойно мог так же вылезти - TCP/IP то у него есть. BIOS тож ругали?
Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

58. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (58), 23-Окт-26, 07:53 
Биос не самодостаточен, если ты сам из прочитанного не догадался.
Ответить | Правка | Наверх | Cообщить модератору

59. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Alladin (?), 23-Окт-26, 07:59 
то что вы называете биосом называлось efi и оно вполне самодостаточно до переходов в uefi.

а настоящий биос эт вам нужно в 2000е и раньше

Ответить | Правка | Наверх | Cообщить модератору

60. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (58), 23-Окт-26, 08:49 
Авардсы всякие это не ефи и не надо подменять понятия.
Ответить | Правка | Наверх | Cообщить модератору

70. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (69), 24-Окт-26, 21:06 
Только проблема в том что он там и нах не нужен, кроме как для ота биоса что есть ппц какая лопата для среднестатистического юзера
Ответить | Правка | К родителю #41 | Наверх | Cообщить модератору

27. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Ivan_83 (ok), 22-Окт-26, 16:36 
Если там же есть поддержка загружаемых TCP стёков то линуксоиды наконец то смогут попробовать нормальный CC=rack от нетфликса вместо дурацких bbr от гугла :)
Ответить | Правка | Наверх | Cообщить модератору

29. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от beany (?), 22-Окт-26, 17:03 
Во фряху тащят драйвера из линукса, в линукс портируют сетевой стек из фряхи. Весело и задорно, а главное, что все при деле!
Ответить | Правка | Наверх | Cообщить модератору

33. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним1234 (?), 22-Окт-26, 17:36 
> в линукс портируют сетевой стек из фряхи.

Его бы взяли из Линукса, но в тут он GPL-ный.

Ответить | Правка | Наверх | Cообщить модератору

49. Скрыто модератором  +/–
Сообщение от beany (?), 22-Окт-26, 20:08 
Ответить | Правка | Наверх | Cообщить модератору

54. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Ivan_83 (ok), 23-Окт-26, 03:19 
Не взяли бы.
Точнее года до 2017-2018 может и взяли бы, но потом нетфликс подсуетился и теперь смысла в этом нет.
А фряшный взяли в линукс и не только потому что он компактный и не так сильно размазан по ядру.

Я когда то в одного ARP+IPv4 вытащил в нетграф ноду до минимально рабочего состояния. Ну как вытащил - скорее переписал/портировал, не так как в сабже сделали.

Ответить | Правка | К родителю #33 | Наверх | Cообщить модератору

30. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Аноним (30), 22-Окт-26, 17:08 
Уважаемые эксперты опеннета, объясните почему сетевой стэк в юзерспейсе должен работать быстрее чем в ядре? Обычно же догма что в ядре быстрее и за что обычно критикуют дизайн микроядерных ос.
Ответить | Правка | Наверх | Cообщить модератору

31. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +1 +/–
Сообщение от Ivan_83 (ok), 22-Окт-26, 17:32 
Обычно ответ на такой вопрос: batching.
Когда пакеты обрабатываются сразу пачками в рамках одного потока, без переключения контекста.
Во фряхе тоже можно выставить net.isr.dispatch=direct и это будет близко по смыслу.
Да и ядерные потоки более лёгкие чем юзерспейсные.

Ещё в юзерспейсе доступны SIMD, но не уверен что для IPv4 это даёт какие то заметные улучшения.
В общем для фаерволинга/роутинга мне трудно с ходу сказать о плюсах f-stack.

Если смотреть на связку f-stack+nginx то здесь явно уйдут переключения контекста с ядерного на юзерспейсный и копирования из ядра в пространство процесса и обратно. (как минимум их можно исключить приложив усилия)

Но лучше поискать работы тех кто делал или хотя бы на сайте фстака почитать.

Ответить | Правка | Наверх | Cообщить модератору

32. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Аноним1234 (?), 22-Окт-26, 17:35 
Из-за корутин прежде всего.
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

34. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Ivan_83 (ok), 22-Окт-26, 17:38 
Покажите где вы в сабже увидели корутины?
Ответить | Правка | Наверх | Cообщить модератору

36. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним1234 (?), 22-Окт-26, 18:07 
> Покажите где вы в сабже увидели корутины?

"Provides micro thread interface. Various applications with stateful applications can easily use F-Stack to get high performance without processing complex asynchronous logic."

Ответить | Правка | Наверх | Cообщить модератору

48. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –1 +/–
Сообщение от Ivan_83 (ok), 22-Окт-26, 19:31 
https://github.com/F-Stack/f-stack/blob/dev/adapter/micro_th...
Это больше похоже не на корутины а на замену ядерным потокам.
(Middleware adapters: micro_thread + syscall (builds libff_syscall.so for LD_PRELOAD))

Но формально можно и корутинами назвать, поскольку с точки зрения ОС это будет один поток, а внутри будут переключения.

Ответить | Правка | Наверх | Cообщить модератору

38. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –4 +/–
Сообщение от Аноним (37), 22-Окт-26, 18:24 
> Обычно же догма что в ядре быстрее

Нет, ядро не быстрее. С чего ему быть быстрее?

> и за что обычно критикуют дизайн микроядерных ос.

Время занимает копирование данных туда-сюда.

Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

42. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +4 +/–
Сообщение от Аноним (14), 22-Окт-26, 18:50 
Потому что из ядра в юзерспейс и обратно пакеты надо как-то копировать, и постоянно переключать контекст сохраняя регистры в память и потом их восстанавливать обратно. А в сабж сетевой стек напрямую читает данные из примаппленной через DMA памяти.
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

51. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Tron is Whistling (?), 23-Окт-26, 00:30 
Це для очень специфичных применений.
Когда можно обрезать всё, что даёт стек общего назначения в ядре, и заниматься более узкоспециализированной задачей.
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

44. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (44), 22-Окт-26, 18:58 
> в пользовательском пространстве и напрямую работающий с сетевым оборудованием

Что-то тут не сходится...

Ответить | Правка | Наверх | Cообщить модератору

47. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от vitalif (ok), 22-Окт-26, 19:21 
>Добавлена возможность изменения размера MTU (Maximum transmission unit)

Джва (на самом деле 7) лет ждал

Ответить | Правка | Наверх | Cообщить модератору

50. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  –2 +/–
Сообщение от Tron is Whistling (?), 23-Окт-26, 00:28 
DPDK, юзерспейс.
Всё бы ничего - но зачем в этой связке фряха? Просто хочется проблем?
DPDK поверх пингвина ведёт себя гораздо шустрее.
Ответить | Правка | Наверх | Cообщить модератору

64. "Опубликован сетевой стек F-Stack 2.0, работающий в пользоват..."  +/–
Сообщение от Аноним (64), 23-Окт-26, 19:06 
Создавать больше пользовательских сетей поверх традиционных?
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: