[ovs-dev] [PATCH 1/2] ovn: Add VLAN support for localnet ports.
Ben Pfaff
blp at nicira.com
Fri Oct 2 15:04:21 UTC 2015
On Thu, Oct 01, 2015 at 02:26:25PM -0400, Russell Bryant wrote:
> This patch makes it possible use a localnet port for connecting to a
> specific VLAN on a locally accessible network. The only logical
> modeling change is that it is now valid to set the "tag" field on
> logical ports with a type of "localnet". Previously, the "tag" field
> was only use for child ports.
>
> We still use a single automatically created patch port between br-int
> and the bridge configured to provide connectivity to a given network
> (the ovn-controller bridge-mappings configuration). We use flows when
> necessary to either match on VLAN ID or to add the VLAN ID before
> sending the packet out.
>
> Matching for a localnet port with a VLAN ID is done at priority 150 in
> table 0, and is similar to how we match traffic from container child
> ports. These cases are conceptually similar in that they're separate
> logical ports on the same physical port.
>
> Most of the code changes are due to a change in data structures. We
> have to keep track of all of the localnet ports and then add flows for
> them at the end. Previously this code tracked them as:
>
> hash of localnet bindings, hased on network name
>
> localnet bindings:
> openflow port number
> list of port bindings
>
> Now we have:
>
> hash of localnet bindings, hased on network name
>
> localnet bindings:
> openflow port number
> hash of localnet vlans
>
> localnet vlans:
> VLAN ID (0 for untagged traffic)
> list of port bindings
>
> A detailed example of using localnet ports with a VLAN ID is provided in
> a later patch as a part of a larger OVN tutorial.
>
> Signed-off-by: Russell Bryant <rbryant at redhat.com>
Applied, thanks!
More information about the dev
mailing list