Le 29/04/2016 12:51, Vincent Bernat a écrit :
  ❦ 29 avril 2016 17:20 GMT, Michel Py <mic...@arneill-py.sacramento.ca.us> :

En revanche avant de penser à utiliser packet journey comme
forwarding plane :), il faut bien évaluer si cela en vaut la peine.
Est ce que tu fais tant de trafic que tu ait besoin de dpdk ? aka
supérieur à xGo/s ? Est ce qu'un simple linux/bsd bien tuné ne
suffirait pas ?

La carte mentionnée sur la page de Gandi est une 40 Gbit/s (XL710).

Question de débutant dans ce domaine : un serveur comme ci-dessus,
avec juste BIRD et une distro sans fioritures (pas de DPDK, pas de
packet shader), on peut en sortir quel débit, avec des paquets de 64
octets ? Je me suis laissé dire qu'on dépassait difficilement 1 ou 2
Gbit/s.

Ça dépend combien de coeurs tu as sur ta machine, vu que pour du
routage, ça scale de manière linéaire sur le nombre de coeurs avec assez
peu d'efforts. Sur un proc récent, tu peux viser 2 Mpps par coeur. Du
coup, avec un hexacoeur, tu montes à 10G. Il semble qu'avec des noyaux
plus récents (> 4), les performances ont été multipliées par 2. Je suis
pas très à jour là-dessus.

Cependant, via switchdev, l'offloading est désormais intégré dans le
noyau Linux et donc avec le bon choix de carte réseau, tu devrais
pouvoir sans effort en bénéficier sous peu. C'est le cas avec des
Mellanox et cela devrait arriver avec le 4.6. Il y a eu une démo en 100G
au dernier NetDev mais en switching uniquement si j'ai bien compris (je
n'y étais pas).


Oui, tu as plusieurs solutions:
- un datapath logiciel sur serveurs (cf 6WIND aussi), là tu peux monter à 200Mpps @ 64 bytes ; avec ces datapath/fast path, tu peux utiliser BIRD, Quagga, ExaBPG, Strongswan, Opendaylight, etc...

- un switch/ASIC + Switchdev c'est encore plus performant, mais tu es alors confronté aux limites des ASIC (regarde le nombre de routes par exemple).

Ensuite, tout est une question de prix?! un server x86 avec des cartes PCI 40Gbps: c'est bon marché et tu n'auras pas de limitation du datapath. En effet, en sous-jacent switchdev te limitera avec les capacités de l'ASIC. Mais si tu veux beaucoup de ports 10G/40G, alors il y a un point d'inflexion où l'ASIC reste mieux en sacrifiant quelques fonctionnels.

En cartes 40G, tu peux regarder les CX4 de Mellanox ou les cartes Intel. Vérifie que tu as bien les bus x16 et Gen3.

Bons choix,
  Vincent


---------------------------
Liste de diffusion du FRnOG
http://www.frnog.org/

Répondre à