[ovs-discuss] Drops with high rate of packet_In in OVS

Anton Matsiuk anton.matsiuk at gmail.com
Mon Nov 18 14:52:53 UTC 2013


Hello all,

I test the Open vSwitch in the following scheme: I use 2 hosts directly
connected to OSV and external OpenFlow Controller. Host1 generates UDP
datagrams with sequential ports towards Host2, Host 2 listens for  these
UDP datagrams. In responce to every UDP datagram OVS generates Packet_In
and Controller sends Flow_Mod with granularity up to L4 (so for every pair
of UDP port numbers it installs separate rule). I send bunch of UDP
datagrams from Host1 and calculate how many of them arrived to Host2.

Starting  some number of packets ( > 300) packet drops are observed. For
instance, if I generate 500 UDP packets in 120 ms only around 380 of them
arrive to Host2.
ovs-dpctl show -s command shows , that I have 500 flows installed 500
packets on ingress interface (port 1) of OVS and 380 on egress (port 2).
So, it seems like OVS drop packets starting with some load threshold:

lookups: hit:0 missed:500 lost:0
flows: 500
port 1: eth2
RX packets:500 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 aborted:0 carrier:0
collisions:0
        port 2: eth3
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:380 errors:0 dropped:0 aborted:0 carrier:0
collisions:0

ovs-dpctl dump-flows br0 shows all the flows installed but no  one with
matched packets:

in_port(1),eth(src=00:00:00:00:00:01,dst=00:00:00:00:00:02),eth_type(0x8100),vlan(vid=10,pcp=3),encap(eth_type(0x0800),ipv4(src=10.0.0.1,dst=10.0.0.2,proto=17,tos=0,ttl=64,frag=no),udp(src=52363,dst=50335)),
packets:0, bytes:0, used:never,
actions:userspace(pid=4294962855,slow_path(controller))

I tried both with detached controller and running in the same machine as
OVS (I use out-of-band option for controller and disable-in-band=true)

Also I tried to replace Flow_Mods with Packet_Out messages for every
ingress UDP datagram (identifying by buffer_id) but I experienced the same
drops. I tested it on different machines (in Mininet and with separated
real hosts)

I suspect that such behavior is caused by
actions:userspace(pid=4294962855,slow_path(controller)) but how can I
verify where drops are occurred? is there possibility to debug internal
queues or buffers?

And how could I fix such drops? Should I implement some advances QoS
policies in OVS in this case?

-- 

Best regards,
Anton Matsiuk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20131118/c39cab52/attachment.html>


More information about the discuss mailing list