OpenStack Networking (Neutron)
Go to file
yangjianfeng 99f4495c94 Improve port dhcp Provisioning
Currently, the dhcp Provisioning of ports is the crucial bottleneck
of that concurrently boot multiple VM.

The root cause is that these ports will be processed one by one by dhcp
agent when they belong to the same network, And the 'Provisioning complete'
port is still blocked other port's processing in other dhcp agents. The
patch aim to optimize the dispatch strategy of the port cast to agent to
improve the Provisioning process.

In server side, I classify messages to multi levels. Especially, I classify
the port_update_end or port_create_end message to two levels, the high-level
message only cast to one agent, the low-level message cast to all agent. In
agent side I put these messages to `resource_processing_queue`, with the queue,
We can delete `_net_lock` and process these messages in order of priority.

Additonally, I modified the `resource_processing_queue` for my demand. I update
`_queue` from LIST to PriorityQueue in `ExclusiveResourceProcessor`, by this
way, we can sort all message which cached in `ExclusiveResourceProcessor` by
priority.

Related-Bug: #1760047
Change-Id: I255caa0571c42fb012fe882259ef181070beccef
2019-01-28 07:26:45 +00:00
api-ref Fix some typos 2016-06-28 22:46:19 +02:00
bin Use os-xenapi for neutron when XenServer as hypervisor 2017-03-30 18:33:37 +00:00
devstack [L3][QoS] Agent side router gateway IP rate limit 2018-12-01 17:45:47 +08:00
doc Add lock_path in installation guide 2019-01-22 09:42:51 +01:00
etc Rename README.policy.json.txt 2019-01-07 12:45:15 -05:00
neutron Improve port dhcp Provisioning 2019-01-28 07:26:45 +00:00
playbooks/legacy Migrate neutron-tempest-linuxbridge job to zuulv3 and python 3 2019-01-17 20:07:33 +00:00
rally-jobs rally-jobs: Set floating network as a parameter 2018-12-17 16:31:10 +02:00
releasenotes Add a new configuration parameter rpc_response_max_timeout 2019-01-18 09:55:31 +00:00
tools Merge "Remove unnecessary 'set -x' at EOL in genconfig script" 2018-12-15 14:09:19 +00:00
.coveragerc Cleanup coverage configuration 2016-10-17 17:06:19 +05:30
.gitignore doc: Add policy reference 2018-12-20 14:19:40 +09:00
.gitreview Fix .gitreview to not point at a branch 2015-08-17 13:51:51 -06:00
.mailmap Add mailmap entry 2014-05-16 13:40:04 -04:00
.pylintrc Disable some pylint checks 2018-10-03 08:41:56 +00:00
.stestr.conf Fix post gate hook to accommodate for new os-testr 2017-09-12 14:20:12 -06:00
.zuul.yaml Use renamed template 'integrated-gate-py3' 2019-01-25 08:47:34 +00:00
CONTRIBUTING.rst Update link for contribution 2017-08-31 16:44:51 +02:00
HACKING.rst Update the documentation link for doc migration 2017-07-22 18:46:13 +09: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 Update mailinglist from dev to discuss 2018-12-12 12:44:12 +08:00
TESTING.rst doc: Small clearances for fullstack testing 2018-09-05 09:40:07 +02:00
babel.cfg Use babel to generate translation file 2013-01-24 00:20:32 +08:00
bindep.txt Add libffi-dev to bindep.txt 2017-06-13 19:26:49 +00:00
lower-constraints.txt bump neutron-lib to 1.22.0 2019-01-24 14:27:56 +00:00
requirements.txt bump neutron-lib to 1.22.0 2019-01-24 14:27:56 +00:00
setup.cfg Merge "Upgrade check command - add support for 3rd party checks" 2018-12-19 12:50:19 +00:00
setup.py Updated from global requirements 2017-03-04 11:19:58 +00:00
test-requirements.txt Upgrade pylint to a version that works with python3 2018-10-04 18:03:25 +00:00
tox.ini Merge "tox: Hide deprecation warnings from distgit" 2018-12-20 17:03:42 +00:00

README.rst

Team and repository tags

image

Welcome!

To learn more about neutron:

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

To learn how to contribute:

CONTRIBUTING.rst