OPNFLWPLUG-992 : Device connection rate limiter implemenation 57/70157/21
authorSomashekhar Javalagi <somashekhar.manohara.javalagi@ericsson.com>
Wed, 28 Mar 2018 09:37:36 +0000 (15:07 +0530)
committerSomashekhar Javalagi <somashekhar.manohara.javalagi@ericsson.com>
Mon, 23 Apr 2018 15:35:06 +0000 (15:35 +0000)
commitce31b87f8529f9e607472effb6bbf84c4f2bbed2
treed4898165043f0bc726bdf8ff5b15e5715e779006
parentd2d32cbb3371be0d42e58136663f4d53b23dd7f4
OPNFLWPLUG-992 : Device connection rate limiter implemenation

By default the device connection ratelimitter wll be disabled.

device-connection-rate-limit-per-min is the property available in
openflowplugin.cfg, which can be changed to control the rate at
which number of devices connecting the controller. This will be
useful in reducing load on the controller if there is more number
of switches connected at the time during cluster reboot.

Default value is set to 0, which disables device connection ratelimitter.

Change-Id: I02a53719114e63748ffaa340650927f7b11d6dc1
Signed-off-by: Somashekhar Javalagi <somashekhar.manohara.javalagi@ericsson.com>
13 files changed:
openflowplugin-api/src/main/java/org/opendaylight/openflowplugin/api/openflow/configuration/ConfigurationProperty.java
openflowplugin-api/src/main/yang/openflow-provider-config.yang
openflowplugin-blueprint-config/src/main/resources/initial/openflowplugin.cfg
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/common/DeviceConnectionRateLimiter.java [new file with mode: 0644]
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/configuration/ConfigurationServiceFactoryImpl.java
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/configuration/OpenFlowProviderConfigImpl.java
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/connection/ConnectionManagerImpl.java
openflowplugin-impl/src/main/java/org/opendaylight/openflowplugin/impl/connection/HandshakeManagerImpl.java
openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/OpenFlowPluginProviderImplTest.java
openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/configuration/ConfigurationServiceFactoryImplTest.java
openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/configuration/OpenFlowProviderConfigImplTest.java
openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/connection/ConnectionManagerImplTest.java
openflowplugin-impl/src/test/java/org/opendaylight/openflowplugin/impl/connection/HandshakeManagerImplTest.java