Инструменты пользователя

Инструменты сайта


ru:software:freebsd:lagg_on_netgraph

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ru:software:freebsd:lagg_on_netgraph [2015/07/19 02:23]
root [rc.d скрипт]
ru:software:freebsd:lagg_on_netgraph [2015/07/19 23:17] (текущий)
root [ng_lagg - if_lagg on netgraph]
Строка 1: Строка 1:
 ====== ng_lagg - if_lagg on netgraph ====== ====== ng_lagg - if_lagg on netgraph ======
-По неизвестной причине использование if_lagg и двух сетевых адаптеров igb на FreeBSD 10.1 amd64 приводило к большой нагрузке на CPU, потере пакетов и потере связи.\\+По неизвестной причине использование ​**if_lagg** и двух сетевых адаптеров igb на FreeBSD 10.1 amd64 приводило к большой нагрузке на CPU, потере пакетов и потере связи ​при приёме мультикаста с битрейтом свыше 100 мегабит.\\
 Реализация объединения сетевых адаптеров средствами netgraph не подвержена подобной проблеме.\\ Реализация объединения сетевых адаптеров средствами netgraph не подвержена подобной проблеме.\\
 +Результат совместим с **if_vlan** и по сути мало чем отличается от других интерфейсов в системе.\\
 **Cкрипт**:​ [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg.sh|ng_lagg.sh]]\\ **Cкрипт**:​ [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg.sh|ng_lagg.sh]]\\
-**rc.d скрипт**:​ [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg.sh|ng_lagg]]\\+**rc.d скрипт**:​ [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg|ng_lagg]]\\
  
  
Строка 17: Строка 18:
  
 == ВАЖНО! == == ВАЖНО! ==
-1. Имя интерфейса не должно содержать:​ "​."​ и ":"​.\\ +  - Имя интерфейса не должно содержать:​ "​."​ и ":"​. Это ограничение netgraph, подробнее:​ [[https://​www.freebsd.org/​cgi/​man.cgi?​query=netgraph&​sektion=4&​apropos=0&​manpath=FreeBSD+10.1-stable|man 4 netgraph]] 
-Это ограничение netgraph.\\ +  - Максимальное количество интерфейсов в LAGG - 64Это ограничение обусловлено константой **NG_ONE2MANY_MAX_LINKS** в файле /​usr/​src/​sys/​netgraph/​ng_one2many.h. Если вам требуется больше,​ то измените значение константы и пересоберите **ng_one2many**. 
-Подробнее:​ [[https://​www.freebsd.org/​cgi/​man.cgi?​query=netgraph&​sektion=4&​apropos=0&​manpath=FreeBSD+10.1-stable|man 4 netgraph]]\\ +  - В LAGG на базе netgraph можно добавлять только сетевые интерфейсы к которые работают с нодой **ng_ether**. Список доступных интерфейсов можно увидеть так:
- +
-2. В LAGG на базе netgraph можно добавлять только сетевые интерфейсы к которые работают с нодой **ng_ether**.\\ +
-Список доступных интерфейсов можно увидеть так:+
 <​code>​ngctl list | grep ether</​code>​ <​code>​ngctl list | grep ether</​code>​
 Если ничего нет, то убедитесь что нода **ng_ether** загружена,​ или загрузите:​ Если ничего нет, то убедитесь что нода **ng_ether** загружена,​ или загрузите:​
Строка 49: Строка 47:
 ==== rc.d скрипт ==== ==== rc.d скрипт ====
 Для того чтобы интерфейс создавался при загрузке автоматически нужно: Для того чтобы интерфейс создавался при загрузке автоматически нужно:
-  - сохранить rc.d скрипт [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg.sh|ng_lagg]] в /​usr/​local/​etc/​rc.d/​ +  - сохранить rc.d скрипт [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg|ng_lagg]] в /​usr/​local/​etc/​rc.d/​ 
-  - сохранить скрипт [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg.sh|ng_lagg.sh]] в /​usr/​sbin/​ +  - сохранить скрипт [[http://​netlab.linkpc.net/​download/​software/​FreeBSD/​ng_lagg/​ng_lagg.sh|ng_lagg.sh]] в /usr/local/sbin/ 
-  - разрешить ​его ​выполнение+  - разрешить выполнение ​обоих скриптов (chmod +x)
   - добавить в /​etc/​rc.conf или /​etc/​rc.conf.local разрешение на его запуск и настройки:​   - добавить в /​etc/​rc.conf или /​etc/​rc.conf.local разрешение на его запуск и настройки:​
 <​code>​ng_lagg_enable="​YES"​ <​code>​ng_lagg_enable="​YES"​
-ng_lagg_command="/​usr/​sbin/​ng_lagg.sh+ng_lagg_interfaces="lagg0 xyzlagg
-ng_lagg_interface="lagg0+ng_lagg_lagg0="em0 em1
-ng_lagg_ports="em0 em1"+ng_lagg_xyzlagg="xl0 igb1"
 ifconfig_lagg0="​inet 192.168.11.77 netmask 255.255.255.0"​ ifconfig_lagg0="​inet 192.168.11.77 netmask 255.255.255.0"​
 +ifconfig_xyzlagg="​inet 192.168.22.77 netmask 255.255.255.0"​
  
-vlans_lagg0="​vlan777+vlans_lagg0="​vlan1234
-create_args_vlan777="​vlan ​777+create_args_vlan1234="​vlan ​1234
-ifconfig_vlan777="inet 192.168.0.77 netmask 255.255.255.0"​+ifconfig_vlan1234="inet 192.168.0.77 netmask 255.255.255.0"​
 </​code>​ </​code>​
  
  
 +=== Замечания ===
 +  - Можно создавать сколько угодно интерфейсов,​ в каждом из них должен быть хотя бы один сетевой адаптер
 +  - Нельзя давать имена интерфейсам "​auto",​ так можно создать не более одного интерфейса,​ но по команде **stop** такой интерфейс не будет уничтожен.
  
  
ru/software/freebsd/lagg_on_netgraph.1437272606.txt.gz · Последние изменения: 2015/07/19 02:23 — root