Jump to: navigation, search

Difference between revisions of "Neutron/TrunkPort"

(Links)
Line 41: Line 41:
 
== Links ==
 
== Links ==
  
 +
* vBrownBag session at Tokyo Summit
 +
** [http://www.slideshare.net/benceromsics/openstack-trunk-port slides (slideshare.net)]
 +
** [https://youtu.be/v-Ia2FObjxs video (youtube.com)]
 
* blueprints.launchpad.net
 
* blueprints.launchpad.net
 
** neutron: [https://blueprints.launchpad.net/neutron/+spec/vlan-aware-vms bp/vlan-aware-vms]
 
** neutron: [https://blueprints.launchpad.net/neutron/+spec/vlan-aware-vms bp/vlan-aware-vms]
Line 55: Line 58:
 
** <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:50, 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