Morty Posted July 31, 2022 Posted July 31, 2022 (edited) Всем привет Интересует несколько вопросов по поводу железа для роутинга: 1)Нужна ли ECC память для роутинга и как она влияет на производительность? 2)Если взять линейку процессоров Xeon E5-2600 V3/V4, то у процессоров V3 при 10 и более ядрах (у V4 при 12 и более ядрах) вместо 4-канального контроллера - два 2-канальных, которые соединяются внутренней шиной процессора. При желании процессор можно разделить на два узла NUMA. На сколько это влияет на производительность роутинга? Можно ли раскидывать прерывания сетевой между всеми ядрами таких процессоров? 3)Цель - с помощью network namespaces разделить сервер на бордер и брас: одна сетевая привяжется к одному ЦП, другая сетевая привяжется к другому ЦП. Может быть вместо одного сервера есть смысл собрать два тазика на б/у Ryzen? Edited July 31, 2022 by 1boris Вставить ник Quote
sirmax Posted July 31, 2022 Posted July 31, 2022 О какой нагрузке идёт речь? про netns ответ да, я так делал но на смешных 5гиг нагрузки еще и шейпер в отдельном netns что б не заморачиваться и ifb Вставить ник Quote
Morty Posted July 31, 2022 Author Posted July 31, 2022 (edited) В 31.07.2022 в 22:06, sirmax сказал: О какой нагрузке идёт речь? про netns ответ да, я так делал но на смешных 5гиг нагрузки еще и шейкер в отдельном netns что б не заморачиваться и ifb Средняя нагрузка 4-5 гбит, со временем нужно будет максимум 10 гбит, роутинг без НАТа, QinQ, 4 full view, ipt_ratelimit, dhcp server Мне больше нравится идея с сервером, т.к. 2 БП и можно поставить второй сервер для резервирования, но смутило два 2-канальных контроллера Edited July 31, 2022 by 1boris Вставить ник Quote
sirmax Posted July 31, 2022 Posted July 31, 2022 У меня нет опыта с Нат на 10 гиг но мое впечатление что с этим справится любой дистрибутив с дефолтными настройками на вашем железе нума никак не повредит про ipt_ratelimit не могу сказать, не работал под такими нагрузками я использую классически шейпер выворачивая тех немногих кого надо шейпить в отдельный неймспейс (и vrf там где терминирую вланы) что б не гонять трафик который шейпить не надо ( инет на скорости порта) через лишние правила в целом мы идём от Линукс-для-всего в сторону железок и я тут где то писал - железку из готового конфига поднимет кто угодно, а сервер уже нет Я осторожно смотрю микротик как потенциально замену Про dhcp он у нас испокон веку в отдельном неймспейсе так банально удобнее дебагать Вставить ник Quote
pppoetest Posted August 1, 2022 Posted August 1, 2022 В 01.08.2022 в 01:17, 1boris сказал: Средняя нагрузка 4-5 гбит, со временем нужно будет максимум 10 гбит, роутинг без НАТа, QinQ, 4 full view, ipt_ratelimit qinq, accel-ppp, ipt_ratelimit, xt_nat, 2fw, на однопроцессорном Gold 6226R, в чнн 8гиг, 20% на ядро. Если нат не нужен E5-2600 вытянет легко. Вставить ник Quote
Умник Posted August 1, 2022 Posted August 1, 2022 В 01.08.2022 в 08:27, pppoetest сказал: 20% на ядро На ядро или на поток? HyperThreading используете? Вставить ник Quote
pppoetest Posted August 1, 2022 Posted August 1, 2022 В 01.08.2022 в 11:32, Умник сказал: HyperThreading используете? Disabled Вставить ник Quote
Стич Posted August 1, 2022 Posted August 1, 2022 Вот каким бы сертификатом ССС в таких решениях прикрыться. Вставить ник Quote
VolanD666 Posted August 1, 2022 Posted August 1, 2022 В 01.08.2022 в 10:03, Стич сказал: Вот каким бы сертификатом ССС в таких решениях прикрыться. А просто на сервер не проканает? Откуда им знать что там? Вставить ник Quote
Стич Posted August 1, 2022 Posted August 1, 2022 (edited) В 01.08.2022 в 10:24, VolanD666 сказал: А просто на сервер не проканает? Откуда им знать что там? Логично что спросят сертификат ССС на ПО и ещё производства РФ Edited August 1, 2022 by Стич Вставить ник Quote
jffulcrum Posted August 1, 2022 Posted August 1, 2022 В 31.07.2022 в 22:01, 1boris сказал: 1)Нужна ли ECC память для роутинга и как она влияет на производительность? ECC память просто нужна и всё. Отвалы памяти явление не такое уж редкое. В 31.07.2022 в 22:01, 1boris сказал: 2)Если взять линейку процессоров Xeon E5-2600 V3/V4, то у процессоров V3 при 10 и более ядрах (у V4 при 12 и более ядрах) вместо 4-канального контроллера - два 2-канальных, которые соединяются внутренней шиной процессора. При желании процессор можно разделить на два узла NUMA. На сколько это влияет на производительность роутинга? Можно ли раскидывать прерывания сетевой между всеми ядрами таких процессоров? NUMA для роутинга не нужна и даже противопоказана, т.к. обе ноды работают по-сути с одними и теми же данными. В идеале иметь одну двухпортовую карту и гнать между портами. Однако, если BRAS, и нужно еще разбирать какой-нибудь PPP/NATить, лучше две карты. В 31.07.2022 в 22:01, 1boris сказал: 3)Цель - с помощью network namespaces разделить сервер на бордер и брас: одна сетевая привяжется к одному ЦП, другая сетевая привяжется к другому ЦП. Может быть вместо одного сервера есть смысл собрать два тазика на б/у Ryzen? Namespaces - это огромный оверхед, причем напрямую растущий от pps. На 10Г у вас половина CPU будет уходить в context switching и прочие прелести. Это метод, когда надо отделить что-то очень ограниченное (и то сейчас проще контейнер сделать), или когда надо любой ценой впихнуться именно в одну железку, т.к. вообще нет места для второй. Если место в стойке есть, два сервера выдадут куда больше и проще, чем один с namespaces. Вставить ник Quote
ne-vlezay80 Posted August 1, 2022 Posted August 1, 2022 В 01.08.2022 в 11:41, Стич сказал: Логично что спросят сертификат ССС на ПО и ещё производства РФ А зачем? Вставить ник Quote
sirmax Posted August 1, 2022 Posted August 1, 2022 2 часа назад, jffulcrum сказал: Это метод, когда надо отделить что-то очень ограниченное Контейнеры всех видов используют нейспейсы в них собственно и нет ничего кроме чрута и неймспейсов ну и слои фс ещё Вставить ник Quote
Умник Posted August 1, 2022 Posted August 1, 2022 (edited) В 01.08.2022 в 14:32, jffulcrum сказал: Namespaces - это огромный оверхед, причем напрямую растущий от pps. На 10Г у вас половина CPU будет уходить в context switching и прочие прелести. Namespaces работают полностью в пространстве ядра, kernel threads при этом не используются. Откуда переключение контекстов? Или у вас какое-то неклассическое понимание context switch? Edited August 1, 2022 by Умник Вставить ник Quote
Morty Posted August 2, 2022 Author Posted August 2, 2022 (edited) В 01.08.2022 в 14:32, jffulcrum сказал: NUMA для роутинга не нужна и даже противопоказана В 31.07.2022 в 22:36, sirmax сказал: нума никак не повредит Пока неясно как влияет связь между двумя контроллерами памяти через шину внутри процессора на роутинг. Стоит выбор между e5-2667 v3 (8/16 3.2Ггц), у которого один контроллер памяти на 4 потока, и e5-2697 v3 (14/28 2.6 Ггц), у которого два контроллера памяти по 2 потока. Если два контроллера действительно влияют на производительность, то получается нет смысла брать камень больше 8 ядер? Или даже 8-ми ядерного e5-2667 v3 хватит под мои задачи? Edited August 2, 2022 by 1boris Вставить ник Quote
sirmax Posted August 2, 2022 Posted August 2, 2022 Я бы смотрел в первую очередь на частоту одного ядра, если покупаете новый сервер идеально если ядер больше чем очередей на картах но мне кажется что вашу нагрузку переварит любой из вариантов Вставить ник Quote
pppoetest Posted August 2, 2022 Posted August 2, 2022 В 02.08.2022 в 15:46, 1boris сказал: Стоит выбор между e5-2667 v3 (8/16 3.2Ггц), у которого один контроллер памяти на 4 потока, и e5-2697 v3 (14/28 2.6 Ггц), у которого два контроллера памяти по 2 потока. У меня стоял 2667в3, выбирал по частоте. В 02.08.2022 в 16:19, sirmax сказал: мне кажется что вашу нагрузку переварит любой из вариантов +1 Вставить ник Quote
kayot Posted August 3, 2022 Posted August 3, 2022 В 02.08.2022 в 12:46, 1boris сказал: Если два контроллера действительно влияют на производительность, то получается нет смысла брать камень больше 8 ядер? Там не то что бы 2 контроллера, Вы немного неправильно поняли схему LCC/MCC/HCC чипов. Контроллеры памяти, как и массивы ядер там в любом случае отдельные, с соединением кольцевой шиной. В чипах до 8 ядер используетcя кристалл LCC с физическими 8 ядрами, шина одна, красивое кольцо. Если ядер 10-12 - используется чип MCC, уже с 2 шинами с 8 и 4 ядер и 2 контроллерами, по 1 на каждую шину. В 14-18 идет кристалл HCC, с 2 кольцевыми шинами по 8 ядер. Это легкий оффтоп. В реальности - т.к. все это творится внутри чипа - все соединения быстрые, 12 ядер вместо 8 всегда быстрее несмотря на схемы. Ну а в V4 все цифры смещены, LCC уже имеет 10 ядер, MCC 14, HCC 22. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.