Jump to: navigation, search

Difference between revisions of "Neutron/TrunkPort"

(openvswitch vlan model)
Line 55: Line 55:
 
** <strike>python-novaclient: [https://review.openstack.org/#/q/project:openstack/python-novaclient+topic:bp/trunk-port,n,z project:openstack/python-novaclient topic:bp/trunk-port]</strike>
 
** <strike>python-novaclient: [https://review.openstack.org/#/q/project:openstack/python-novaclient+topic:bp/trunk-port,n,z project:openstack/python-novaclient topic:bp/trunk-port]</strike>
 
** tempest: [https://review.openstack.org/#/q/project:openstack/tempest+topic:bp/vlan-aware-vms,n,z project:openstack/tempest topic:bp/vlan-aware-vms]
 
** tempest: [https://review.openstack.org/#/q/project:openstack/tempest+topic:bp/vlan-aware-vms,n,z project:openstack/tempest topic:bp/vlan-aware-vms]
 +
* [https://youtu.be/v-Ia2FObjxs vBrownBag session at Tokyo Summit (youtube.com)]

Revision as of 02:40, 29 October 2015

Overview

Neutron extension to access lots of neutron networks over a single vNIC as encapsulated traffic.

Design

openvswitch vlan model

# create trunk bridge
ovs-vsctl --may-exist add-br TRUNK-BRIDGE
ovs-ofctl del-flows TRUNK-BRIDGE

# patch trunk bridge to integration bridge
ovs-vsctl add-port TRUNK-BRIDGE PATCH-TRUNK-END-PORT -- set Interface PATCH-TRUNK-END-PORT type=patch options:peer=PATCH-INT-END-PORT
ovs-vsctl add-port br-int PATCH-INT-END-PORT -- set Interface PATCH-INT-END-PORT type=patch options:peer=PATCH-TRUNK-END-PORT

# install default drop flows on patch ports
ovs-ofctl add-flow TRUNK-BRIDGE hard_timeout=0,idle_timeout=0,priority=2,in_port=PATCH-TRUNK-END-OFPORT,actions=drop
ovs-ofctl add-flow br-int hard_timeout=0,idle_timeout=0,priority=2,in_port=PATCH-INT-END-OFPORT,actions=drop

# install remap flows for untagged traffic (default subport)
ovs-ofctl add-flow TRUNK-BRIDGE hard_timeout=0,idle_timeout=0,priority=3,dl_vlan=COMPUTE-INTERNAL-VLAN-ID,in_port=PATCH-TRUNK-END-OFPORT,actions=strip_vlan,normal
ovs-ofctl add-flow br-int hard_timeout=0,idle_timeout=0,priority=3,dl_vlan=0xffff,in_port=PATCH-INT-END-OFPORT,actions=mod_vlan_vid:COMPUTE-INTERNAL-VLAN-ID,normal

# install remap flows for tagged traffic (other subports)
ovs-ofctl add-flow TRUNK-BRIDGE hard_timeout=0,idle_timeout=0,priority=3,dl_vlan=COMPUTE-INTERNAL-VLAN-ID,in_port=PATCH-TRUNK-END-OFPORT,actions=mod_vlan_vid:INNER-VLAN-ID,normal
ovs-ofctl add-flow br-int hard_timeout=0,idle_timeout=0,priority=3,dl_vlan=INNER-VLAN-ID,in_port=PATCH-INT-END-OFPORT,actions=mod_vlan_vid:COMPUTE-INTERNAL-VLAN-ID,normal

# make the tap port pass all tags
ovs-vsctl set Port TAP-PORT vlan_mode=trunk

Work Items

Links