Сетевой сетевой коммутатор 10GBit Ethernet с поддержкой brouting и «VLAN»

Я хочу создать сетчатую сеть с 10 Гбит Ethernet-соединениями между серверами и стек коммутатора, способный распределять транкинг.

В этом случае для числа n> 2 (но обычно 2 <n <6 ) представьте:

GraphViz PNG рендеринг (1) созвездия полного сетчатого узла с n = 5:

/*_5_Server_Nodes_Network_Mesh_°°°*/ graph n5 { node[shape=plaintext,height=0,width=0,margin=0] edge[len=0.6] a-- b-- c-- d-- e-- a-- c-- e-- b-- d-- a } 5 Узел Серверная сетка

Примечание. Чтобы сохранить графики малыми, я выбрал n = 3 и k = 2 для остальной части этого вопроса, потому что 3 узла в образовании треугольника полностью сведены, и это же решение должно применяться.

/*_3_Server_Nodes_Network_Mesh_°°°*/ graph n3 { node[shape=plaintext,height=0,width=0,margin=0] edge[len=0.4] a -- b -- c -- a } 3 Узел Сеть Mesh

Скажем, карты, используемые для этих соединений, – eth0 & eth1 ({0 .. (n-2)})

Мне также необходимо установить k зон, VLAN (синий). Скажите VLAN M и N :

/*_3_Server_Mesh_with_VLAN__°°°°°°*/ graph n3 { node[shape=plaintext,height=0,width=0,margin=0] edge[len=0.4] a -- b -- c -- a edge[color=blue] a--{aM aN}; b--{bM bN}; c--{cM cN}; } введите описание изображения здесь

Еще 2 порта Ethernet 10GBit (здесь eth2 & eth3 ) на каждом eth2 связаны (коричневые) для восходящего подключения к внешнему миру:

/*_3_Server_Mesh_w/_VLAN_and_bond0__*/ graph n3 { node[shape=plaintext,height=0,width=0,margin=0] edge[len=0.3]; a -- b -- c -- a edge[color=blue] a--{aM aN}; b--{bM bN}; c--{cM cN}; edge[color=brown,len=0.4,penwidth=2] a -- au; b -- bu; c -- cu;} 3_Server_Mesh_w / _VLAN_and_bond0

Оба порта интерфейса bond0 к различным элементам старшего коммутационного стека, который сам использует кольцо из 10GBit-соединений (зеленый) для стекирования: /*_3_Servers_w/ VLAN + Stack */ graph n3 { node[shape=plaintext,margin=0, height=0,width=0] edge[len=0.3] a -- b -- c -- a edge[color=blue,len=0.3] a--{aM aX}; b--{bM bN}; c--{cM cN}; edge[color=brown,len=0.4] a -- au; b -- bu; c -- cu; edge[color=brown,len=1.1] {cu[shape=point] au} -- S1 {au[shape=point] bu} -- S2 {bu[shape=point] cu} -- S3 edge[color=green,len=2.9] S1 -- S2 -- S3 --S1 } /*_3_Servers_w/ VLAN + Stack */ graph n3 { node[shape=plaintext,margin=0, height=0,width=0] edge[len=0.3] a -- b -- c -- a edge[color=blue,len=0.3] a--{aM aX}; b--{bM bN}; c--{cM cN}; edge[color=brown,len=0.4] a -- au; b -- bu; c -- cu; edge[color=brown,len=1.1] {cu[shape=point] au} -- S1 {au[shape=point] bu} -- S2 {bu[shape=point] cu} -- S3 edge[color=green,len=2.9] S1 -- S2 -- S3 --S1 } 3_Servers_w / _VLAN_and_Stack

И все пользователи будут подключены к (сетям) «снаружи» S1..S $ n

Логически, стек коммутатора S1..S $ n ведет себя как один большой коммутационный блок. Таким образом, серверы a, b, …, n видят следующую структуру: все, что связано с S

/*_3_Server_Mesh_w/_VLAN_and_Stack__*/ graph n3 { node[shape=plaintext,height=0,width=0,margin=0] edge[len=1]; a -- b -- c -- a edge[color=brown,len=0.3,penwidth=2] S -- {abc} edge[color=blue,len=0.3] a--{aM aN}; b--{bM bN}; c--{cM cN}; } введите описание изображения здесь

Теперь мы подключаем некоторые виртуальные машины (красные) к этим VLAN:

/*_3_Server_Mesh_with_VLAN_clients__*/ graph n3 { node[shape=plaintext,height=0,width=0,margin=0] edge[len=1]; a -- b -- c -- a edge[color=brown,len=0.3,penwidth=2] S -- {abc} edge[color=blue,len=0.3,penwidth=1] a--{aM aN}; b--{bM bN}; c--{cM cN}; edge[color=red,len=0.3,penwidth=1] v1--{aM aN}; {v2 v7}--bM; v3--{cM cN}; v4--aN; {v5 v6 v8}--bN; v9--cM; } 3_Server_Mesh_with_VLAN_clients

Эта функция часто видна в контексте SDN, SPB, TRILL, VxLAN, все из которых кажутся актуальными после их проверки. Из тех самых коротких путей мост (802.1aq) звучит как лучше всего подходит. Но где реализация Linux, и как я могу использовать их в Debian для создания полностью meshhed brouter?

  • SPB – Shortest Path Bridging (802.1aq) звучит как победитель: Официальная замена Spanning Tree, начиная с 2012 года. Кажется, что продолжается проект Github , но не уверен, если полный / функциональный
  • TRILL – Прозрачная взаимосвязь множества ссылок : главный конкурент SPB. Проект Github также не представляется доступным / функциональным
  • OpenMesh batman-adv . Он доступен в Debian. Но везде, где я читал, речь идет о беспроводной связи . Если это будет работать для 10GBit-ссылок, не все ли будут использовать это? (И там будет онлайн-чат об этом)
  • Виртуальный коммутатор VDE . Также доступно в Debian. Полностью в пользовательском пространстве, поэтому слишком медленно для 10GBit / s?
  • @JuliePelletier в комментарии предложил BGP как средство для достижения этой зачищенной, отказоустойчивой настройки Layer2, но я пока не могу понять, как именно она это имела в виду.

Итак, что я мог установить / настроить на каждом узле для достижения желаемого созвездия?

(1) neato -Tpng -O file.dot && browser file.dot.png Graphviz были созданы с помощью neato -Tpng -O file.dot && browser file.dot.png