[ovs-dev] ovsdb-server servicing large number of idle connections

Han Zhou zhouhan at gmail.com
Tue Feb 9 01:40:06 UTC 2016


On Mon, Feb 8, 2016 at 3:44 PM, Andy Zhou <azhou at ovn.org> wrote:
>
> Hi, Han,
>
> This is to follow up on the Thursday OVN IRC chat.  After the meeting, I
was able replicate the test condition you mentioned  where a single
ovsdb-server services 1000 ovsdb-client connections.  When there is no
ovsdb transactions going on,
> large number of CPU cycles are used ( on my machine, 40% CPU load) to
service OVS poll loop.
>
> Current OVS, for design simplicity, does not return which socket has
pending events (input, output or other changes). In stead, the main loop
visits all open sockets to find out which socket has pending events.
>
> When the number of active connections are small, this design works well.
But obviously it won't scale to large number of sockets.  I am working on
patches to improve poll loop. Hope to post them soon for review.
>
> Thanks for mentioning this on IRC.
>
> Andy
>

Wonderful! Thanks for the quick analysis and looking forward to your patch.

--
Best regards,
Han



More information about the dev mailing list