Ask Your Question

Revision history [back]

A port is the abstraction of a layer 2 network connection. As you say yourself, it carries a MAC and (if there is a subnet) an IP address.

You ask why - my guess is that it is easier to manage this way. There is a diversity of resources, instances, routers, DHCP servers etc that are connected to Neutron networks with ports. They are different, but they all need MAC and IP addresses. Instead of creating different MAC and IP address implementations on each of those resources, it's simpler to just move the addresses to the port abstraction. This is entirely my assumption; I was not there when the design was discussed.

the vnic will connect to the external bridge through a port?

This sentence mixes a Neutron resource (port) with a Neutron implementation concept (VNIC) and an operating system concept (bridge). You mix three things that are located at three different abstraction levels, and the end result is a sentence that is not even wrong. It's as if you said that the engine of a car is connected to the road via the driver.

a port connect a nic to a vlan.right?

No. A port connects an OpenStack object to a Neutron network.

There is no concept of VLAN in Neutron, except when you enable the VLAN Transparency Extension, which only exists to implement very specific NFV requirements.

cen we have multiple port per nic

Not as far as I know.