Hi,

        I was looking at various things and I found that
do_xlate_actions() in ofproto.c was called way more often than I was
expecting. I'm using 1.1.0.

        I set the following flows :
./ovs-ofctl add-flow tcp:127.0.0.1:6634 
"priority=32769,idle_timeout=0,ip,nw_dst=15.144.110.1,action=mod_nw_tos:0,output:2"
./ovs-ofctl add-flow tcp:127.0.0.1:6634 
"priority=32769,idle_timeout=0,ip,nw_dst=15.144.110.2,action=output:4"

        I perform the following ping :
<jean@charolles>ping 15.144.110.1
PING 15.144.110.1 (15.144.110.1) 56(84) bytes of data.
64 bytes from 15.144.110.1: icmp_req=1 ttl=64 time=0.446 ms
64 bytes from 15.144.110.1: icmp_req=2 ttl=64 time=0.196 ms
64 bytes from 15.144.110.1: icmp_req=3 ttl=64 time=0.198 ms
64 bytes from 15.144.110.1: icmp_req=4 ttl=64 time=0.266 ms
64 bytes from 15.144.110.1: icmp_req=5 ttl=64 time=0.166 ms
64 bytes from 15.144.110.1: icmp_req=6 ttl=64 time=0.258 ms
64 bytes from 15.144.110.1: icmp_req=7 ttl=64 time=0.216 ms
64 bytes from 15.144.110.1: icmp_req=8 ttl=64 time=0.217 ms
64 bytes from 15.144.110.1: icmp_req=9 ttl=64 time=0.219 ms
64 bytes from 15.144.110.1: icmp_req=10 ttl=64 time=0.218 ms
64 bytes from 15.144.110.1: icmp_req=11 ttl=64 time=0.265 ms
64 bytes from 15.144.110.1: icmp_req=12 ttl=64 time=0.167 ms
64 bytes from 15.144.110.1: icmp_req=13 ttl=64 time=0.270 ms
64 bytes from 15.144.110.1: icmp_req=14 ttl=64 time=0.221 ms
64 bytes from 15.144.110.1: icmp_req=15 ttl=64 time=0.221 ms
64 bytes from 15.144.110.1: icmp_req=16 ttl=64 time=0.272 ms
64 bytes from 15.144.110.1: icmp_req=17 ttl=64 time=0.268 ms
64 bytes from 15.144.110.1: icmp_req=18 ttl=64 time=0.220 ms
^C

        And this is how many time do_xlate_actions() is called for
the ToS flows during the ping :
Jun 02 11:08:15|00018|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:15|00019|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:17|00020|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:18|00021|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:19|00022|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:20|00023|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:20|00024|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:20|00025|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:21|00026|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:22|00027|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:23|00028|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:24|00029|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:25|00030|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:26|00031|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:27|00032|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:28|00033|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:29|00034|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:30|00035|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:31|00036|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:32|00037|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:33|00038|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:34|00039|ofproto|ERR|do_xlate_actions() - setting ToS
Jun 02 11:08:35|00040|ofproto|ERR|do_xlate_actions() - setting ToS
^C

        And this is how many subflows are created :
<opennet@valerian>./ovs-dpctl dump-flows dp0
in_port(3),eth(src=20:fd:f1:71:e3:91,dst=01:80:c2:00:00:00), packets:80, 
bytes:5120, used:1.504s, actions:drop
in_port(4),eth(src=20:fd:f1:71:e3:98,dst=01:80:c2:00:00:00), packets:80, 
bytes:5120, used:0.504s, actions:drop
in_port(2),eth(src=20:fd:f1:71:e3:99,dst=01:80:c2:00:00:00), packets:80, 
bytes:5120, used:1.504s, actions:drop
in_port(2),eth(src=00:15:17:19:a3:cc,dst=00:07:e9:09:3c:fd),eth_type(0x0806),arp(sip=15.144.110.1,tip=15.144.110.2,op=1,sha=00:15:17:19:a3:cc,tha=00:00:00:00:00:00),
 packets:0, bytes:0, used:never, actions:4
in_port(1),eth(src=20:fd:f1:71:e3:90,dst=01:80:c2:00:00:00), packets:80, 
bytes:5120, used:0.504s, actions:drop
in_port(2),eth(src=00:15:17:19:a3:cc,dst=00:07:e9:09:3c:fd),eth_type(0x0800),ipv4(src=15.144.110.1,dst=15.144.110.2,proto=1,tos=0),icmp(type=0,code=0),
 packets:8, bytes:784, used:0.704s, actions:4
in_port(4),eth(src=00:07:e9:09:3c:fd,dst=00:15:17:19:a3:cc),eth_type(0x0800),ipv4(src=15.144.110.2,dst=15.144.110.1,proto=1,tos=0),icmp(type=8,code=0),
 packets:8, bytes:784, used:0.704s, actions:set_nw_tos(0),2
in_port(4),eth(src=00:07:e9:09:3c:fd,dst=00:15:17:19:a3:cc),eth_type(0x0806),arp(sip=15.144.110.2,tip=15.144.110.1,op=2,sha=00:07:e9:09:3c:fd,tha=00:15:17:19:a3:cc),
 packets:0, bytes:0, used:never, actions:2

        Is this normal ?
        Regards,

        Jean
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to