← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1312482] [NEW] scalability problem of router routes update

 

Public bug reported:

Updating router routes takes long time when increasing a number of routes.
The critical problem is that it is CPU bound task of neutron-server and neutron-server can not reply for other request.

I show below a measurement example of neutron-server's CPU usage.

Setting routes to a router. (0 to N)
100 routes: 1 sec
1000 routes: 5 sec
10000 routes: 51 sec

I found validation check of parameter  is inefficient. The following
example support it too.

No change but just specify same routes to a router. (N to N, DB is not changed)
100 routes: <1 sec
1000 routes: 4 sec
10000 routes: 52 sec

Remove routes from a router. (N to 0)
100 routes: <1 sec
1000 routes:  8 sec
10000 routes: 750 sec

I found handling of record deletion is bad. It takes N**2 order.

** Affects: neutron
     Importance: Undecided
     Assignee: Itsuro Oda (oda-g)
         Status: New

** Changed in: neutron
     Assignee: (unassigned) => Itsuro Oda (oda-g)

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1312482

Title:
  scalability problem of router routes update

Status in OpenStack Neutron (virtual network service):
  New

Bug description:
  Updating router routes takes long time when increasing a number of routes.
  The critical problem is that it is CPU bound task of neutron-server and neutron-server can not reply for other request.

  I show below a measurement example of neutron-server's CPU usage.

  Setting routes to a router. (0 to N)
  100 routes: 1 sec
  1000 routes: 5 sec
  10000 routes: 51 sec

  I found validation check of parameter  is inefficient. The following
  example support it too.

  No change but just specify same routes to a router. (N to N, DB is not changed)
  100 routes: <1 sec
  1000 routes: 4 sec
  10000 routes: 52 sec

  Remove routes from a router. (N to 0)
  100 routes: <1 sec
  1000 routes:  8 sec
  10000 routes: 750 sec

  I found handling of record deletion is bad. It takes N**2 order.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1312482/+subscriptions


Follow ups

References