Dispositifs de réseau virtuel sous Linux

quelqu'un peut-il expliquer en détail quelles sont les différences entre les paires veth et les interfaces tap et comment ces périphériques se connectent à Linux bridge ou openvswitch?

j'ai trouvé ce: "Veth est un réseau spécial dispositifs qui ont été créés en paire, je considère comme une méthode pour changer la direction du trafic, c'est-à-dire, lorsque le trafic de direction extérieure est envoyé à Veth périphérique à partir de la pile de protocole Linux, il a été envoyé à un autre son miroir Veth périphérique, de sorte que le miroir on le traite comme un dans la direction le trafic et le remettre à la pile de protocole Linux pour une utilisation ultérieure.

Tap device est un périphérique réseau logique, mais différent de tous les autres: il permet au programme d'espace utilisateur d'injecter directement du trafic dans la pile de protocoles Linux, ainsi que de récupérer du trafic depuis la pile. Il ouvre un tunnel à la pile de protocoles Linux au niveau 2 (ou au périphérique tun au niveau 3) dans l'espace utilisateur, la pile considérera les données de l'espace utilisateur comme dans le trafic de direction"

mais il ne m'a pas donné le toute l'image.

merci d'avance!

18
demandé sur paraflou 2014-09-03 14:08:55

2 réponses

les interfaces Linux tap créées avec IP tuntap ne peuvent pas être utilisé pour attacher les espaces de noms de réseau à linuxbridges ou à l'openvswitch donc nous devons dépendre de la paire de veth.

les interfaces Ethernet virtuelles viennent en paires, et elles sont connectées comme un tube-ce qui vient dans une interface veth sortira de l'autre interface Veth de pair. En conséquence, vous pouvez utiliser les interfaces veth pour vous connecter à un espace de noms réseau vers l'extérieur via le "default" ou "global" de l'espace de noms où physique des interfaces existent.

un périphérique TAP, tel que vnet0, est la façon dont les hyperviseurs tels que KVM et Xen implémentent une carte d'interface réseau virtuelle ( typiquement appelé un VIF ou vNIC