Jump to content
Калькуляторы

Более 1G на между комутатором и freebsd Балансировка на гигабитных интерфейсах

Имеется NAS на FreeBSD с несколькими em на борту. До недавнего времени трафик не превышал гигабита, но теперь ширины интерфейса стало нехватать. Приобретать 10G плату пока как-то не хочется, тем более на свитче имеется достаточное количество GE интерфейсов. Каким образом наиболее рационально, с точки зрения производительности сервера, задействовать оба порта и обе сетевых платы для получения общей пропускной способности более 1G ?

Критерии - надёжность (автоматически продолжаем работу при отваливании 1 пачкорда) и производительность (нагрузка на процессор)

 

Свич - L3 Cisco.

 

Рассматриваю 2 варианта L2 (lacp ) или L3 (OSPF). L2 как-бы более продуктивен, но опыта построения такого линка нет.

Edited by andryas

Share this post


Link to post
Share on other sites

LACP, без вопросов. В хэндбуке пример есть: http://www.freebsd.org/doc/handbook/network-aggregation.html

Ради OSPF (который вообще-то разрабатывался для больших сетей, а не для тупой агрегации) придется еще демон маршрутизации какой-нибудь городить.

Edited by photon

Share this post


Link to post
Share on other sites
Имеется NAS на FreeBSD с несколькими em на борту. До недавнего времени трафик не превышал гигабита, но теперь ширины интерфейса стало нехватать. Приобретать 10G плату пока как-то не хочется, тем более на свитче имеется достаточное количество GE интерфейсов. Каким образом наиболее рационально, с точки зрения производительности сервера, задействовать оба порта и обе сетевых платы для получения общей пропускной способности более 1G ?

Критерии - надёжность (автоматически продолжаем работу при отваливании 1 пачкорда) и производительность (нагрузка на процессор)

 

Свич - L3 Cisco.

 

Рассматриваю 2 варианта L2 (lacp ) или L3 (OSPF). L2 как-бы более продуктивен, но опыта построения такого линка нет.

LACP

Share this post


Link to post
Share on other sites

Спасибо. Попутно вопрос: куда приземлять vlan'ы, lagg (или brige как костыль) может быть vlandev?

Share this post


Link to post
Share on other sites
Спасибо. Попутно вопрос: куда приземлять vlan'ы, lagg (или brige как костыль) может быть vlandev?
# ifconfig vlan25
vlan25: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    ether 00:1b:21:57:52:14
    inet x.x.x.26 netmask 0xfffffffc broadcast x.x.x.27
    media: Ethernet autoselect
    status: active
    vlan: 25 parent interface: lagg0

# ifconfig lagg0
lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM>
    ether 00:1b:21:57:52:14
    media: Ethernet autoselect
    status: active
    laggproto loadbalance
    laggport: igb8 flags=4<ACTIVE>
    laggport: igb6 flags=4<ACTIVE>
    laggport: igb4 flags=4<ACTIVE>
    laggport: igb2 flags=4<ACTIVE>

Share this post


Link to post
Share on other sites

make.kernel, спасибо большое, как раз то, что нужно!

 

Share this post


Link to post
Share on other sites

Спасибо. Попутно вопрос: куда приземлять vlan'ы, lagg (или brige как костыль) может быть vlandev?

vlandev lagg_x_

Share this post


Link to post
Share on other sites

А тупо разные вланы в разные карты не подходит (часть туда, часть сюда) ? Или трафик по вланам совсем не предсказуем и предугадать распределение по картам, чтобы примерно поровну разложить не выйдет ?

Share this post


Link to post
Share on other sites

А тупо разные вланы в разные карты не подходит (часть туда, часть сюда) ? Или трафик по вланам совсем не предсказуем и предугадать распределение по картам, чтобы примерно поровну разложить не выйдет ?

Тупо разные вланы подходит иногда. Мой пример с бордера, там в vlan25 несколько больше гигабита. Ну и мне нравится, когда карточки более-менее равномерно загружены, не 800 мбит на одной и 100 на другой, а по 400-500 на каждой. Просто нравится.

Share this post


Link to post
Share on other sites
А тупо разные вланы в разные карты не подходит (часть туда, часть сюда)

 

Можно, но как очень временное и потенциально проблемное (перегрузка возможна) решение.

 

Ну и мне нравится, когда карточки более-менее равномерно загружены

 

+1, кроме того, при балансировке более равномерно загружаются ядра процессора.

Share this post


Link to post
Share on other sites

Кстати, фряшный LACP до сих пор не умеет на L3+L4 работать, что ли? Это хреново.

The hash includes the Ethernet source and destination address, and, if available, the VLAN tag, and the IPv4/IPv6 source and destination address.

Share this post


Link to post
Share on other sites
Кстати, фряшный LACP до сих пор не умеет на L3+L4 работать, что ли? Это хреново.
The hash includes the Ethernet source and destination address, and, if available, the VLAN tag, and the IPv4/IPv6 source and destination address.
Он умеет работать с flow id, 10 строчек в исходниках и хоть по длинне пакета.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this