pinggit / dpdk-contrail-book

contrail dpdk day one book
9 stars 3 forks source link

vif0/N interfaces #17

Closed pinggit closed 3 years ago

pinggit commented 3 years ago

image

we know vif0/0 connect to pNIC, vif0/1 vhost0, vif0/2 pkt0, etc. need some explanation about these mappings and why this design is required.

pinggit commented 3 years ago

quote from Laurent:

I’ll have a look. But this is Contrail vrouter design.

Vrouter has ports named vif0/x On vrouter ports we are pluging some interfaces.

Vif 0/0 is connected to the compute physical bond used to get physical connectivity Vif 0/1 is connected to the vrouter agent “logical interface”. Vrouter agent logical interface is named vhost0. Vif 0/2 is connected to the vrouter agent pkt0 interface. Pkt0 is used to get a copy of any user packet for which the controller need to take a decision (no rule currently known at dataplane level) Vif 0/N are connected to Virtual Machine vNIC of the virtual machines spawn in the cloud infra.

A Virtual machine vNIC has 2 side:

A machine virtual NIC eth0, has a backend side into the hypervisor OS, the tap device (tap xxx) which is connected to one vrouter port vif 0/n.

This is exactly like in a real world. Tapxxx is just the visible part outside the machine + the cable, used to interconnect a virtual machine NIC onto the first available vrouter port. I hope it clarifies.

If needed, I could add few word in the doc, and a drawing.