On 2015/03/17 10:21 PM, Ben Pfaff wrote:
On Tue, Mar 17, 2015 at 10:17:03PM +0200, Chris Picton wrote:
At layer3, I can use the 'ip route get *' commands to determine how
the kernel will route a packet.  Is there any equivalent command to
inspect the ovs behaviour.  I would like to ask ovs: 'If I send a
packet with src mac 00:15:17:91:05:4c which came in on interface
bondV tagged with vlan 3, destined to mac 52:54:00:60:29:8c, what
port would it be forwarded to?'
Yes, you can use "ovs-appctl ofproto/trace", please see
ovs-vswitchd(8) for more details.
Thanks for the speedy reply - I get the results as below:

What I can see is that on both cases, OVS says it should be forwarding via a datapath and popping the vlan tag. The datapath for ports veth-carbon1-3 (working) and vnet0 (not working) appear to be similar.

Working ofproto/trace action:
Datapath actions: pop_vlan,6

Non-working ofproto/trace action:
Datapath actions: pop_vlan,7

If I run ovs-dpctl dump-flows | grep 0x0806 | egrep '52:54:00:60:29:8c|52:54:00:14:54:c6', I get (immediately after dropping the arp entry from the working guest):

recirc_id(0),skb_priority(0),in_port(2),eth(src=00:15:17:91:05:4c,dst=52:54:00:14:54:c6),eth_type(0x8100),vlan(vid=3,pcp=0),encap(eth_type(0x0806)), packets:2, bytes:120, used:1.669s, actions:pop_vlan,7 recirc_id(0),skb_priority(0),in_port(2),eth(src=00:15:17:91:05:4c,dst=52:54:00:60:29:8c),eth_type(0x8100),vlan(vid=3,pcp=0),encap(eth_type(0x0806)), packets:0, bytes:0, used:never, actions:pop_vlan,6

The non-working port's output above entry has "used:never"

My request for help now becomes:

How can I determine why the packets are not appearing on vnet0, when the output of the commands below appear to indicate that they should?


The full ofproto/trace commands are below:

Working guest:
# ovs-appctl ofproto/trace vbr0 "in_port=1" 52540060298c00151791054c810000030806000108000604000200151791054c0aca03fa52540060298c0aca035b0000000000000000000000000000
Bridge: vbr0
Flow: arp,metadata=0,in_port=1,dl_vlan=3,dl_vlan_pcp=0,dl_src=00:15:17:91:05:4c,dl_dst=52:54:00:60:29:8c,arp_spa=10.202.3.250,arp_tpa=10.202.3.91,arp_op=2,arp_sha=00:15:17:91:05:4c,arp_tha=52:54:00:60:29:8c
Rule: table=0 cookie=0 priority=0
OpenFlow actions=NORMAL
forwarding to learned port

Final flow: unchanged
Megaflow: recirc_id=0,skb_priority=0,arp,in_port=1,dl_vlan=3,dl_vlan_pcp=0,dl_src=00:15:17:91:05:4c,dl_dst=52:54:00:60:29:8c
Datapath actions: pop_vlan,6




Non-working guest:
ovs-appctl ofproto/trace vbr0 "in_port=1" 5254001454c600151791054c810000030806000108000604000200151791054c0aca03fa5254001454c60aca03c90000000000000000000000000000
Bridge: vbr0
Flow: arp,metadata=0,in_port=1,dl_vlan=3,dl_vlan_pcp=0,dl_src=00:15:17:91:05:4c,dl_dst=52:54:00:14:54:c6,arp_spa=10.202.3.250,arp_tpa=10.202.3.201,arp_op=2,arp_sha=00:15:17:91:05:4c,arp_tha=52:54:00:14:54:c6
Rule: table=0 cookie=0 priority=0
OpenFlow actions=NORMAL
forwarding to learned port

Final flow: unchanged
Megaflow: recirc_id=0,skb_priority=0,arp,in_port=1,dl_vlan=3,dl_vlan_pcp=0,dl_src=00:15:17:91:05:4c,dl_dst=52:54:00:14:54:c6
Datapath actions: pop_vlan,7

 # ovs-ofctl dump-flows vbr0
NXST_FLOW reply (xid=0x4):
cookie=0x0, duration=486871.278s, table=0, n_packets=283716961, n_bytes=345708309931, idle_age=0, hard_age=65534, priority=0 actions=NORMAL


 # ovs-appctl dpif/show
system@ovs-system: hit:275109913 missed:8254378
        vbr0:
                bondV 1/2: (system)
                vbr0 65534/1: (internal)
                veth-carbon1-3 5/6: (system)
                vlan1 2/3: (internal)
                vlan108 3/4: (internal)
                vlan109 4/5: (internal)
                vnet0 6/7: (system)
                vnet1 7/8: (system)
                vnet10 16/17: (system)
                vnet11 17/18: (system)
                vnet12 18/19: (system)
                vnet13 19/20: (system)
                vnet14 20/21: (system)
                vnet15 21/22: (system)
                vnet16 22/23: (system)
                vnet17 23/24: (system)
                vnet18 24/25: (system)
                vnet19 25/26: (system)
                vnet2 8/9: (system)
                vnet20 26/27: (system)
                vnet21 27/28: (system)
                vnet3 9/10: (system)
                vnet4 10/11: (system)
                vnet5 11/12: (system)
                vnet6 12/13: (system)


_______________________________________________
discuss mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to