I send a patch to change  DEPTH 6, It is Ok for my cases.

https://mail.openvswitch.org/pipermail/ovs-dev/2017-September/339034.html


It will warning log for 7 recirc,  "dpif_netdev(pmd36)|WARN|Packet dropped. Max recirculation depth exceeded."


on 2017/9/20 23:57, Darrell Ball write:

On 9/20/17, 4:45 AM, "Guoshuai Li" <[email protected]> wrote:

     yes, Distributed gateway.
     I config my gateway router port with 'redirect-chassis'option in ovn-nb.
Logical_Router_Port table
     _uuid                                enabled external_ids gateway_chassis 
mac                 name                                       networks         
    options                                                                     
           peer
     ------------------------------------ ------- ------------ --------------- 
------------------- ------------------------------------------ 
-------------------- 
--------------------------------------------------------------------------------------
 ----
     85c04f4e-6109-4049-b651-3a1495a7901c []      {}           []              "fa:16:3e:5d:65:b2" 
"lrp-8712a984-c019-4362-befe-8969e5fd0f11" ["192.168.2.254/24"] {}                        
                                                             []
     93324dc3-6863-4831-b990-86645f4b234b []      {}           []              "fa:16:3e:9f:10:13" 
"lrp-107688b6-07e5-4a5b-9fa7-a1b25f56b6de" ["10.157.13.0/24"]   {physical-network="physnet2", 
redirect-chassis="f0e5148b-b6a8-46a1-9561-de76c22245bd"} []
     32de97cf-1de6-4b92-b8dc-05c95b920587 []      {}           []              "fa:16:3e:d4:cb:56" 
"lrp-6c2f6700-cc1e-44c6-ada7-da2889aa9278" ["10.157.13.0/24"]   {physical-network="physnet2", 
redirect-chassis="f0e5148b-b6a8-46a1-9561-de76c22245bd"} []
     55824043-c7d9-40f7-8530-0872efc47edc []      {}           []              "fa:16:3e:e4:ec:cd" 
"lrp-e84181ad-fa35-4b34-81e8-1e44218fc504" ["192.168.0.254/24"] {}                        
                                                             []
My kernel datapath flows, less than DPDK:
     
recirc_id(0),tunnel(tun_id=0x2,src=10.157.145.211,dst=10.157.12.111,geneve({class=0x102,type=0x80,len=4,0x30005/0x7fffffff}),flags(-df+csum+key)),in_port(2),eth_type(0x0800),ipv4(src=192.168.0.6,frag=no),
 packets:21, bytes:2058, used:0.637s, actions:ct(zone=10,nat),recirc(0x24)
     
recirc_id(0x24),tunnel(tun_id=0x2,src=10.157.145.211,dst=10.157.12.111,geneve({}{}),flags(-df+csum+key)),in_port(2),eth_type(0x0800),ipv4(src=192.168.0.6,frag=no),
 packets:21, bytes:2058, used:0.638s, 
actions:ct(commit,zone=3,nat(src=10.157.13.4)),recirc(0x25)
     
recirc_id(0x25),tunnel(tun_id=0x2,src=10.157.145.211,dst=10.157.12.111,geneve({}{}),flags(-df+csum+key)),in_port(2),eth(src=00:00:00:00:00:00/01:00:00:00:00:00,dst=fa:16:3e:d4:cb:56),eth_type(0x0800),ipv4(src=10.157.13.0/255.255.255.128,dst=10.157.13.7,proto=1,ttl=63,frag=no),
 packets:21, bytes:2058, used:0.638s, actions:ct(zone=3,nat),recirc(0x26)
     
recirc_id(0x26),tunnel(tun_id=0x2,src=10.157.145.211,dst=10.157.12.111,geneve({}{}),flags(-df+csum+key)),in_port(2),eth_type(0x0800),ipv4(dst=10.157.13.7,frag=no),
 packets:21, bytes:2058, used:0.638s, 
actions:ct(commit,zone=10,nat(dst=192.168.0.10)),recirc(0x27)
     
recirc_id(0x27),tunnel(tun_id=0x2,src=10.157.145.211,dst=10.157.12.111,geneve({class=0x102,type=0x80,len=4,0x30005}),flags(-df+csum+key)),in_port(2),ct_state(-new+est-rel-rpl-inv+trk),ct_label(0/0x1),eth(src=fa:16:3e:d4:cb:56,dst=fa:16:3e:d4:cb:56),eth_type(0x0800),ipv4(dst=192.168.0.10,tos=0/0x3,ttl=63,frag=no),
 packets:20, bytes:1960, used:0.638s, 
actions:set(tunnel(tun_id=0x1,dst=10.157.145.212,ttl=64,tp_src=37366,tp_dst=6081,geneve({class=0x102,type=0x80,len=4,0x10002}),flags(df|csum|key))),set(eth(src=fa:16:3e:e4:ec:cd,dst=fa:16:3e:ed:4b:8a)),set(ipv4(dst=192.168.0.10,tos=0/0x3,ttl=62)),2

[Darrell]
The difference is the native tunneling, so it seems to make sense.
Does #define MAX_RECIRC_DEPTH 6 work in all cases that you checked ?
Maybe setting to 7 leaves a margin of error and can also can alert if there is 
a bug or inefficiency ?





_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to