OpenStack Networking (Neutron)
Go to file
Rodolfo Alonso Hernandez 577d5bd977 Improve "get_devices_with_ip" performance
As reported in LP#1896734, there is a limit in the size of information
that can be transmitted in one single message between an application
and the privsep daemon. The read socket buffer is limited in size;
a message exceeding this size will generate an exception.

In order to limit the amount of information to be sent, this patch
improves the performance of "get_devices_with_ip". In the previous
implementation, the whole list of network devices from a namespace
was retrieved. In some environments, the list of devices could be
so big that the list returned by "privileged.get_link_devices" can
exceed the read buffer size (as reported in the LP bug when the
OVS agent tries to retrieve the list of IP addresses in the system).

Now the function calls "privileged.get_ip_addresses", that returns
a much smaller list. This patch is also reducing the number of system
calls to just one; the previous implementation was retrieving first
the devices link information list (that method was returning a much
bigger blob) and then, per device, retrieving the IP address
information.

Change-Id: I97ada62484023b9833ed12afd68eb4c8d337fd1f
Related-Bug: #1896734
(cherry picked from commit a6cdf273c0)
2021-03-01 10:31:10 +00:00
api-ref Fix some typos 2016-06-28 22:46:19 +02:00
devstack [OVN] Use the OVN DevStack module 2020-08-26 10:09:28 +01:00
doc [OVN] Fix inconsistent IGMP configuration 2020-11-30 10:38:05 +00:00
etc Merge "Migrate "ethtool" to oslo.privsep" 2020-08-14 22:58:44 +00:00
neutron Improve "get_devices_with_ip" performance 2021-03-01 10:31:10 +00:00
playbooks Convert neutron-grenade-ovn job to be zuulv3 2020-10-11 21:41:38 +02:00
rally-jobs [ci] Fix several rally task arguments 2020-05-06 14:56:27 +03:00
releasenotes Don't configure dnsmasq entries for "network" ports 2021-02-23 20:09:29 +00:00
roles [OVN] Use the OVN DevStack module 2020-08-26 10:09:28 +01:00
tools Merge "[OVN] Updates to tools/migrate_names.txt" 2020-09-17 21:17:44 +00:00
vagrant/ovn [OVN] Merge networking-ovn vagrant into neutron 2020-02-18 17:26:15 -05:00
zuul.d Merge "Limit usage of resources in the fullstack tests job" into stable/victoria 2021-01-29 19:10:02 +00:00
.coveragerc Cleanup coverage configuration 2016-10-17 17:06:19 +05:30
.gitignore Add etc/neutron/*.sample files to be ignored by git 2019-12-12 12:38:24 +01:00
.gitreview Update .gitreview for stable/victoria 2020-09-28 15:20:21 +00:00
.mailmap Add mailmap entry 2014-05-16 13:40:04 -04:00
.pylintrc Remove "six" library 2020-07-28 16:55:52 +00:00
.stestr.conf Fix post gate hook to accommodate for new os-testr 2017-09-12 14:20:12 -06:00
CONTRIBUTING.rst [Community goal] Add contributor and PTL guide 2020-03-03 04:43:26 +01:00
HACKING.rst Remove "six" library 2020-07-28 16:55:52 +00:00
LICENSE Adding Apache Version 2.0 license file. This is the official license agreement under which Quantum code is available to 2011-08-08 12:31:04 -07:00
README.rst Start README.rst with a better title 2019-11-19 17:42:57 +01:00
TESTING.rst Dropping lower constraints testing (stable Victoria) 2021-01-12 15:47:46 +00:00
bindep.txt Merge "Stop testing python 2" 2019-10-28 00:52:16 +00:00
plugin.spec Add OSP16.1 choice to migration plugin spec 2020-05-04 20:34:16 +03:00
requirements.txt Update requirements for recent pip failures 2020-12-14 11:35:53 +01:00
setup.cfg Remove translation sections from setup.cfg 2020-05-27 22:43:15 +08:00
setup.py Updated from global requirements 2017-03-04 11:19:58 +00:00
test-requirements.txt Update requirements for recent pip failures 2020-12-14 11:35:53 +01:00
tox.ini Merge "Limit usage of resources in the fullstack tests job" into stable/victoria 2021-01-29 19:10:02 +00:00

README.rst

OpenStack Neutron

image

Neutron is an OpenStack project to provide "network connectivity as a service" between interface devices (e.g., vNICs) managed by other OpenStack services (e.g., Nova).

To learn more about neutron:

Get in touch via email. Use [Neutron] in your subject.

To learn how to contribute, please read the CONTRIBUTING.rst file.