On Thu, Aug 14, 2014 at 11:31:07AM -0700, Ben Pfaff wrote: > On Thu, Aug 14, 2014 at 03:14:05PM -0300, Flavio Leitner wrote: > > Speaking on how ports works and limits, I've heard about an interesting > > problem when using containers. If you add more than 1k containers to > > an OVS bridge, the network starts to fail. The reason is that when > > flooding packets with ARP requests, OVS clones the packet for each > > port. However, for veth devices this ends up in the CPU backlog which > > is limited by sysctl netdev_max_backlog to 1000, so the excess gets dropped. > > > > I don't see how to prevent that in OVS because the DP just loops executing > > the actions, sending the packet regardless of the device's type, etc. > > Another approach to communicating with namespaces, as an alternative to > a veth, is to add an internal port to the OVS bridge, then move it into > the appropriate namespace. I don't know whether this sidesteps a > queuing limit (haven't looked, haven't tried it).
If I am reading correctly, either veth or internal ports will end up in the backlog queue. internal_dev_recv() netif_rx() netif_rx_internal() enqueue_to_backlog() fbl _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss